diff options
| author | s-ol <s+removethis@s-ol.nu> | 2025-03-19 10:54:47 +0000 |
|---|---|---|
| committer | s-ol <s+removethis@s-ol.nu> | 2025-03-19 16:57:47 +0000 |
| commit | 5f066105c3436342dbb2a095a8ad3b3066366a85 (patch) | |
| tree | aca10395059a545cc62f126d79e735fbe5375b44 | |
| parent | lib: new glsl-view OSC address space (diff) | |
| download | alive-5f066105c3436342dbb2a095a8ad3b3066366a85.tar.gz alive-5f066105c3436342dbb2a095a8ad3b3066366a85.zip | |
lib: add osc/dump
| -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 |
