Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Class Members

StrucioStream Class Reference

#include <StrucioStream.h>

Inheritance diagram for StrucioStream:

Inheritance graph
[legend]
List of all members.

Detailed Description

Pure-virtual base class for input streams.


Public Member Functions

 StrucioStream (const char *fname, const char *fmode="rb")
 StrucioStream (const char *fname, const int fileno, const char *fmode="rb")
 Construct from open file descriptor.

void Follow ()
 Tell this stream to follow file changes.

size_t Read (void *ptr, size_t bytes)
 Read from stream.

virtual size_t Write (void *ptr, size_t bytes)=0
 Read from stream.

DtsObject construct (DTS *dts, dts_typeid t)
 Construct a fixed-sized object.

DtsObject construct (DTS *dts, dts_typeid t, unsigned int size)
 Construct an object.


Static Public Member Functions

StrucioStreamMagicOpen (const char *filename, const char *mode="rb")
 Return the appropriate subclass based on file type.

StrucioStreamMagicOpen (DtsObject fo)
 Open a file specified in a DtsObject and return a StrucioStream object for it.


Protected Member Functions

virtual size_t BasicRead (void *ptr, size_t bytes)=0
 Read from stream.

virtual bool Close ()=0
 Close stream.

virtual bool FdOpen ()=0
bool Open ()
 (Re)Open stream by name.


Protected Attributes

bool follow
ino_t inode
const char * filename
int fd
 We always keep a valid fd number around.

const char * mode
 Desired open mode (fopen syntax).


The documentation for this class was generated from the following file:
Generated on Mon Aug 28 23:37:14 2006 for SMACQ by doxygen 1.3.5