[PD-dev] loadbang order

Mathieu Bouchard matju at artengine.ca
Thu Aug 11 02:57:27 CEST 2005


On Mon, 8 Aug 2005, Tim Blechmann wrote:

> there are basically two ways how abstractions communicate with each
> other: inlets and receives. i'd propose that every inlet / outlet /
> receive declares a loadbang function. before this loadbang function has
> been run, the outlet events are queued (maybe using clock callbacks),
> then then the behaviour is the same as currently. for the outlets it's
> more tricky, since they'd have to register a loadbang on the parent
> canvas.

I don't understand what you mean by all of this. Do you have an example?

I also have a proposal for solving the [loadbang] problem.

My suggestion would be that [loadbang] would take a single argument which 
would be an integer interpreted as a priority order, with a default value 
of zero. Negative values would be accepted.

The first [loadbang] to be triggered is the one that has the largest
argument, because that's consistent with the fact that in a [t] the first
outlet to be active is the one with the biggest index.

Two [loadbang]s with the same priority get executed in whatever order.

The scope of [loadbang] priorities is the same as the scope of a $0, that 
is, a subpatch is considered to be part of its parent, whereas an 
abstraction instance is not. Therefore, in the priority hierarchy (the 
post-order tree traversal in the mail to Miller), a $0 corresponds to 
one node, and the priority numbers fine-tune the ordering within its node.

____________________________________________________________________
Mathieu Bouchard - tél:+1.514.383.3801 - http://artengine.ca/matju
Freelance Digital Arts Engineer, Montréal QC Canada




More information about the Pd-dev mailing list