|  | 
|  | MidiRingBuffer (size_t size) | 
|  | 
| bool | read_prefix (T *time, Evoral::EventType *type, uint32_t *size) | 
|  | 
| bool | read_contents (uint32_t size, uint8_t *buf) | 
|  | 
| size_t | read (MidiBuffer &dst, samplepos_t start, samplepos_t end, samplecnt_t offset=0, bool stop_on_overflow_in_destination=false) | 
|  | 
| size_t | skip_to (samplepos_t start) | 
|  | 
| void | dump (std::ostream &dst) | 
|  | 
| void | flush (samplepos_t start, samplepos_t end) | 
|  | 
| void | reset_tracker () | 
|  | 
| void | resolve_tracker (MidiBuffer &dst, samplepos_t) | 
|  | 
| void | resolve_tracker (Evoral::EventSink< samplepos_t > &dst, samplepos_t) | 
|  | 
|  | EventRingBuffer (size_t capacity) | 
|  | 
| size_t | capacity () const | 
|  | 
| bool | peek (uint8_t *, size_t size) | 
|  | 
| uint32_t | write (T time, Evoral::EventType type, uint32_t size, const uint8_t *buf) | 
|  | 
| bool | read (T *time, Evoral::EventType *type, uint32_t *size, uint8_t *buf) | 
|  | 
|  | RingBufferNPT (size_t sz) | 
|  | 
| virtual | ~RingBufferNPT () | 
|  | 
| void | reset () | 
|  | 
| void | set (size_t r, size_t w) | 
|  | 
| size_t | read (uint8_t *dest, size_t cnt) | 
|  | 
| size_t | write (const uint8_t *src, size_t cnt) | 
|  | 
| size_t | write_one (const uint8_t src) | 
|  | 
| void | get_read_vector (rw_vector *) | 
|  | 
| void | get_write_vector (rw_vector *) | 
|  | 
| void | decrement_read_ptr (size_t cnt) | 
|  | 
| void | increment_read_ptr (size_t cnt) | 
|  | 
| void | increment_write_ptr (size_t cnt) | 
|  | 
| size_t | write_space () | 
|  | 
| size_t | read_space () | 
|  | 
| uint8_t * | buffer () | 
|  | 
| size_t | get_write_ptr () const | 
|  | 
| size_t | get_read_ptr () const | 
|  | 
| size_t | bufsize () const | 
|  | 
| virtual | ~EventSink () | 
|  | 
template<typename T>
class ARDOUR::MidiRingBuffer< T >
A RingBuffer for (MIDI) events.
This is simply a wrapper around a raw ringbuffer which writes/reads events as flat placked blobs. The buffer looks like this:
[timestamp][type][size][size bytes of raw MIDI][timestamp][type]size 
Definition at line 44 of file midi_ring_buffer.h.