Send/Receive alternative

flocked's icon

Hi,
Is there a send/receive alternative, that isn't sending the values between Patcher windows and only within a window. I know that there is value/pv, but the problem with it is, that I always need to trigger, when I want the value. It isn't the same behavior like the receive object, that always outputs the value automatically, when it changes.

Rodrigo's icon

You can use [s #0whatever] to send only within a given patcher level (not exactly a window).

flocked's icon

So if I include #0 in a sender and receiver it always sends/receives in the given patcher level? Even if another patch has the same naming?

I tried it and it doesn't work.

To specify my case: I'm writing a m4l device, that can be run in multiple instances. There shouldn't be any communication between them.

5349.Bildschirmfoto20130401um01.58.18.png
png
vichug's icon

you could try the hard way, with pattrstorage - a pattrstorage is patcher level-specific by default. though it depends what kind of thing you want to send and receive, not everything is possible i suppose.

Floating Point's icon

rodrigo's method should work-- you need to save the sub-patch as a separate file; then when loaded into a parent patch the different instances of that file will have different, unique arguments, so then the sens and receives will be local to their specific instance

Roman Thilenius's icon

the patch in the above picture cannot work at all, because the send will start up with a different unique name from the receive.

also, to use #0 style names, the whole thing must run at least on one level below the top patcher.

the picture above shows a send object with the name "#0whateve". other instances of this patche in ablton will also be named "#0whateve", which ist the same send and receive. :) #0 stuff must go into subpatcher and then it will work as exspected.

flocked's icon

Hm, strange, but I can't get it working. I have two different patches/m4l devices. In each I placed a subpatch (p). In these subpatches I placed a send and a receive object with #0 naming (s #0test and r #0test). If I send a message, the receiver of the other patch still gets the message.

flocked's icon

Here is an example. Run two instances of it.

5350.sendreceivetest.amxd
amxd
Jan M's icon

inside m4l use [send ---someName] to limit the scope to one instance.

j

flocked's icon

"---" works! thanks!

Anything I need to pay attention with it? Strange that it isn't in the documentation.

Roman Thilenius's icon

--- is not officially supported, afaik.

broc's icon

"---" is officially supported and documented here

(the send reference page contains a link to that document)