PLmeanrand dynamic scope Pmeanrand variant
Part of: miSCellaneous
Inherits from: Pmeanrand
Takes Symbol args for later reference by the Streams, which will read from variables in the Environments of their instantiation. See PLx suite.
See also: Pmeanrand, Event patterns and Functions, VarGui, VarGui shortcut builds
Creation / Class Methods
*new (lo, hi, length, envir)
Creates a new PLmeanrand object.
lo - Symbol or Pmeanrand lo arg. Defaults to 0.
If a Symbol is passed, lo can be assigned to an envir variable later on.
Can be dynamically replaced by Patterns or Streams.
hi - Symbol or Pmeanrand hi arg. Defaults to 1.
If a Symbol is passed, hi can be assigned to an envir variable later on.
Can be dynamically replaced by Patterns or Streams.
length - Symbol or Pmeanrand length arg. Defaults to inf.
If a Symbol is passed, length can be assigned to an envir variable later on.
envir - Dictionary or one of the Symbols
\top, \t (topEnvironment), \current, \c (currentEnvironment).
Dictionary to be taken for variable reference. Defaults to \current.
Examples
(
s = Server.local;
Server.default = s;
s.boot;
)
// definition for future reference in arbitrary Environments
p = PLmeanrand(\lo, \hi);
// prepare current Environment
// PLseq repeats arg defaults to inf
(
~lo = PLseq((60, 60.25..70));
~hi = PLseq((70, 69.75..60));
)
// run
(
x = Pbind(
\midinote, Ptuple([p, 65]),
\amp, [0.1, 0.06],
\dur, 0.1
).play;
)
// replace
(
~lo = 60.5;
~hi = 61;
)
x.stop;