1 #ifndef _WINDOWEDFIFO_H_
\r
2 #define _WINDOWEDFIFO_H_
\r
5 #include "Condition.h"
\r
9 WindowedFifo(char* name, unsigned size);
\r
10 virtual ~WindowedFifo();
\r
12 virtual unsigned reserve(void** destination, unsigned len);
\r
13 virtual void release();
\r
15 virtual unsigned capture(void** destination, unsigned len);
\r
16 virtual void consume();
\r
18 virtual unsigned used() const;
\r
19 virtual unsigned unused() const;
\r
20 virtual unsigned size() const;
\r
21 virtual char* getName() const;
\r
31 unsigned _writeReserve;
32 unsigned _readReserve;
34 bool _isHeadReserved;
\r
35 bool _isTailReserved;
\r
38 Condition *_readCondition, *_writeCondition;
\r