Home   Information   Classes   Download   Usage   Mail List   Requirements   Links   FAQ   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   Envelope( const Envelope& e );
00030 
00032   virtual ~Envelope(void);
00033 
00035   Envelope& operator= ( const Envelope& e );
00036 
00038   virtual void keyOn(void);
00039 
00041   virtual void keyOff(void);
00042 
00044   void setRate(StkFloat rate);
00045 
00047   void setTime(StkFloat time);
00048 
00050   virtual void setTarget(StkFloat target);
00051 
00053   virtual void setValue(StkFloat value);
00054 
00056   virtual int getState(void) const;
00057 
00058  protected:
00059 
00060   virtual StkFloat computeSample( void );
00061   virtual void sampleRateChanged( StkFloat newRate, StkFloat oldRate );
00062 
00063   StkFloat value_;
00064   StkFloat target_;
00065   StkFloat rate_;
00066   int state_;
00067 };
00068 
00069 #endif

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