summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/transport_fsm.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2019-09-22 12:19:28 -0600
committerPaul Davis <paul@linuxaudiosystems.com>2019-09-22 12:23:54 -0600
commite0069fe0f5ae053ae7db70a08b58da88165c2d5e (patch)
tree6654d1effc7a9613e1a72a060893e4929e1a5930 /libs/ardour/ardour/transport_fsm.h
parent21ba7fb8441caef38c15f5129c3704346e4b5b2e (diff)
various changes to transportFSM, mostly to try to keep track of whether to roll-after-locate (more) accurately
Diffstat (limited to 'libs/ardour/ardour/transport_fsm.h')
-rw-r--r--libs/ardour/ardour/transport_fsm.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/libs/ardour/ardour/transport_fsm.h b/libs/ardour/ardour/transport_fsm.h
index a939b3395b..922f910a12 100644
--- a/libs/ardour/ardour/transport_fsm.h
+++ b/libs/ardour/ardour/transport_fsm.h
@@ -5,6 +5,8 @@
#include <queue>
#include <boost/intrusive/list.hpp>
+#include <boost/optional.hpp>
+
#include <string>
#include <utility>
#include <iostream>
@@ -128,14 +130,14 @@ struct TransportFSM
/* transition actions */
void schedule_butler_for_transport_work () const;
- void start_playback () const;
+ void start_playback ();
void stop_playback ();
- void start_saved_locate () const;
+ void start_locate_after_declick () const;
void roll_after_locate () const;
- void start_locate (Event const &) const;
+ void start_locate_while_stopped (Event const &) const;
void interrupt_locate (Event const &) const;
- void save_locate_and_start_declick (Event const &);
- void start_declick (Event const &);
+ void start_declick_for_locate (Event const &);
+ void start_declick_for_stop (Event const &);
/* guards */
@@ -167,6 +169,7 @@ struct TransportFSM
EventList queued_events;
EventList deferred_events;
int processing;
+ mutable boost::optional<bool> current_roll_after_locate_status;
void defer (Event& ev);
void bad_transition (Event const &);