Jack2: Jack::JackMidiSendQueue Class Reference

Jack2 1.9.12

Public Member Functions | List of all members
Jack::JackMidiSendQueue Class Reference

`#include <JackMidiSendQueue.h>`

Inheritance diagram for Jack::JackMidiSendQueue:

## Public Member Functions
virtual jack_nframes_t | GetNextScheduleFrame ()
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)
Public Member Functions inherited from Jack::JackMidiWriteQueue
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)

## Additional Inherited Members
Public Types inherited from Jack::JackMidiWriteQueue
enum | EnqueueResult { BUFFER_FULL, BUFFER_TOO_SMALL, EVENT_EARLY, EN_ERROR, OK }

## Detailed Description

Implemented by MIDI output connections.

Definition at line 31 of file JackMidiSendQueue.h.

## Member Function Documentation

## ◆ GetNextScheduleFrame()

jack_nframes_t JackMidiSendQueue::GetNextScheduleFrame | ( |  | ) |
| virtual

Returns the next frame that a MIDI message can be sent at. The default method returns the current frame.

Reimplemented in Jack::JackFFADOMidiSendQueue.

Definition at line 31 of file JackMidiSendQueue.cpp.

## ◆ EnqueueEvent() [1/2]

virtual EnqueueResult Jack::JackMidiWriteQueue::EnqueueEvent

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.

## ◆ EnqueueEvent() [2/2]

EnqueueResult Jack::JackMidiWriteQueue::EnqueueEvent
| 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.

The documentation for this class was generated from the following files:

- JackMidiSendQueue.h
- JackMidiSendQueue.cpp