1 #ifndef QueueRingBufferH
2 #define QueueRingBufferH
25 int size() {
return count; }
38 lastFree =
new link<T>( initialvalue );
39 lastFilled = lastFree;
41 lastFilled->nextLink = lastFilled;
42 lastFilled->prevLink = lastFilled;
46 link<T> * newLink =
new link<T>( initialvalue );
47 newLink->prevLink = lastFilled;
48 newLink->nextLink = lastFilled->nextLink;
49 lastFilled->nextLink->prevLink = newLink;
50 lastFilled->nextLink = newLink;
58 link<T> *
p = lastFree;
62 while(
p->nextLink != lastFree )
75 lastFree = lastFree->nextLink;
78 return lastFree->value;
85 return lastFree->nextLink->value;
93 if( lastFilled->nextLink == lastFree )
96 link<T> * newLink =
new link<T>(
val );
97 newLink->prevLink = lastFilled;
98 newLink->nextLink = lastFilled->nextLink;
99 lastFilled->nextLink->prevLink = newLink;
100 lastFilled->nextLink = newLink;
105 lastFilled = lastFilled->nextLink;
106 lastFilled->value =
val;
Definition: ringbuffer.h:6
int size()
Definition: ringbuffer.h:25
~queueRingBuffer()
Definition: ringbuffer.h:55
T & current()
Definition: ringbuffer.h:82
void enqueue(const T &val)
Definition: ringbuffer.h:89
T & dequeue()
Definition: ringbuffer.h:71
queueRingBuffer(unsigned int max)
Definition: ringbuffer.h:32
int count
Definition: newplugin.py:14
p
Definition: upgrade.py:63
#define max(a, b)
Definition: region.cpp:7