linux: shared memory interface - link with librt
[supercollider.git] / HelpSource / Classes / Pmulp.schelp
blobd500ac565ad3a22d95a16337bf44b34e02685b9b
1 class:: Pmulp
2 summary:: multiply with each value of a pattern to value of a key in event stream
3 related:: Classes/Pmul, Classes/Paddp
4 categories:: Streams-Patterns-Events>Patterns>Math
6 description::
8 Multiplies a value in an event stream until it ends, repeats this with new values until the value stream ends.
10 ClassMethods::
12 method::new
14 argument::value
15 can be a pattern, a stream or an array. The resulting stream ends when that incoming stream ends.
17 Examples::
19 code::
21 var a, b;
22 a = Pmulp(\freq, Pseq([2, 3, pi],inf), Pbind(\freq, Pseq([100, 200, 300])));
23 x = a.asStream;
24 9.do({ x.next(Event.new).postln; });
28 code::
29 //sound example
31 SynthDef(\sinegrain,
32         { arg out=0, freq=440, sustain=0.02;
33                 var env;
34                 env = EnvGen.kr(Env.perc(0.001, sustain), 1, doneAction:2);
35                 Out.ar(out, SinOsc.ar(freq, 0, env * 0.1))
36         }).add;
40 a = Pbind(\freq, Pseq([500, 600, 700]), \instrument, \sinegrain);
41 a = Pmulp(\freq, Pseq([0.5, 0.9, 0.8], inf), a);
42 a.play;