634 |
// if a valid real-time instrument script is loaded, pre-process |
// if a valid real-time instrument script is loaded, pre-process |
635 |
// the event list by running the script now, since the script |
// the event list by running the script now, since the script |
636 |
// might filter events or add new ones for this cycle |
// might filter events or add new ones for this cycle |
637 |
if (pChannel->pScript && pChannel->pScript->bHasValidScript) { |
if (pChannel->pScript) { |
638 |
// resume any suspended script executions still hanging |
// resume any suspended script executions still hanging |
639 |
// around of previous audio fragment cycles |
// around of previous audio fragment cycles |
640 |
for (RTList<ScriptEvent>::Iterator itEvent = pChannel->pScript->pEvents->first(), |
for (RTList<ScriptEvent>::Iterator itEvent = pChannel->pScript->pEvents->first(), |
978 |
dmsg(5,("Engine: instrument change command received\n")); |
dmsg(5,("Engine: instrument change command received\n")); |
979 |
cmd.bChangeInstrument = false; |
cmd.bChangeInstrument = false; |
980 |
pEngineChannel->pInstrument = cmd.pInstrument; |
pEngineChannel->pInstrument = cmd.pInstrument; |
981 |
pEngineChannel->pScript = cmd.pScript; |
pEngineChannel->pScript = |
982 |
|
cmd.pScript->bHasValidScript ? cmd.pScript : NULL; |
983 |
instrumentChanged = true; |
instrumentChanged = true; |
984 |
|
|
985 |
pEngineChannel->MarkAllActiveVoicesAsOrphans(); |
pEngineChannel->MarkAllActiveVoicesAsOrphans(); |