diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2019-12-29 18:41:02 -0700 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2019-12-29 18:43:51 -0700 |
commit | 719c3f1457501c1b808c9c6edf977e2b7d07e744 (patch) | |
tree | 5ca663c3c9f6504dcb8c0af82de17155f2d0f734 /libs/ardour/session_transport.cc | |
parent | af30a6f001f0758155b3ece040fc2baa643a29de (diff) |
add Session::transport_stopped_or_stopping()
Session::TransportStateChanged notifies about transport stop before the stop is complete (i.e. at the start of the declick).
Various other objects (notably control surfaces) connect to this signal and use it to modify their displayed state.
We need a method that can tell them we are stopped (or stopping) even though we are not "fully" stopped yet. This is
that method
Diffstat (limited to 'libs/ardour/session_transport.cc')
-rw-r--r-- | libs/ardour/session_transport.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc index b6c5d64503..79ffb927bf 100644 --- a/libs/ardour/session_transport.cc +++ b/libs/ardour/session_transport.cc @@ -2001,6 +2001,12 @@ Session::transport_stopped() const } bool +Session::transport_stopped_or_stopping() const +{ + return _transport_fsm->stopped() || _transport_fsm->stopping(); +} + +bool Session::transport_rolling() const { return _transport_speed != 0.0 && _count_in_samples == 0 && _remaining_latency_preroll == 0; |