Well, one loop is just fine for linear music editing,
but what about
interactive music? (The old, primitive approach, based on conditional
jumps.)
I was thinking one could generalize this by using N cue points
(abstract objects) instead of hardcoded loop markers in the time
info. Tell timeline aware plugins about them by sending events
looking something like this:
XAP_A_CUE_POINT
int id;
double position;
When does the host send this event?
When the transport position is moved, but play has not started yet?
When a loop-point is set (and it just stays forever until unset?)
Shortly before hitting a repeat marker (loop point)?
Not a bad little frill, if the semantics are clear. Totally optional for
the host and plugin, but if they both do it, then it could be a nice
optimization.