3#include <Settings/SettingsWrapper.hpp>
6#include <AH/STL/utility>
7#include <Settings/NamespaceSettings.hpp>
15 virtual const char *
getName()
const {
return "<?>"; }
29template <
class Callback>
33 AutoCleanupMIDIStaller(Callback &&callback)
34 : callback(std::forward<Callback>(callback)) {}
43 return new AutoCleanupMIDIStaller(std::forward<Callback>(callback));
auto makeMIDIStaller(Callback &&callback) -> MIDIStaller *
Allocate a MIDIStaller that executes the given callback and deletes itself when MIDIStaller::handleSt...
#define BEGIN_CS_NAMESPACE
Struct that can cause a MIDI_Pipe to be stalled.
virtual const char * getName() const
Get the staller's name for debugging purposes.
virtual void handleStall()=0
Call back that should finish any MIDI messages that are in progress, and un-stall the pipe or MIDI so...
virtual ~MIDIStaller()=default
static const char * getNameNull(MIDIStaller *s)
Get the staller's name for debugging purposes.