aboutsummaryrefslogtreecommitdiff
path: root/src/old/sbuffer.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/old/sbuffer.h')
-rw-r--r--src/old/sbuffer.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/old/sbuffer.h b/src/old/sbuffer.h
new file mode 100644
index 0000000..65feb71
--- /dev/null
+++ b/src/old/sbuffer.h
@@ -0,0 +1,40 @@
1#ifndef S_BUFFER_H
2#define S_BUFFER_H
3
4#include <stdint.h>
5
6#include "stream.h"
7#include "flexbuf.h"
8
9class SBuffer : public Stream
10{
11public:
12 SBuffer();
13 virtual ~SBuffer();
14
15 virtual void close();
16 virtual size_t read( char *pBuf, size_t nBytes );
17
18 /**
19 *@todo Update this to write at nPos, not just append data.
20 */
21 virtual size_t write( const char *pBuf, size_t nBytes );
22
23 virtual long tell();
24 virtual void seek( long offset );
25 virtual void setPos( long pos );
26 virtual void setPosEnd( long pos );
27 virtual bool isEOS();
28
29 FlexBuf &getBuffer()
30 {
31 return fbData;
32 }
33
34private:
35 long nPos;
36 bool bOpen;
37 FlexBuf fbData;
38};
39
40#endif