Merge pull request #506 from andrewcsmith/patch-2
[supercollider.git] / HelpSource / Classes / ProxySynthDef.schelp
blob1ba6303fca566021da43f8a0fa043f68b0f91a03
1 class:: ProxySynthDef
2 summary:: synth def that wraps ugen graph
3 categories:: Libraries>JITLib>NodeProxy
4 related:: Classes/NodeProxy
6 description::
7 (used internally by link::Classes/NodeProxy::)
9 for inner workings see link::Tutorials/JITLib/jitlib_fading::
11 ClassMethods::
13 method::new
15 argument::name
16 like in link::Classes/SynthDef::. todo: add variants.
18 argument::func
19 like in link::Classes/SynthDef::. todo: add variants.
21 argument::rates
22 like in link::Classes/SynthDef::. todo: add variants.
24 argument::prependArgs
25 like in link::Classes/SynthDef::. todo: add variants.
27 argument::makeFadeEnv
28 if true it constructs a fader envelope and adds controls for gate and fadeTime
30 argument::channelOffset
31 a constant offset that is added to the out number
33 argument::chanConstraint
34 max numChannels for the synthdef. If ugenfunc returns a larger array, it wraps
36 argument::rateConstraint
37 a symbol like \audio, \control or \scalar.
39 method::sampleAccurate
40 always use link::Classes/OffsetOut::, if set to true (default: false)
42 Examples::
44 code::
45 a = ProxySynthDef("xtest", { SinOsc.ar(400) * 0.1 });
47 a.send(s);
49 x = Synth("xtest");
50 x.release;
55         if the resulting number of channels is larger than a given channelConstraint,
56         it behaves according to the rate: audio rate signals are wrapped around
57         a smaller channel size, control rate signals are not (the exceeding channels are left out)