On Sun, 2015-09-13 at 10:28 +0200, Tim Goetze wrote:
[David Robillard]
I believe #1 is the intent. The hint serves to
distinguish plugins that
have some dependency on real time, from those that do not (only
processing their input). The latter can be used in a more functional
way, being called to process a block whenever, where the actual time run
is called is irrelevant. The hint being set essentially means "if the
plugin is activated, run() must be called regularly at a rate roughly
corresponding to the passage of real time"
Th[e] comment says "plugin has a real-time dependency (e.g. listens to a
MIDI device)" which seems pretty clear. Explanation #2, while perhaps a
useful thing in some circumstances, really does not follow from the
hint's definition.
"This", as it is so succinctly put nowadays.
(I seem to remember Steve Harris telling me he'd asked for the
inclusion of this flag but would later find it ill-conceived and of no
practical use. Could be wrong though, mists of time and all that. In
any event, ignoring the flag altogether seems to be the most pragmatic
solution.)
I can see its use in theory, though not much in practice seems to have
any need for it.
It makes me think of a "purely functional" flag, which would be more
useful (you only need one instance to run on whatever), but that's much
stronger and forbids any state whatsoever, not just time...
--
dr