Mercurial > hg > opencollidoscope
view CollidoscopeApp/include/RingBufferPack.h @ 2:dd889fff8423
added some comments
author | Fiore Martin <f.martin@qmul.ac.uk> |
---|---|
date | Mon, 11 Jul 2016 17:03:40 +0200 |
parents | 02467299402e |
children | 7fb593d53361 |
line wrap: on
line source
#pragma once #include "cinder/audio/dsp/RingBuffer.h" /* Packs together a RingBuffer and the erlated array used to exchange data (read/write) with the ring buffer */ template <typename T> class RingBufferPack { public: RingBufferPack( size_t size ) : mSize( size ), mBuffer( size ) { mArray = new T[size]; } ~RingBufferPack() { delete[] mArray; } // no copy RingBufferPack( const RingBufferPack © ) = delete; RingBufferPack & operator=(const RingBufferPack ©) = delete; ci::audio::dsp::RingBufferT<T> & getBuffer() { return mBuffer; } T* getExchangeArray() { return mArray; } std::size_t getSize() { return mSize; } private: size_t mSize; ci::audio::dsp::RingBufferT<T> mBuffer; T* mArray; };