Obtain value of a tick
look
Read and return value of default tick. If a key
is specified, read the value of that specific tick. Ticks are in_thread
and live_loop
local, so the tick read will be the tick of the current thread calling look
.
Introduced in v2.6
Examples
# Example 1 |
puts look
puts look
puts look
|
#=> 0
#=> 0
#=> 0 # look doesn't advance the tick, it just returns the current value
|
# Example 2 |
puts look
tick
puts look
tick
puts look
puts look
tick
puts look
|
#=> 0 # A look is always 0 before the first tick
# advance the tick
#=> 0 # Note: a look is still 0 after the first tick.
#=> 1
#=> 1 # making multiple calls to look doesn't affect tick value
#=> 2
|
# Example 3 |
tick(:foo)
tick(:foo)
puts look(:foo)
puts look
puts look(:bar)
|
#=> 1 (keyed look :foo has been advanced)
#=> 0 (default look hasn't been advanced)
#=> 0 (other keyed looks haven't been advanced either)
|
# Example 4 |
live_loop :foo do
tick
use_synth :beep
play (scale :e3, :minor_pentatonic).look
sleep 0.5
use_synth :square
play (ring :e1, :e2, :e3).look, release: 0.25
sleep 0.25
end
|
# You can call look on lists and rings
# advance the default tick
# look into the default tick to play all notes in sequence
# use the same look on another ring
|
# Example 5 |
puts look(0)
puts look(4)
puts look(-4)
puts look(20.3)
|
# Returns numbers unchanged if single argument
#=> 0
#=> 4
#=> -4
#=> 20.3
|