|
Jack2
1.9.12
|
#include <JackMidiWriteQueue.h>
Public Types | |
| enum | EnqueueResult { BUFFER_FULL, BUFFER_TOO_SMALL, EVENT_EARLY, EN_ERROR, OK } |
Public Member Functions | |
| virtual EnqueueResult | EnqueueEvent (jack_nframes_t time, size_t size, jack_midi_data_t *buffer)=0 |
| EnqueueResult | EnqueueEvent (jack_midi_event_t *event, jack_nframes_t frame_offset=0) |
Interface for classes that act as write queues for MIDI messages. Write queues are used by processors to transfer data to the next processor.
Definition at line 32 of file JackMidiWriteQueue.h.
|
pure virtual |
Enqueues a data packet in the write queue of size bytes contained in buffer that will be sent the absolute time specified by time. This method should not block unless 1.) this write queue represents the actual outbound MIDI connection, 2.) the MIDI event is being sent now, meaning that time is less than or equal to now, and 3.) the method is not being called in the process thread. The method should return OK if the event was enqueued, BUFFER_FULL if the write queue isn't able to accept the event right now, BUFFER_TOO_SMALL if this write queue will never be able to accept the event because the event is too large, EVENT_EARLY if this queue cannot schedule events ahead of time, and EN_ERROR if an error occurs that cannot be specified by another return code.
Implemented in Jack::JackMidiRawInputWriteQueue, Jack::JackMidiRawOutputWriteQueue, Jack::JackMidiAsyncWaitQueue, Jack::JackMidiAsyncQueue, Jack::JackMidiBufferWriteQueue, Jack::JackALSARawMidiSendQueue, and Jack::JackFFADOMidiSendQueue.
|
inline |
A wrapper method for the EnqueueEvent method above. The optional 'frame_offset' argument is an amount of frames to add to the event's time.
Definition at line 72 of file JackMidiWriteQueue.h.
1.8.14