triggerbox: provide ::shutdown_from_fwd() method

This does the internal shutdown of a Trigger that is shared between
a normal shutdown and when stopping for a locate/stop. There's no
output to buffers possible.

This method/design may need to change if/when we add declicking for
various conditions
This commit is contained in:
Paul Davis
2022-03-17 12:18:42 -06:00
parent 1cc8a3f92c
commit 1af0e7cc4f
2 changed files with 8 additions and 1 deletions

View File

@@ -345,6 +345,7 @@ class LIBARDOUR_API Trigger : public PBD::Stateful {
it says: start immediately
*/
void startup (BufferSet&, pframes_t dest_offset, Temporal::BBT_Offset const & start_quantization = Temporal::BBT_Offset (9, 3,0));
void shutdown_from_fwd ();
virtual void shutdown (BufferSet& bufs, pframes_t dest_offset);
virtual void jump_start ();
virtual void jump_stop (BufferSet& bufs, pframes_t dest_offset);

View File

@@ -739,7 +739,7 @@ Trigger::_startup (BufferSet& bufs, pframes_t dest_offset, Temporal::BBT_Offset
}
void
Trigger::shutdown (BufferSet& bufs, pframes_t dest_offset)
Trigger::shutdown_from_fwd ()
{
_state = Stopped;
_playout = false;
@@ -750,6 +750,12 @@ Trigger::shutdown (BufferSet& bufs, pframes_t dest_offset)
send_property_change (ARDOUR::Properties::running);
}
void
Trigger::shutdown (BufferSet& /*bufs*/, pframes_t /*dest_offset*/)
{
shutdown_from_fwd ();
}
void
Trigger::jump_start()
{