34 #ifndef SOMAIO_DATASOURCE_FILTERINGDATASOURCE_H
35 #define SOMAIO_DATASOURCE_FILTERINGDATASOURCE_H
59 virtual long readBlock(
char* data,
unsigned long maxlen );
60 virtual long writeBlock(
const char* data,
unsigned long len );
Abstract base DataSource class to operate on another DataSource (to transform it)
Abstraction layer for various data sources (file, buffer, socket...).
Filtering data source: filters out comments and/or counts lines in a ASCII stream.
virtual int putch(int ch)
bool filtersComments() const
virtual offset_t size() const
virtual DataSource * clone() const
void setFiltersComments(bool)
void setCommentTag(const std::string &)
void setCountsLines(bool)
virtual ~FilteringDataSource()
FilteringDataSource(carto::rc_ptr< DataSource > in, int line_num=1)
virtual offset_t at() const
virtual long writeBlock(const char *data, unsigned long len)
std::string commentTag() const
virtual bool allowsMemoryMapping() const
virtual long readBlock(char *data, unsigned long maxlen)
virtual bool ungetch(int ch)
virtual int iterateMode() const
possible iteration mode(s): bitwise OR of IterateMode values
virtual bool at(offset_t pos)
unsigned long long offset_t
Offsets are 64 bits if supported.