Document transport state semantics
This also adds transport_state_rolling() which can be used from a TransportStateChanged callback.
This commit is contained in:
parent
e4ccf772f5
commit
d33cc4a3dd
@ -790,8 +790,18 @@ public:
|
||||
return 0;
|
||||
}
|
||||
double transport_speed() const { return _count_in_samples > 0 ? 0. : _transport_speed; }
|
||||
/** @return true if the transport state (TFSM) is stopped */
|
||||
bool transport_stopped() const;
|
||||
/** @return true if the transport state (TFSM) is stopped or stopping */
|
||||
bool transport_stopped_or_stopping() const;
|
||||
/** @return true if the transport state (TFSM) is rolling.
|
||||
* Note: the transport may not yet move if pre-roll or count-in in ongoing.
|
||||
*/
|
||||
bool transport_state_rolling() const;
|
||||
/** @return true if the the transport is actively (audible) rolling.
|
||||
* playback speed is not zero, and count-in as well as latency-preroll is complete,
|
||||
* and _transport_sample changes every process cycle.
|
||||
*/
|
||||
bool transport_rolling() const;
|
||||
bool transport_will_roll_forwards() const;
|
||||
|
||||
|
@ -1999,6 +1999,12 @@ Session::transport_stopped_or_stopping() const
|
||||
return _transport_fsm->stopped() || _transport_fsm->stopping();
|
||||
}
|
||||
|
||||
bool
|
||||
Session::transport_state_rolling() const
|
||||
{
|
||||
return _transport_fsm->rolling();
|
||||
}
|
||||
|
||||
bool
|
||||
Session::transport_rolling() const
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user