Home   Information   Classes   Download   Usage   Mail List   Requirements   Tutorial


PitShift.h

00001 /***************************************************/
00010 /***************************************************/
00011 
00012 #if !defined(__PITSHIFT_H)
00013 #define __PITSHIFT_H
00014 
00015 #include "Stk.h" 
00016 #include "DelayL.h" 
00017 
00018 class PitShift : public Stk
00019 {
00020  public:
00022   PitShift();
00023 
00025   ~PitShift();
00026 
00028   void clear();
00029 
00031   void setShift(MY_FLOAT shift);
00032 
00034   void setEffectMix(MY_FLOAT mix);
00035 
00037   MY_FLOAT lastOut() const;
00038 
00040   MY_FLOAT tick(MY_FLOAT input);
00041 
00043   MY_FLOAT *tick(MY_FLOAT *vector, unsigned int vectorSize);
00044 
00045  protected:  
00046   Delay *delayLine[2];
00047   MY_FLOAT lastOutput;
00048   MY_FLOAT delay[2];
00049   MY_FLOAT env[2];
00050   MY_FLOAT effectMix;
00051   MY_FLOAT rate;
00052 
00053 };
00054 
00055 #endif
00056 

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