32 template<
typename DataType,
int Size>
37 memset(mData, DataType(0), Size *
sizeof(DataType));
40 template<
typename DataType,
int Size>
47 template<
typename DataType,
int Size>
50 if (mReadHead == mWriteHead)
54 else if (mWriteHead > mReadHead)
56 return int(mWriteHead - mReadHead);
60 return int(mWriteHead - mData) + Size - int(mReadHead - mData);
64 template<
typename DataType,
int Size>
67 return mReadHead == mWriteHead;
72 template<
typename DataType,
int Size>
75 *mWriteHead++ = inData;
76 if (mWriteHead >= mData + Size)
82 template<
typename DataType,
int Size>
85 for (
int i = 0; i < inSize; ++i)
91 template<
typename DataType,
int Size>
94 memset(mData, DataType(0), Size *
sizeof(DataType));
101 template<
typename DataType,
int Size>
104 const DataType data = *mReadHead++;
105 if (mReadHead >= mData + Size)
112 template<
typename DataType,
int Size>
115 for (
int i = 0; i < inSize; ++i)
#define BEGIN_MIDI_NAMESPACE
#define END_MIDI_NAMESPACE
void write(DataType inData)