Home   Information   Classes   Download   Usage   Mail List   Requirements   Links   Tutorial


Envelope.h

00001 /***************************************************/
00014 /***************************************************/
00015 
00016 #ifndef STK_ENVELOPE_H
00017 #define STK_ENVELOPE_H
00018 
00019 #include "Generator.h"
00020 
00021 class Envelope : public Generator
00022 {
00023  public:
00024 
00026   Envelope(void);
00027 
00029   virtual ~Envelope(void);
00030 
00032   virtual void keyOn(void);
00033 
00035   virtual void keyOff(void);
00036 
00038   void setRate(StkFloat rate);
00039 
00041   void setTime(StkFloat time);
00042 
00044   virtual void setTarget(StkFloat target);
00045 
00047   virtual void setValue(StkFloat value);
00048 
00050   virtual int getState(void) const;
00051 
00053   virtual StkFloat tick(void);
00054 
00056   virtual StkFloat *tick( StkFloat *vector, unsigned int vectorSize );
00057 
00059 
00065   virtual StkFrames& tick( StkFrames& frames, unsigned int channel = 1 );
00066 
00067  protected:
00068   StkFloat value_;
00069   StkFloat target_;
00070   StkFloat rate_;
00071   int state_;
00072 };
00073 
00074 #endif

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