class Shmidi::Knob
Constants
- CTYPE
Attributes
value[R]
Public Class Methods
new(socket, channel, note, value = 0)
click to toggle source
Calls superclass method
Shmidi::Control::new
# File lib/shmidi/controls/knob.rb, line 7 def initialize(socket, channel, note, value = 0) super(socket, channel, note) init(value) end
Public Instance Methods
init(value = 0)
click to toggle source
# File lib/shmidi/controls/knob.rb, line 12 def init(value = 0) @prev_value = value @value = value @__on_value = [] socket.on_event(channel, :cc, note) do |event| reset(event.value) Shmidi.TRACE {"#{CTYPE}\t#{id}\t#{@value} (on_event)"} @__on_value.each { |b| b.call(self) } end end
on_value(&block)
click to toggle source
# File lib/shmidi/controls/knob.rb, line 28 def on_value(&block) @__on_value << block end
reset(new_value=0)
click to toggle source
# File lib/shmidi/controls/knob.rb, line 23 def reset(new_value=0) @prev_value = @value @value = new_value end