Control Surface new-input
MIDI Control Surface library for Arduino
Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
MIDIMessageQueue Class Reference

#include <MIDI_Interfaces/BLEMIDI/MIDIMessageQueue.hpp>

Detailed Description

Definition at line 10 of file MIDIMessageQueue.hpp.

+ Collaboration diagram for MIDIMessageQueue:

Classes

struct  MIDIMessageQueueElement
 

Public Types

using storage_t = std::vector< MIDIMessageQueueElement >
 
using iter_t = storage_t::iterator
 

Public Member Functions

 MIDIMessageQueue (size_t capacity)
 
bool push (ChannelMessage message, uint16_t timestamp)
 
bool push (SysCommonMessage message, uint16_t timestamp)
 
bool push (RealTimeMessage message, uint16_t timestamp)
 
bool push (SysExMessage message, uint16_t timestamp)
 
bool pop (MIDIMessageQueueElement &message)
 

Private Member Functions

bool push (MIDIMessageQueueElement &&message)
 
void inc (iter_t &it)
 

Private Attributes

storage_t storage = storage_t(64)
 
iter_t write_p = storage.begin()
 
iter_t read_p = storage.begin()
 
std::atomic_size_t size {0}
 

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