Pause : MultiOutUGen
{
var runningSynth;
// creation
*ar { arg argEventFunc, level
= 0.0;
^this.multiChannelPerform('ar1', argEventFunc, level)
}
*ar1 { arg argEventFunc, level
= 0.0;
^super.ar1.init(argEventFunc, level)
}
// no control rate version available
// PRIVATE:
init { arg argEventFunc, theInput;
runningSynth = Synth.new(argEventFunc);
runningSynth.newTempoBase(synth.tempo);
inputs = theInput;
^this.initOutputs;
}
initOutputs {
var i = 0, outChan, numChannels,
outputs;
if (runningSynth.notNil, {
outputs = runningSynth.outputs;
if (outputs.isKindOf(Array),
{
numChannels = outputs.size;
channels = Array.new(numChannels);
while ({ i < numChannels },{
outChan = OutputProxy.ar1(this);
channels.add(outChan);
i = i + 1;
});
^channels
},{
outChan = OutputProxy.ar1(this);
channels = Array.with(outChan);
^outChan
});
});
}
}
This page was created by SimpleText2Html 1.0.3 on 22-Feb-100.