From 22277c6ffe91189cbb5d7a7d8572bf829e3a2610 Mon Sep 17 00:00:00 2001 From: Mike Buland Date: Tue, 24 Feb 2009 01:31:48 +0000 Subject: Just committing some in-progress code. It may report some warnings, but it doesn't inhibit building. These'll be in good working shape in no time. --- src/buffer.h | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 src/buffer.h (limited to 'src/buffer.h') diff --git a/src/buffer.h b/src/buffer.h new file mode 100644 index 0000000..beb4b08 --- /dev/null +++ b/src/buffer.h @@ -0,0 +1,33 @@ +#ifndef BU_BUFFER_H +#define BU_BUFFER_H + +#include "bu/filter.h" + +namespace Bu +{ + class Buffer : public Bu::Filter + { + public: + Buffer( Bu::Stream &rNext, int iBufSize=4096 ); + virtual ~Buffer(); + + virtual void start(); + virtual size_t stop(); + + virtual size_t read( void *pBuf, size_t nBytes ); + virtual size_t write( const void *pBuf, size_t nBytes ); + using Stream::write; + + virtual void flush(); + + private: + size_t sSoFar; + int iBufSize; + char *sReadBuf; + char *sWriteBuf; + int iReadBufFill; + int iWriteBufFill; + }; +}; + +#endif -- cgit v1.2.3