summaryrefslogtreecommitdiff
path: root/libs/ardour/enums.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2019-09-19 22:33:43 -0600
committerPaul Davis <paul@linuxaudiosystems.com>2019-09-19 22:34:18 -0600
commit61afcb8e2bb7cfa8b1fb8bd2f56c4700679b79c7 (patch)
tree3ad55dbde8119f98f520ef80a6d3eee2e320cab6 /libs/ardour/enums.cc
parente698a1b2faf6758ffcb83dea2dfbeabad23275bd (diff)
replace boost::msm - based FSM for transport with one written in "plain C++"
Still need to use boost::intrusive to managed qeued/deferred containers
Diffstat (limited to 'libs/ardour/enums.cc')
-rw-r--r--libs/ardour/enums.cc25
1 files changed, 25 insertions, 0 deletions
diff --git a/libs/ardour/enums.cc b/libs/ardour/enums.cc
index 2665a14d94..903861fc02 100644
--- a/libs/ardour/enums.cc
+++ b/libs/ardour/enums.cc
@@ -47,6 +47,7 @@
#include "ardour/source.h"
#include "ardour/tempo.h"
#include "ardour/track.h"
+#include "ardour/transport_fsm.h"
#include "ardour/transport_master.h"
#include "ardour/types.h"
@@ -151,6 +152,9 @@ setup_enum_writer ()
PresentationInfo::Flag _PresentationInfo_Flag;
MusicalMode::Type mode;
MidiPortFlags _MidiPortFlags;
+ TransportFSM::EventType _TransportFSM_EventType;
+ TransportFSM::MotionState _TransportFSM_MotionState;
+ TransportFSM::ButlerState _TransportFSM_ButlerState;
#define REGISTER(e) enum_writer.register_distinct (typeid(e).name(), i, s); i.clear(); s.clear()
#define REGISTER_BITS(e) enum_writer.register_bits (typeid(e).name(), i, s); i.clear(); s.clear()
@@ -793,6 +797,27 @@ setup_enum_writer ()
REGISTER_CLASS_ENUM (MusicalMode, Persian);
REGISTER_CLASS_ENUM (MusicalMode, Algerian);
REGISTER (mode);
+
+ REGISTER_CLASS_ENUM (TransportFSM, ButlerDone);
+ REGISTER_CLASS_ENUM (TransportFSM, ButlerRequired);
+ REGISTER_CLASS_ENUM (TransportFSM, DeclickDone);
+ REGISTER_CLASS_ENUM (TransportFSM, StartTransport);
+ REGISTER_CLASS_ENUM (TransportFSM, StopTransport);
+ REGISTER_CLASS_ENUM (TransportFSM, Locate);
+ REGISTER_CLASS_ENUM (TransportFSM, LocateDone);
+ REGISTER (_TransportFSM_EventType);
+
+ REGISTER_CLASS_ENUM (TransportFSM, Stopped);
+ REGISTER_CLASS_ENUM (TransportFSM, Rolling);
+ REGISTER_CLASS_ENUM (TransportFSM, DeclickToStop);
+ REGISTER_CLASS_ENUM (TransportFSM, DeclickToLocate);
+ REGISTER_CLASS_ENUM (TransportFSM, WaitingForLocate);
+ REGISTER (_TransportFSM_MotionState);
+
+
+ REGISTER_CLASS_ENUM (TransportFSM, NotWaitingForButler);
+ REGISTER_CLASS_ENUM (TransportFSM, WaitingForButler);
+ REGISTER (_TransportFSM_ButlerState);
}
} /* namespace ARDOUR */