22 #ifndef ELM_IO_BLOCK_IN_STREAM_H
23 #define ELM_IO_BLOCK_IN_STREAM_H
25 #include <elm/assert.h>
26 #include <elm/string/String.h>
27 #include <elm/string/CString.h>
28 #include <elm/io/InStream.h>
30 namespace elm {
namespace io {
42 inline const void *
block(
void)
const;
43 inline int size(
void)
const;
44 inline int mark(
void)
const;
45 inline void move(
int mark);
48 inline void reset(
void);
51 virtual int read(
void *buffer,
int size);
52 virtual int read(
void);
74 ASSERTP(off + size <= _size,
"move out of block");
79 ASSERTP(off - size >= 0,
"move out of block");
89 #endif // ELM_IO_BLOCK_IN_STREAM_H
int size(void) const
Definition: BlockInStream.h:60
int mark(void) const
Definition: BlockInStream.h:64
void moveForward(int size)
Definition: BlockInStream.h:73
uint32 size
Definition: int.h:41
void moveBackward(int size)
Definition: BlockInStream.h:78
const void * block(void) const
Definition: BlockInStream.h:56
BlockInStream(const void *block, int size)
Definition: io_BlockInStream.cpp:41
virtual int read(void)
Definition: io_BlockInStream.cpp:138
Definition: BlockInStream.h:33
void move(int mark)
Definition: BlockInStream.h:68
Definition: InStream.h:30
void reset(void)
Definition: BlockInStream.h:83