mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-03-06 14:00:39 +00:00
34 lines
No EOL
569 B
C++
34 lines
No EOL
569 B
C++
#ifndef B3_ADSR_H
|
|
#define B3_ADSR_H
|
|
|
|
class b3ADSR
|
|
{
|
|
int m_state;
|
|
double m_value;
|
|
double m_target;
|
|
double m_attackRate;
|
|
double m_decayRate;
|
|
double m_releaseRate;
|
|
double m_releaseTime;
|
|
double m_sustainLevel;
|
|
bool m_autoKeyOff;
|
|
|
|
public:
|
|
b3ADSR();
|
|
virtual ~b3ADSR();
|
|
|
|
double tick();
|
|
bool isIdle() const;
|
|
void keyOn(bool autoKeyOff);
|
|
void keyOff();
|
|
|
|
void setValues(double attack, double decay, double sustain, double release)
|
|
{
|
|
m_attackRate = attack;
|
|
m_decayRate = decay;
|
|
m_sustainLevel = sustain;
|
|
m_releaseRate = release;
|
|
}
|
|
};
|
|
|
|
#endif //B3_ADSR_H
|