34 #ifndef SOMAIO_DATASOURCE_CSTREAMDATASOURCE_H 35 #define SOMAIO_DATASOURCE_CSTREAMDATASOURCE_H 56 virtual bool isOpen()
const;
63 virtual long readBlock(
char* data,
unsigned long maxlen );
64 virtual long writeBlock(
const char* data,
unsigned long len );
66 virtual int putch(
int ch );
C stream data source: base class for all sources based on a FILE* (stdio streams) ...
virtual long readBlock(char *data, unsigned long maxlen)
int mode() const
access mode(s) (read/write): bitwise OR of Mode values
virtual bool allowsMemoryMapping() const
in the general case, memory mapping is not possible
CStreamDataSource(FILE *f=0, int mode=Read)
virtual int iterateMode() const
possible iteration mode(s): bitwise OR of IterateMode values
Abstraction layer for various data sources (file, buffer, socket...).
virtual offset_t size() const
virtual int putch(int ch)
virtual ~CStreamDataSource()
unsigned long long offset_t
Offsets are 64 bits if supported.
virtual offset_t at() const
virtual bool isOpen() const
virtual long writeBlock(const char *data, unsigned long len)
virtual DataSource * clone() const
virtual bool open(int mode)
useless for a file descriptor: a fd is already open
virtual bool ungetch(int ch)