|
Elm
2
ELM is a library providing generic data structures, OS-independent interface, plugins and XML.
|
22 #ifndef ELM_IO_RANDOMACCESSSTREAM_H_
23 #define ELM_IO_RANDOMACCESSSTREAM_H_
25 #include <elm/types.h>
26 #include <elm/io/InStream.h>
27 #include <elm/io/OutStream.h>
28 #include <elm/sys/Path.h>
29 #include <elm/sys/SystemException.h>
31 namespace elm {
namespace io {
44 virtual size_t size(
void)
const = 0;
virtual pos_t pos(void) const =0
virtual bool moveForward(pos_t pos)=0
Definition: RandomAccessStream.h:34
t::uint64 pos_t
Definition: RandomAccessStream.h:36
static const int WRITE
Definition: RandomAccessStream.h:40
int access_t
Definition: RandomAccessStream.h:38
static const int READ
Definition: RandomAccessStream.h:39
static RandomAccessStream * createFile(const sys::Path &path, access_t access=WRITE)
Definition: io_RandomAccessStream.cpp:110
static const int READ_WRITE
Definition: RandomAccessStream.h:41
unsigned long uint64
Definition: arch.h:33
virtual size_t size(void) const =0
Definition: OutStream.h:30
virtual void resetPos(void)
Definition: RandomAccessStream.h:48
virtual bool moveTo(pos_t pos)=0
static RandomAccessStream * openFile(const sys::Path &path, access_t access=READ)
Definition: io_RandomAccessStream.cpp:95
t::uint64 size_t
Definition: RandomAccessStream.h:37
Definition: InStream.h:29
virtual bool moveBackward(pos_t pos)=0