Home   Information   Classes   Download   Usage   Mail List   Requirements   Links   Tutorial


Delay.h

00001 /***************************************************/
00019 /***************************************************/
00020 
00021 #ifndef STK_DELAY_H
00022 #define STK_DELAY_H
00023 
00024 #include "Filter.h"
00025 
00026 class Delay : protected Filter
00027 {
00028 public:
00029 
00031   Delay();
00032 
00034 
00039   Delay(unsigned long delay, unsigned long maxDelay);
00040 
00042   virtual ~Delay();
00043 
00045   void clear();
00046 
00048 
00055   void setMaximumDelay(unsigned long delay);
00056 
00058 
00061   void setDelay(unsigned long delay);
00062 
00064   unsigned long getDelay(void) const;
00065 
00067   StkFloat energy(void) const;
00068 
00070 
00075   StkFloat contentsAt(unsigned long tapDelay);
00076 
00078   StkFloat lastOut(void) const;
00079 
00081 
00084   virtual StkFloat nextOut(void);
00085 
00087   virtual StkFloat tick(StkFloat sample);
00088 
00090   virtual StkFloat *tick(StkFloat *vector, unsigned int vectorSize);
00091 
00093 
00099   virtual StkFrames& tick( StkFrames& frames, unsigned int channel = 1 );
00100 
00101 protected:
00102   unsigned long inPoint_;
00103   unsigned long outPoint_;
00104   StkFloat delay_;
00105 };
00106 
00107 #endif
00108 

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