1 #ifndef GMCHARRINGBUFFER_HPP_
2 #define GMCHARRINGBUFFER_HPP_
7 #define GM_CHAR_RING_BUFFER_OK 0
8 #define GM_CHAR_RING_BUFFER_NO_BUFFER 1
9 #define GM_CHAR_RING_BUFFER_INVALID_INDEX 2
10 #define GM_CHAR_RING_BUFFER_NO_ROOM 3
11 #define GM_CHAR_RING_BUFFER_FAILURE 4
12 #define GM_CHAR_RING_BUFFER_OVERRUN_OVERWROTE 5
13 #define GM_CHAR_RING_BUFFER_OVERRUN_NO_WRITE 6
14 #define GM_CHAR_RING_BUFFER_EMPTY 7
15 #define GM_CHAR_RING_BUFFER_NULL_DESTINATION 8
16 #define GM_CHAR_RING_BUFFER_NO_BYTES 9
34 int Write (
void *source,
36 int64_t BufferSize () {
return mBufferSize; }
39 bool HasData () {
return (mHead != mTail); }
40 bool IsEmpty () {
return (mHead == mTail); }
42 int ReadAt (
void* dest,
45 int EraseNext (int64_t sizeToErase);
46 int64_t NextWritePosition ();
47 int64_t BytesAvailable ();
48 int64_t BytesAvailableAt (int64_t index);
50 int SeekRead (int64_t nextRead);
Definition: GmCharRingBuffer.hpp:26
GmApp/GmLoggingApp.hpp>
Definition: Analogs.hpp:47