class Patch::IO::OSC::Client
Attributes
id[R]
Public Class Methods
new(host, port, options = {})
click to toggle source
@param [String] host @param [Fixnum] port @param [Hash] options @option options [Fixnum] :id @option options [Log] :log
# File lib/patch/io/osc/client.rb, line 17 def initialize(host, port, options = {}) @id = options[:id] @log = options[:log] @client = ::OSC::Client.new(host, port) end
Public Instance Methods
puts(patch, messages)
click to toggle source
Convert message objects to OSC
and send @param [Patch::Patch] patch Context @param [Array<Patch::Message, ::OSC::Message>, ::OSC::Message, Patch::Message
] messages Message(s) to send @return [Array<::OSC::Message>]]
# File lib/patch/io/osc/client.rb, line 27 def puts(patch, messages) osc_messages = get_osc_messages(patch, messages) osc_messages.each { |osc_message| @client.send(osc_message) } osc_messages end
Private Instance Methods
ensure_osc_message(patch, message)
click to toggle source
@param [::Patch::Patch] patch @param [::OSC::Message, Patch::Message
] message @return [::OSC::Message]
# File lib/patch/io/osc/client.rb, line 46 def ensure_osc_message(patch, message) unless message.kind_of?(::OSC::Message) osc_message = ::Patch::IO::OSC::Message.to_osc_messages(patch, message) end osc_message ||= message osc_message end
get_osc_messages(patch, messages)
click to toggle source
@param [::Patch::Patch] patch @param [Array<Patch::Message, ::OSC::Message>, ::OSC::Message, Patch::Message
] messages Message(s) to send @return [Array<::OSC::Message>]]
# File lib/patch/io/osc/client.rb, line 38 def get_osc_messages(patch, messages) messages = [messages].flatten messages.map { |message| ensure_osc_message(patch, message) } end