diff options
| -rw-r--r-- | alv-lib/osc.moon | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/alv-lib/osc.moon b/alv-lib/osc.moon index d54b1b1..bce568f 100644 --- a/alv-lib/osc.moon +++ b/alv-lib/osc.moon @@ -72,6 +72,25 @@ listen = Constant.meta if msgs = @inputs.io! @out\set msgs +dump = Constant.meta + meta: + name: 'recv!' + summary: "Receive OSC messages." + examples: { '(osc/recv! [socket] path [type-str])' } + + value: class extends Op + pattern: any!^0 + + full_pattern = -sig['osc/in'] + setup: (inputs, scope) => + messages = full_pattern\match inputs + super Input.hot messages or scope\get '*oscin*' + + tick: => + messages = @unwrap_all! + for msg in *(messages or {}) + print msg.address, msg.types, table.unpack msg + recv_evt = Constant.meta meta: name: 'recv!' @@ -213,4 +232,5 @@ Constant.meta :listen :send :sync + :dump 'recv!': recv_evt |
