diff options
-rw-r--r-- | raul/Makefile.am | 2 | ||||
-rw-r--r-- | raul/StampedChunkRingBuffer.h (renamed from raul/MIDIRingBuffer.h) | 19 | ||||
-rw-r--r-- | raul/midi_names.h | 4 | ||||
-rw-r--r-- | tests/midi_ringbuffer_test.cpp | 6 |
4 files changed, 16 insertions, 15 deletions
diff --git a/raul/Makefile.am b/raul/Makefile.am index 68fc40d..82c69de 100644 --- a/raul/Makefile.am +++ b/raul/Makefile.am @@ -9,7 +9,7 @@ raulinclude_HEADERS = \ DoubleBuffer.h \ JackDriver.h \ List.h \ - MIDIRingBuffer.h \ + StampedChunkRingBuffer.h \ MIDISink.h \ Maid.h \ Namespaces.h \ diff --git a/raul/MIDIRingBuffer.h b/raul/StampedChunkRingBuffer.h index 3e216e1..838ea0f 100644 --- a/raul/MIDIRingBuffer.h +++ b/raul/StampedChunkRingBuffer.h @@ -15,8 +15,8 @@ * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ -#ifndef RAUL_MIDI_RING_BUFFER_H -#define RAUL_MIDI_RING_BUFFER_H +#ifndef RAUL_STAMPED_CHUNK_RING_BUFFER_H +#define RAUL_STAMPED_CHUNK_RING_BUFFER_H #include <cassert> #include <algorithm> @@ -27,14 +27,17 @@ namespace Raul { -/** A MIDI RingBuffer +/** A RingBuffer of timestamped binary "chunks". + * + * This packs a timestamp, size, and size bytes of data flat into the buffer. + * Useful for MIDI events, OSC messages, etc. */ -class MIDIRingBuffer : private Raul::RingBuffer<Byte> { +class StampedChunkRingBuffer : private Raul::RingBuffer<Byte> { public: /** @param size Size in bytes. */ - MIDIRingBuffer(size_t size) + StampedChunkRingBuffer(size_t size) : RingBuffer<Byte>(size) {} @@ -46,7 +49,7 @@ public: inline bool -MIDIRingBuffer::read(TickTime* time, size_t* size, Byte* buf) +StampedChunkRingBuffer::read(TickTime* time, size_t* size, Byte* buf) { bool success = RingBuffer<Byte>::full_read(sizeof(TickTime), (Byte*)time); if (success) @@ -59,7 +62,7 @@ MIDIRingBuffer::read(TickTime* time, size_t* size, Byte* buf) inline size_t -MIDIRingBuffer::write(TickTime time, size_t size, const Byte* buf) +StampedChunkRingBuffer::write(TickTime time, size_t size, const Byte* buf) { assert(size > 0); @@ -76,5 +79,5 @@ MIDIRingBuffer::write(TickTime time, size_t size, const Byte* buf) } // namespace Raul -#endif // RAUL_MIDI_RING_BUFFER_H +#endif // RAUL_STAMPED_CHUNK_RING_BUFFER_H diff --git a/raul/midi_names.h b/raul/midi_names.h index 9b5eff6..45b61ef 100644 --- a/raul/midi_names.h +++ b/raul/midi_names.h @@ -27,12 +27,10 @@ namespace Raul { /** \group midi */ -static const uint8_t X_MIDI_CMD_NOTE_OFF = 0x80; - /** Pass this a symbol defined in midi_events.h (e.g. MIDI_CTL_PAN) to get the * short name of a MIDI event/controller according to General MIDI. */ -static const char* midi_name(uint8_t status) +inline static const char* midi_name(uint8_t status) { switch (status) { diff --git a/tests/midi_ringbuffer_test.cpp b/tests/midi_ringbuffer_test.cpp index bb9f079..5f903d1 100644 --- a/tests/midi_ringbuffer_test.cpp +++ b/tests/midi_ringbuffer_test.cpp @@ -1,12 +1,12 @@ #include <iostream> -#include "raul/MIDIRingBuffer.h" +#include "raul/StampedChunkRingBuffer.h" #include "raul/midi_names.h" using namespace std; using namespace Raul; void -read_write_test(MIDIRingBuffer& rb, unsigned offset) +read_write_test(StampedChunkRingBuffer& rb, unsigned offset) { TickTime t; size_t size; @@ -31,7 +31,7 @@ read_write_test(MIDIRingBuffer& rb, unsigned offset) int main() { - MIDIRingBuffer rb(32); + StampedChunkRingBuffer rb(32); for (size_t i=0; i < 9999; ++i) read_write_test(rb, i); |