diff --git a/examples/events/main.rb b/examples/events/main.rb new file mode 100644 index 0000000..5e25847 --- /dev/null +++ b/examples/events/main.rb @@ -0,0 +1,37 @@ +require_relative "../../lib/voicemeeter" +require "easy_logging" +require "pp" + +EasyLogging.level = Logger::DEBUG + +class Main + def initialize + @vm = Voicemeeter::Remote.new(:potato, pdirty: true, ldirty: true) + @vm.register(method(:on_pdirty), method(:on_ldirty)) + end + + def run + @vm.run { exit if gets.chomp.empty? } + end + + def on_pdirty + puts "pdirty" + end + + def on_mdirty + puts "mdirty" + end + + def on_midi + current = @vm.midi.current + puts "Value of midi button #{current}: #{@vm.midi.get(current)}" + end + + def on_ldirty + @vm.bus.each do |bus| + puts "#{bus} #{bus.levels.all}" if bus.levels.isdirty? + end + end +end + +Main.new.run if $0 == __FILE__