C:/Documents and Settings/Alessandro/Documenti/Programmazione/CodeBlocks/AudioDrome/include/AudioDrome/Envelope.h

00001 /***************************************************/
00017 /***************************************************/
00018 
00019 #ifndef ENVELOPE_H
00020 #define ENVELOPE_H
00021 
00022 #include "GenTable.h"
00023 #include "AudioDrome.h"
00024 #include "Phasor.h"
00025 
00026 class Envelope : public Phasor
00027 {
00028 public:
00030 
00036     Envelope (const float &sr, GenTable* shape,  const INTERPOLATION& interp=LINEAR);
00037 
00039     ~Envelope ();
00040 
00042     void setShape (GenTable* shape);
00043 
00045 
00051     void setInterp (const INTERPOLATION &type=LINEAR);
00052 
00054 
00069     void inArg (const float &dur, const float &attack, const float &decay);
00070 
00072     void setDuration (const float &dur);
00073 
00075     void setAttack (const float &attack);
00076 
00078     void setDecay (const float &decay);
00079 
00081     void reinitEnv ();
00082 
00084 
00090     virtual float outSig ();
00091 
00093     float outTrapezoid ();
00094 
00095 protected:
00096     float _attack;
00097     float _decay;
00098     float _sus;
00099     GenTable* _shape;
00100     float (GenTable::*_interpPtr) (const double &);
00101 };
00102 #endif

Generato il Tue Dec 26 14:42:31 2006 per AudioDrome da  doxygen 1.4.7