164 |
public: |
public: |
165 |
ArrayList<SignalUnit::Parameter> Params; // The list of parameters which are modulating the signal unit |
ArrayList<SignalUnit::Parameter> Params; // The list of parameters which are modulating the signal unit |
166 |
|
|
167 |
SignalUnit(SignalUnitRack* rack): pRack(rack), bActive(false), Level(0.0f), bCalculating(false), uiDelayTrigger(0) { } |
SignalUnit(SignalUnitRack* rack): pRack(rack), bActive(false), Level(0.0f), bRecalculate(true), bCalculating(false), uiDelayTrigger(0) { } |
168 |
SignalUnit(const SignalUnit& Unit): pRack(Unit.pRack) { Copy(Unit); } |
SignalUnit(const SignalUnit& Unit): pRack(Unit.pRack) { Copy(Unit); } |
169 |
void operator=(const SignalUnit& Unit) { Copy(Unit); } |
void operator=(const SignalUnit& Unit) { Copy(Unit); } |
170 |
virtual ~SignalUnit() { } |
virtual ~SignalUnit() { } |
204 |
* the parameters, their levels are calculated too. |
* the parameters, their levels are calculated too. |
205 |
*/ |
*/ |
206 |
virtual float GetLevel() { |
virtual float GetLevel() { |
207 |
if (!bRecalculate) return Level; |
if (Params.empty() || !bRecalculate) return Level; |
208 |
|
|
209 |
if (bCalculating) { |
if (bCalculating) { |
210 |
std::cerr << "SignalUnit: Loop detected. Aborted!"; |
std::cerr << "SignalUnit: Loop detected. Aborted!"; |