> On Monday, November 28, 2011, Tom Breton (Tehom) wrote:
>
>> behave as expected.  The biggest problem is that they can't offset from
>> the current value of a controller.
>
> The "current value" of a controller is really more complicated than it
> seems
> at a glance.  I guess you could search back in time for the last thing
> Rosegarden actively set it to, and assume that's the current value,
> although
> there can be no assurance that's actually the case without setting up some
> complicated bidirectional communication between Rosegarden and the MIDI
> playback engine on the receiving end.
>
> I definitely wouldn't take it that far, so I suppose the assumption is the
> only realistic thing you could do, even though it's imperfect.

Yes, I have been wondering how best to go about finding the previous
value.  Thank you for helping me think about that.

If I understand correctly, SegmentMapper handles expanding triggers but
doesn't keep an instrument up to date.  So I can't get a current value
from the instrument.

So it probably makes sense to search backwards in events.  And for that, I
have to search all the segments that hold the same instrument.

Then what worries me is how to keep it up to date if a previous controller
event is changed.  I can't rely on `refresh' being called, because the
responsible event might live in another segment.

I could make CompositionMapper::segmentModified refresh every later
segment that has the same instrument.  It'd work but it'd mostly waste
time refreshing segments that don't need it.  I'll probably do that and
then figure out a way to save most of the work.  Maybe I'll cache each
instrument's controller values at a few times and let those caches control
need-to-update.

> I don't have any big objection to the spirit of making these things behave
> relative to the assumed "current value," but I'm also inclined to think
> that
> the behavior of stripping controllers out of ornaments is probably
> fundamentally reasonable due to all of these complications.

I see what you mean.  I wasn't going to change "Make ornament".  But if
all goes well, maybe a related command that captures controller events.


> Try to aim at preserving everything of the status quo while enabling the
> possibility of having new and separate opportunities for those who
> specifically want them, and actively seek them out.  That's what I
> recommend.
> --
> D. Michael McIntyre

        Tom Breton (Tehom)



------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure 
contains a definitive record of customers, application performance, 
security threats, fraudulent activity, and more. Splunk takes this 
data and makes sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-novd2d
_______________________________________________
Rosegarden-devel mailing list
[email protected] - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Reply via email to