69 |
} |
} |
70 |
|
|
71 |
virtual bool Active() { return EG.active(); } |
virtual bool Active() { return EG.active(); } |
72 |
virtual float GetLevel() { return EG.getLevel(); } |
virtual float GetLevel() { return DelayStage() ? 0 : EG.getLevel(); } |
73 |
|
|
74 |
virtual void EnterReleaseStage() { EG.update(EG::event_release, GetSampleRate()); } |
virtual void EnterReleaseStage() { EG.update(EG::event_release, GetSampleRate()); } |
75 |
virtual void CancelRelease() { EG.update(EG::event_cancel_release, GetSampleRate()); } |
virtual void CancelRelease() { EG.update(EG::event_cancel_release, GetSampleRate()); } |
104 |
|
|
105 |
class EGv1Unit: public EGUnit<EGADSR> { |
class EGv1Unit: public EGUnit<EGADSR> { |
106 |
public: |
public: |
107 |
EGv1Unit(SfzSignalUnitRack* rack): EGUnit<EGADSR>(rack) { } |
int depth; |
108 |
|
EGv1Unit(SfzSignalUnitRack* rack): EGUnit<EGADSR>(rack), depth(0) { } |
109 |
virtual void Trigger(); |
virtual void Trigger(); |
110 |
}; |
}; |
111 |
|
|
115 |
virtual void Trigger(); |
virtual void Trigger(); |
116 |
}; |
}; |
117 |
|
|
118 |
|
class PitchEGUnit: public EGv1Unit { |
119 |
|
public: |
120 |
|
PitchEGUnit(SfzSignalUnitRack* rack): EGv1Unit(rack) { } |
121 |
|
virtual void Trigger(); |
122 |
|
}; |
123 |
|
|
124 |
class LFOUnit: public SfzSignalUnit { |
class LFOUnit: public SfzSignalUnit { |
125 |
public: |
public: |
126 |
::sfz::LFO* pLfoInfo; |
::sfz::LFO* pLfoInfo; |
180 |
private: |
private: |
181 |
EndpointUnit suEndpoint; |
EndpointUnit suEndpoint; |
182 |
EGv1Unit suVolEG; |
EGv1Unit suVolEG; |
183 |
|
PitchEGUnit suPitchEG; |
184 |
|
|
185 |
FixedArray<EGv2Unit*> EGs; |
FixedArray<EGv2Unit*> EGs; |
186 |
|
|