1#ifndef MXMIDIPRESENTER_H
2#define MXMIDIPRESENTER_H
MIDI presenter class responsible for handling playback of MIDI music streams.
MxBool IsA(const char *p_name) const override
Checks if this instance matches a class type by name.
void DoneTickle() override
Tickle state signaling that playback is done.
void ReadyTickle() override
Tickle state for preparing the presenter before playback starts.
MxMIDIPresenter()
Constructs an MxMIDIPresenter object and initializes its data.
~MxMIDIPresenter() override
Destructor, ensures proper resource cleanup for MIDI playback.
void EndAction() override
Called when playback/action is finished or needs to be ended.
const char * ClassName() const override
Returns the class name for run-time type identification.
void SetVolume(MxS32 p_volume) override
Sets the playback volume for MIDI music.
MxStreamChunk * m_chunk
Current MIDI data chunk being streamed/played.
void Destroy() override
Cleanup resources, free MIDI data, and deinitialize MIDI.
MxResult PutData() override
Actually provides MIDI stream data to the playback system.
static const char * HandlerClassName()
Returns the handler class name for this presenter.
void StartingTickle() override
Tickle state for initializing MIDI playback of the current chunk.
void StreamingTickle() override
Tickle state for streaming (playing) the MIDI chunk.
[AI] Presenter class that handles playback and management of music (streamed or MIDI) in LEGO Island.
[AI] Represents a streamable chunk of data, typically sourced from a media buffer and designed for no...