AsyncAudioFilter.h

Go to the documentation of this file.
00001 
00028 #ifndef ASYNC_AUDIO_FILTER_INCLUDED
00029 #define ASYNC_AUDIO_FILTER_INCLUDED
00030 
00031 
00032 /****************************************************************************
00033  *
00034  * System Includes
00035  *
00036  ****************************************************************************/
00037 
00038 #include <string>
00039 
00040 
00041 /****************************************************************************
00042  *
00043  * Project Includes
00044  *
00045  ****************************************************************************/
00046 
00047 
00048 
00049 /****************************************************************************
00050  *
00051  * Local Includes
00052  *
00053  ****************************************************************************/
00054 
00055 #include <AsyncAudioProcessor.h>
00056 
00057 
00058 
00059 /****************************************************************************
00060  *
00061  * Forward declarations
00062  *
00063  ****************************************************************************/
00064 
00065 
00066 
00067 /****************************************************************************
00068  *
00069  * Namespace
00070  *
00071  ****************************************************************************/
00072 
00073 namespace Async
00074 {
00075 
00076 
00077 /****************************************************************************
00078  *
00079  * Forward declarations of classes inside of the declared namespace
00080  *
00081  ****************************************************************************/
00082 
00083 class FidVars;
00084   
00085 
00086 /****************************************************************************
00087  *
00088  * Defines & typedefs
00089  *
00090  ****************************************************************************/
00091 
00092 
00093 
00094 /****************************************************************************
00095  *
00096  * Exported Global Variables
00097  *
00098  ****************************************************************************/
00099 
00100 
00101 
00102 /****************************************************************************
00103  *
00104  * Class definitions
00105  *
00106  ****************************************************************************/
00107 
00113 class AudioFilter : public AudioProcessor
00114 {
00115   public:
00121     explicit AudioFilter(const std::string &filter_spec,
00122                          int sample_rate = INTERNAL_SAMPLE_RATE);
00123   
00127     ~AudioFilter(void);
00128   
00133     void setOutputGain(float gain) { output_gain = gain; }
00134     
00138     void reset(void);
00139     
00140     
00141   protected:
00153     void processSamples(float *dest, const float *src, int count);
00154 
00155 
00156   private:
00157     FidVars     *fv;
00158     float       output_gain;
00159     
00160     AudioFilter(const AudioFilter&);
00161     AudioFilter& operator=(const AudioFilter&);
00162 
00163 };  /* class AudioFilter */
00164 
00165 
00166 } /* namespace */
00167 
00168 #endif /* ASYNC_AUDIO_FILTER_INCLUDED */
00169 
00170 
00171 
00172 /*
00173  * This file has not been truncated
00174  */
00175 
Generated by  doxygen 1.6.2-20100208