From ea8ec745651008a844ab5d17c0a96959505151b0 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Fri, 20 Sep 2019 08:21:14 -0600 Subject: expand comment --- libs/ardour/transport_fsm.cc | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'libs/ardour/transport_fsm.cc') diff --git a/libs/ardour/transport_fsm.cc b/libs/ardour/transport_fsm.cc index 0528f95304..4c7251328f 100644 --- a/libs/ardour/transport_fsm.cc +++ b/libs/ardour/transport_fsm.cc @@ -110,6 +110,18 @@ TransportFSM::process_events () /* This is the transition table from the original boost::msm * implementation of this FSM. It is more easily readable and * consultable. Please keep it updated as the FSM changes. + * + * Here's a hint about how to read each line of this table: + * + * "if the current state is Start and event Event arrives, new state is Next and we execute Action()" + * + * with a variant: + * + * "if the current state is Start and event Event arrives, new state is Next and we execute Action() ***IF*** Guard() returns true" + * + * This new implementation, however, does not use metaprogramming to achieve all this, + * but just uses a large-ish switch() block. + * */ /* -- cgit v1.2.3