Age | Commit message (Collapse) | Author | |
---|---|---|---|
2020-03-13 | adjust TransportFSM to avoid declick to locate if ↵ | Paul Davis | |
DiskReader::_no_disk_output is set Under those conditions, the DR will not execute a code path that will cause the declick to take place and therefore the declick will never finish | |||
2020-02-24 | fix thinko when handling set_speed (0.0) | Paul Davis | |
Code only handled a reversing->rolling path, not reversing->stopped | |||
2020-02-21 | make "reversing" back into a DirectionState and prohibit speed changes while ↵ | Paul Davis | |
reversing | |||
2020-02-20 | change transport API, session API, transportFSM API to move reverse ↵ | Paul Davis | |
management and motion state (partially) into TFSM | |||
2020-01-23 | tentative fix for stop-transport not working after a locate at loop end | Paul Davis | |
2020-01-18 | fix mistaken "do not roll" conclusion in TransportFSM::compute_should_roll() | Paul Davis | |
2020-01-18 | fix broken-ness caused by bad initialization of a StopTransport event in ↵ | Paul Davis | |
TransportFSM | |||
2020-01-18 | rename DoTheRightThing to RollIfAppropriate | Paul Davis | |
2020-01-18 | Session::request_locate() takes a tri-valued second argument for ↵ | Paul Davis | |
"roll-after-locate" This allows callers to defer logic about auto-play/current rolling state and more to TransportFSM where it can be cnentralized and is less ambiguous | |||
2019-12-17 | a new stop command while in the middle of declick-to-stop is not a bad ↵ | Paul Davis | |
transition | |||
2019-12-08 | correct logic errors related to roll-after-locate in TransportFSM | Paul Davis | |
This might have broken some other subtle behavior, but testing hasn't shown it thus far | |||
2019-11-23 | fix locate-while-rolling | Paul Davis | |
2019-11-22 | redesign of declicking and fades around loop boundaries | Paul Davis | |
2019-11-18 | fix transport FSM to stop first and declick later | Paul Davis | |
2019-11-15 | better debugging message | Paul Davis | |
2019-11-15 | consolidate setting of "get roll after locate" in TFSM | Paul Davis | |
2019-11-06 | do not transition "back" to Rolling by calling start_transport() if a locate ↵ | Paul Davis | |
was for loop-end We never stopped the transport, so there's no reason to start it again. Doing so causes alignment problems because all tracks have their ::run() ranges reinitialized | |||
2019-11-06 | fix unconditional note resolution during DiskReader::realtime_locate() | Paul Davis | |
When looping, we do not want to resolve notes at the end of the loop via ::realtime_locate() - ::get_midi_playback() has already taken care of this. But when not looping, we need this. So, add an argument to tell all interested parties whether the locate is for a loop end or not | |||
2019-11-04 | fix a bad transition in the transportFSM. | Paul Davis | |
2019-11-02 | allow explicit "with-roll" argument to a locate to override ↵ | Paul Davis | |
Session::should_roll_after_locate() | |||
2019-11-01 | transportFSM: when locating due to end-of-loop, skip declick and do not ↵ | Paul Davis | |
transition states | |||
2019-10-29 | fix handling of deferred events in transportFSM | Paul Davis | |
tfsm events live on intrusive lists, with only 1 hook, which means they can only be on one list at a time, and cannot be deleted while part of the list. This wasn't being addressed properly when deferring (and undeferring) events. | |||
2019-09-22 | various changes to transportFSM, mostly to try to keep track of whether to ↵ | Paul Davis | |
roll-after-locate (more) accurately | |||
2019-09-20 | better initial value | Paul Davis | |
2019-09-20 | remove debug output | Paul Davis | |
2019-09-20 | fix crash when doing rapid (ongoing-locate-interrupting) locates | Paul Davis | |
2019-09-20 | move TransportFSM::enqueue() into .cc file | Paul Davis | |
2019-09-20 | at transport stop, reset FSM's idea of the last locate target (also removes ↵ | Paul Davis | |
const from method) | |||
2019-09-20 | const-ify TransportFSM | Paul Davis | |
2019-09-20 | rename TransportFSM::FSMEvent to TransportFSM::Event (c/o the Department of ↵ | Paul Davis | |
Redundancy Department) | |||
2019-09-20 | use boost::intrusive to manage FSM events (this is all RT code) | Paul Davis | |
2019-09-20 | expand comment | Paul Davis | |
2019-09-19 | replace boost::msm - based FSM for transport with one written in "plain C++" | Paul Davis | |
Still need to use boost::intrusive to managed qeued/deferred containers | |||
2019-09-17 | add finite state machine to control/manage transport state | Paul Davis | |