summaryrefslogtreecommitdiffstats
path: root/raul/RingBuffer.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'raul/RingBuffer.hpp')
-rw-r--r--raul/RingBuffer.hpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/raul/RingBuffer.hpp b/raul/RingBuffer.hpp
index 23d4d90..77d4256 100644
--- a/raul/RingBuffer.hpp
+++ b/raul/RingBuffer.hpp
@@ -20,6 +20,7 @@
#include <cassert>
#include <cstring>
+#include <cstdlib>
#include <iostream>
#include <glib.h>
#include "raul/log.hpp"
@@ -34,12 +35,11 @@ namespace Raul {
template <typename T>
class RingBuffer {
public:
-
/** @param size Size in bytes.
*/
RingBuffer(size_t size)
: _size(size)
- , _buf(new T[size])
+ , _buf(static_cast<char*>(malloc(size)))
{
reset();
assert(read_space() == 0);
@@ -47,7 +47,7 @@ public:
}
virtual ~RingBuffer() {
- delete[] _buf;
+ free(_buf);
}
/** Reset(empty) the ringbuffer.
@@ -99,7 +99,7 @@ protected:
mutable int _read_ptr;
size_t _size; ///< Size (capacity) in bytes
- T* _buf; ///< size, event, size, event...
+ char* _buf; ///< Contents
};
@@ -190,7 +190,7 @@ bool
RingBuffer<T>::skip(size_t size)
{
if (read_space() < size) {
- warn << "Attempt to skip past end of MIDI ring buffer" << std::endl;
+ warn << "Attempt to skip past end of RingBuffer" << std::endl;
return false;
}