I'm finding "this_device" and ("this_device canonical_parent") to be really useful, since they allow the creation of Max devices that can be dropped in any track. However, this method still requires some absolute navigation - for instance, if you want your Max device to address the device that directly follows it, you can use "this_device canonical_parent devices 1" and make sure that your Max device is always the first device in the track. If for some reason you later need to place it as the second device in a track, then your paths will break (since "devices 1" will be the Max object itself and "devices 2" will be the actual location of your desired target). As far as I can tell, there's no other way to create a relative path.
It seems to me that the ability to add an offset argument to "this_device" could be very useful - like this:
this_device 1 is the device immediately following the current device (ie, current position +1)
this_device 2 is the device two steps to the right (current position +2)
this_device 0 would be identical to this_device (no offset)
this_device -1 would be the device immediately preceding the current device (current position -1, probably only useful for checking values)
etc.
(Similarly, "this_track 1" could be used to address the track just to the right of the current track.)
Thus instead of "this_device canonical_parent devices 1", which is somewhat fragile, you could specify "this_device 1" and be sure that your Max device would always target whatever immediately followed it in the device chain.
This might be too late to consider as a 1.0 feature, but I think this could make path navigation a bit easier and more flexible, since your devices wouldn't be required to occupy the exact same position each time you use them. (It would still have to take the same relative position, but that's probably a reasonable expectation.)
Relative path suggestion
Relative path suggestion
http://www.authenticfilms.com
Config: MBP 2.4 GHz Intel Core 2 Duo
2 GB RAM, Nvidia 8600M GT, OS 10.5.6
Live 8.1b6, Max4Live 5.1.0a1 (40387)
Config: MBP 2.4 GHz Intel Core 2 Duo
2 GB RAM, Nvidia 8600M GT, OS 10.5.6
Live 8.1b6, Max4Live 5.1.0a1 (40387)
Re: Relative path suggestion
Since it's probably unlikely that you'd want to address "this_device 4" or "this_device -3", another possibility would be to simply have "next_device" and "prev_device" labels. And "next_device" could even take an optional argument for rare cases where you need to go more than one device downstream - "next_device 1" = two devices downstream.
http://www.authenticfilms.com
Config: MBP 2.4 GHz Intel Core 2 Duo
2 GB RAM, Nvidia 8600M GT, OS 10.5.6
Live 8.1b6, Max4Live 5.1.0a1 (40387)
Config: MBP 2.4 GHz Intel Core 2 Duo
2 GB RAM, Nvidia 8600M GT, OS 10.5.6
Live 8.1b6, Max4Live 5.1.0a1 (40387)
Re: Relative path suggestion
This can already be done by modifying the path to this_device.
Thanks for the suggestion, but in general, the API is fixed. We're going to get more examples out and get v 1.0 behind us before we start considering tinkering with it.
-A
Thanks for the suggestion, but in general, the API is fixed. We're going to get more examples out and get v 1.0 behind us before we start considering tinkering with it.
-A