34 return (b_end == (b_start ^ b_size));
38 return (b_end == b_start);
42 elems[b_end&(b_size-1)] = value;
44 b_start = increase(b_start);
46 b_end = increase(b_end);
50 int result = elems[b_start&(b_size-1)];
51 b_start = increase(b_start);
56 int RingBuffer::increase(
int p) {
57 return (p + 1)&(2*b_size-1);
int read()
Read a value from the buffer.
RingBuffer()
Default constructor, buffer has a size DEFAULT_BUFFER_SIZE.
int isEmpty()
Returns 1 (true) if the buffer is empty.
void write(int value)
Write a value into the buffer.
int isFull()
Returns 1 (true) if the buffer is full.