• szekelyisz

    @whale-av Thanks a lot for the reply, I didn't know about these messages to dynamically construct patches. Your example is very clear, now I'm having trouble getting additional arguments into the dynamically loaded module. I could create a message with the desired value inside it, but I can't connect it to anything that's already in the patch, so actually I'm unable to use it. I found other interesting messages at http://puredata.info/docs/tutorials/TipsAndTricks#patch-messages, but they don't seem of any help. My problem is I can't query the ID of any pre-existing object in the patch, so I can't make a connection to any object already inside. I don't even know the ID of the newly created object (or message or whatever).

    The most elegant solution would be to create objects like [r $0-arg1], [r $0-arg2], etc in the module, and send messages to these to get the arguments through, but PD doesn't return $0 of the loaded patch... :(

    posted in technical issues read more
  • szekelyisz

    I have a bunch of patches, something like modules, conforming to a kind of API (they modify the same table, one after the other). Now I'd like to add an enable/disable mechanism to all of them without having to add this functionality to each and every patch. I thought about doing a generic module host that has this feature, telling it which module to load as the first argument, something like [modulehost mirror] (mirror is the name of one of the modules, located in its own patch). [modulehost] could add all common features (like enable/disable).

    Now, how should [modulehost] look like? It should load the abstraction given as its first argument, which is a patch. Just putting [$1] won't do the work since PD thinks $1 is a float. This raises the question of inlets/outlets, but I'd be happy with something like [pd~] does, say [modulehost -in 3 -out 2 mirror], or only being able to communicate with the module using [send]/[receive].

    Any ideas?

    posted in technical issues read more

Internal error.

Oops! Looks like something went wrong!