Module: OSC::Transport
- Included in:
- UDPSocket
- Defined in:
- lib/osc/transport.rb
Overview
Mixin for OSC transports. You implement (or in many cases just alias) send_raw, recvfrom_raw, and recv_raw, which have the semantics of send, recvfrom, and recv in e.g. UDPSocket
Instance Method Summary collapse
-
#recv(*args) ⇒ Object
Receive a Message, Bundle, or raw data.
-
#recvfrom(*args) ⇒ Object
Receive a Message, Bundle, or raw data and the sender.
-
#send(msg, *args) ⇒ Object
Send a Message, Bundle, or even raw data.
-
#send_timestamped(msg, ts, *args) ⇒ Object
(also: #send_ts)
Send a Message/Bundle with a timestamp (a Time or TimeTag object).
Instance Method Details
#recv(*args) ⇒ Object
Receive a Message, Bundle, or raw data.
29 30 31 32 33 |
# File 'lib/osc/transport.rb', line 29 def recv(*args) data = recv_raw(*args) Packet.decode(data) rescue end |
#recvfrom(*args) ⇒ Object
Receive a Message, Bundle, or raw data and the sender. The source attribute of the Message or Bundle is also set to sender. e.g.
packet, sender = udp_osc_client.recvfrom(32768)
19 20 21 22 23 24 25 26 |
# File 'lib/osc/transport.rb', line 19 def recvfrom(*args) data, sender = recvfrom_raw(*args) m = Packet.decode(data) m.source = sender [m, sender] rescue [data, sender] end |