78 lines
1.6 KiB
Racket
78 lines
1.6 KiB
Racket
#lang scribble/manual
|
|
@(require (for-label racket))
|
|
|
|
@title{Dpoll}
|
|
Print the current output value of a demand rate UGen@section{categories}
|
|
UGens>Demand, UGens>Info
|
|
|
|
@section{description}
|
|
|
|
Print the current output value of a demand rate UGen.
|
|
@section{WARNING}
|
|
Printing values from the Server in intensive for the CPU. Poll should be used for debugging purposes. ::
|
|
|
|
@section{classmethods}
|
|
|
|
@section{private}
|
|
new1
|
|
|
|
@section{method}
|
|
new
|
|
@section{argument}
|
|
in
|
|
ugen to poll values from
|
|
@section{argument}
|
|
label
|
|
a label string
|
|
@section{argument}
|
|
run
|
|
active if 1, inactive if 0. can be a demand ugen (default: 1)
|
|
@section{argument}
|
|
trigid
|
|
@section{discussion}
|
|
|
|
the print-out is in the form:
|
|
@racketblock[ label: value block offset: offset. ::
|
|
|
|
structurally related: link::Classes/Poll::
|
|
|
|
]
|
|
@section{examples}
|
|
|
|
|
|
@racketblock[
|
|
|
|
{ Duty.kr(0.5, 0, Dpoll(Dseries(0, 1, inf) * 2)); 0.0 }.play;
|
|
|
|
// posts only when cursor is in right half of the screen
|
|
{ Duty.kr(0.5, 0, Dpoll(Dseries(0, 1, inf) * 2, run: MouseX.kr > 0.5)); 0.0 }.play;
|
|
|
|
// label
|
|
{ LFPulse.ar(Duty.kr(0.5, 0, Dpoll(Dseries(0, 1, inf) % 10 + 1 * 30, "value"))) * 0.1 }.play;
|
|
|
|
// block offset:
|
|
{ Duty.ar(0.511, 0, Dpoll(Dseries(0, 1, inf) * 2)); 0.0 }.play;
|
|
|
|
// multichannel expansion:
|
|
|
|
(
|
|
{
|
|
var x = Duty.kr(0.5, 0,
|
|
Dpoll([Dseries(0, 1, inf), Dgeom(1, 1.1, inf)], ["first", "second"])
|
|
);
|
|
LFPulse.ar(100 + (x * 100)) * 0.1
|
|
}.play
|
|
)
|
|
|
|
{ Duty.kr(0.5, 0, Dpoll(( Dseries(0, 1, inf) + _ ).dup, ("value" + _).dup)); 0.0 }.play;
|
|
|
|
|
|
// the message dpoll(label, run, trigid) is a shorthand:
|
|
|
|
{ Duty.kr(0.5, 0, Dseries(0, 1, inf).dpoll); 0.0 }.play;
|
|
{ Duty.ar(0.5, 0, SinOsc.ar(0.1).dpoll); 0.0 }.play;
|
|
::
|
|
|
|
]
|
|
|
|
|