Home   Information   Classes   Download   Usage   Mail List   Requirements   Tutorial


Chorus.h

00001 /***************************************************/
00009 /***************************************************/
00010 
00011 #if !defined(__CHORUS_H)
00012 #define __CHORUS_H
00013 
00014 #include "Stk.h" 
00015 #include "DelayL.h" 
00016 #include "WaveLoop.h" 
00017 
00018 class Chorus : public Stk
00019 {
00020  public:
00022   Chorus(MY_FLOAT baseDelay);
00023 
00025   ~Chorus();
00026 
00028   void clear();
00029 
00031   void setModDepth(MY_FLOAT depth);
00032 
00034   void setModFrequency(MY_FLOAT frequency);
00035 
00037   void setEffectMix(MY_FLOAT mix);
00038 
00040   MY_FLOAT lastOut() const;
00041 
00043   MY_FLOAT lastOutLeft() const;
00044 
00046   MY_FLOAT lastOutRight() const;
00047 
00049   MY_FLOAT tick(MY_FLOAT input);
00050 
00052   MY_FLOAT *tick(MY_FLOAT *vector, unsigned int vectorSize);
00053 
00054  protected:  
00055   DelayL *delayLine[2];
00056   WaveLoop *mods[2];
00057   MY_FLOAT baseLength;
00058   MY_FLOAT modDepth;
00059   MY_FLOAT lastOutput[2];
00060   MY_FLOAT effectMix;
00061 
00062 };
00063 
00064 #endif
00065 

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