VISR  0.11.6
Versatile Interactive Scene Renderer
fractional_delay_base.hpp
Go to the documentation of this file.
1 /* Copyright Institute of Sound and Vibration Research - All rights reserved */
2 
3 #ifndef VISR_LIBRBBL_FRACTIONAL_DELAY_BASE_HPP_INCLUDED
4 #define VISR_LIBRBBL_FRACTIONAL_DELAY_BASE_HPP_INCLUDED
5 
6 #include "export_symbols.hpp"
7 
8 #include <cstddef>
9 
10 namespace visr
11 {
12 namespace rbbl
13 {
14 
18 template <typename SampleType>
20 {
21 public:
22 
23  virtual ~FractionalDelayBase() = default;
24 
28  virtual SampleType methodDelay() const = 0;
29 
30  virtual void interpolate( SampleType const * basePointer,
31  SampleType * result,
32  std::size_t numSamples,
33  SampleType startDelay, SampleType endDelay,
34  SampleType startGain, SampleType endGain ) = 0;
35 };
36 
37 } // namespace rbbl
38 } // namespace visr
39 
40 #endif // #ifndef VISR_LIBRBBL_FRACTIONAL_DELAY_BASE_HPP_INCLUDED
virtual ~FractionalDelayBase()=default
Definition: options.cpp:10
virtual SampleType methodDelay() const =0
virtual void interpolate(SampleType const *basePointer, SampleType *result, std::size_t numSamples, SampleType startDelay, SampleType endDelay, SampleType startGain, SampleType endGain)=0
Definition: fractional_delay_base.hpp:19
float SampleType
Definition: constants.hpp:14