22 #include "JackMidiAsyncWaitQueue.h"
23 #include "JackMidiUtil.h"
28 JackMidiAsyncWaitQueue::JackMidiAsyncWaitQueue(
size_t max_bytes,
32 if (semaphore.Allocate(
"JackMidiAsyncWaitQueue",
"midi-thread", 0)) {
33 throw std::bad_alloc();
37 JackMidiAsyncWaitQueue::~JackMidiAsyncWaitQueue()
62 jack_time_t frame_time = GetTimeFromFrames(frame);
63 jack_time_t current_time = GetMicroSeconds();
65 (
long) (frame_time - current_time));
71 return ((usec < 0) ? semaphore.Wait() : semaphore.TimedWait(usec)) ?
75 Jack::JackMidiWriteQueue::EnqueueResult
77 jack_midi_data_t *buffer)
EnqueueResult EnqueueEvent(jack_nframes_t time, size_t size, jack_midi_data_t *buffer)
jack_midi_event_t * DequeueEvent()
virtual jack_midi_event_t * DequeueEvent()
virtual EnqueueResult EnqueueEvent(jack_nframes_t time, size_t size, jack_midi_data_t *buffer)