class Sequencer::EventTrigger
Callbacks that when evaluate to true, will trigger the corresponding sequencer event
Public Instance Methods
Set the reset trigger. When true, the sequence will go back to step 0 @param [Proc] block @return [Proc]
# File lib/sequencer/event_trigger.rb, line 9 def reset(&block) @reset = block end
Whether the reset event should fire @param [Fixnum] pointer The sequencer pointer @param [Object] data Data for the current sequence step @return [Boolean]
# File lib/sequencer/event_trigger.rb, line 24 def reset?(pointer, data) !@reset.nil? && @reset.call(pointer, data) end
Shortcut to trigger a reset even on a given interval of ticks @param [Fixnum, nil] num The number of ticks or nil to cancel existing triggers @return [Fixnum, nil]
# File lib/sequencer/event_trigger.rb, line 66 def reset_every(num) if num.nil? @reset = nil else reset { |pointer| pointer % num == 0 } num end end
Set the rest trigger. When true, no messages will be outputted during that step @param [Proc] block @return [Proc]
# File lib/sequencer/event_trigger.rb, line 16 def rest(&block) @rest = block end
Whether the rest event should fire @param [Fixnum] pointer The sequencer pointer @param [Object] data Data for the current sequence step @return [Boolean]
# File lib/sequencer/event_trigger.rb, line 32 def rest?(pointer, data) !@rest.nil? && @rest.call(pointer, data) end
Shortcut to trigger a rest event on a given interval of ticks @param [Fixnum, nil] num The number of ticks or nil to cancel existing triggers @return [Fixnum, nil]
# File lib/sequencer/event_trigger.rb, line 54 def rest_every(num) if num.nil? @rest = nil else rest { |pointer| pointer % num == 0 } num end end
Set the stop trigger. When true, the sequencer will stop @param [Proc] block @return [Proc]
# File lib/sequencer/event_trigger.rb, line 39 def stop(&block) @stop = block end
Whether to fire the stop event @param [Fixnum] pointer The sequencer pointer @param [Object] data Data for the current sequence step @return [Boolean]
# File lib/sequencer/event_trigger.rb, line 47 def stop?(pointer, data) !@stop.nil? && @stop.call(pointer, data) end