Home   Information   Classes   Download   Usage   Mail List   Requirements   Links   FAQ   Tutorial


TwoPole.h

00001 /***************************************************/
00013 /***************************************************/
00014 
00015 #ifndef STK_TWOPOLE_H
00016 #define STK_TWOPOLE_H
00017 
00018 #include "Filter.h"
00019 
00020 class TwoPole : protected Filter
00021 {
00022  public:
00023 
00025   TwoPole();
00026 
00028   ~TwoPole();
00029 
00031   void ignoreSampleRateChange( bool ignore = true ) { ignoreSampleRateChange_ = ignore; };
00032 
00034   void clear(void);
00035 
00037   void setB0(StkFloat b0);
00038 
00040   void setA1(StkFloat a1);
00041 
00043   void setA2(StkFloat a2);
00044 
00046 
00059   void setResonance(StkFloat frequency, StkFloat radius, bool normalize = false);
00060 
00062 
00066   void setGain(StkFloat gain);
00067 
00069   StkFloat getGain(void) const;
00070 
00072   StkFloat lastOut(void) const;
00073 
00075   StkFloat tick(StkFloat sample);
00076 
00078 
00084   StkFrames& tick( StkFrames& frames, unsigned int channel = 0 );
00085 
00086  protected:
00087 
00088   virtual void sampleRateChanged( StkFloat newRate, StkFloat oldRate );
00089 };
00090 
00091 #endif

The Synthesis ToolKit in C++ (STK)
©1995-2007 Perry R. Cook and Gary P. Scavone. All Rights Reserved.