soma-io  5.0.5
soma::FilteringDataSource Class Reference

Filtering data source: filters out comments and/or counts lines in a ASCII stream. More...

#include <soma-io/datasource/filteringdatasource.h>

Inheritance diagram for soma::FilteringDataSource:
Collaboration diagram for soma::FilteringDataSource:

Public Member Functions

 FilteringDataSource (carto::rc_ptr< DataSource > in, int line_num=1)
 
virtual ~FilteringDataSource ()
 
virtual DataSourceclone () const
 
virtual int iterateMode () const
 possible iteration mode(s): bitwise OR of IterateMode values More...
 
virtual offset_t size () const
 
virtual offset_t at () const
 
virtual bool at (offset_t pos)
 
virtual long readBlock (char *data, unsigned long maxlen)
 
virtual long writeBlock (const char *data, unsigned long len)
 
virtual int getch ()
 
virtual int putch (int ch)
 
virtual bool ungetch (int ch)
 
virtual bool allowsMemoryMapping () const
 
bool filtersComments () const
 
bool countsLines () const
 
void setFiltersComments (bool)
 
void setCountsLines (bool)
 
int lineNumber () const
 
void setLineNumber (int)
 
std::string commentTag () const
 
void setCommentTag (const std::string &)
 
- Public Member Functions inherited from soma::ChainDataSource
 ChainDataSource (carto::rc_ptr< DataSource > ds, const std::string &url=std::string())
 
virtual ~ChainDataSource ()
 
void setSource (carto::rc_ptr< DataSource > ds, const std::string &url=std::string())
 
carto::rc_ptr< DataSourcesource ()
 
const carto::rc_ptr< DataSourcesource () const
 
virtual bool isOpen () const
 
virtual bool open (int mode)
 
virtual void close ()
 
virtual std::string url () const
 
- Public Member Functions inherited from soma::DataSource
 DataSource ()
 
virtual ~DataSource ()
 
int mode () const
 access mode(s) (read/write): bitwise OR of Mode values More...
 
virtual bool eof () const
 
virtual bool operator! () const
 
virtual operator bool () const
 
virtual void flush ()
 
virtual bool atEnd () const
 
bool reset ()
 
- Public Member Functions inherited from carto::RCObject
 RCObject ()
 
 RCObject (const RCObject &)
 
RCObjectoperator= (const RCObject &)
 
virtual ~RCObject ()
 

Protected Attributes

bool _filtercomments
 
bool _countlines
 
int _line
 
std::string _commenttag
 
- Protected Attributes inherited from soma::ChainDataSource
carto::rc_ptr< DataSource_source
 
- Protected Attributes inherited from soma::DataSource
int _mode
 

Additional Inherited Members

- Public Types inherited from soma::DataSource
enum  Mode { Read = 1, Write = 2, ReadWrite = 3 }
 
enum  IterateMode { DirectAccess = 1, SequentialAccess = 2 }
 
- Public Types inherited from carto::RCObject
typedef int RefCounterType
 
- Static Public Member Functions inherited from soma::DataSource
static const carto::rc_ptr< DataSourcenone ()
 An empty ref-counter that is more convenient than calling a constructor of rc_ptr<DataSource> (useful when calling functions) More...
 

Detailed Description

Filtering data source: filters out comments and/or counts lines in a ASCII stream.

Definition at line 48 of file filteringdatasource.h.

Constructor & Destructor Documentation

◆ FilteringDataSource()

soma::FilteringDataSource::FilteringDataSource ( carto::rc_ptr< DataSource in,
int  line_num = 1 
)

◆ ~FilteringDataSource()

virtual soma::FilteringDataSource::~FilteringDataSource ( )
virtual

Member Function Documentation

◆ allowsMemoryMapping()

virtual bool soma::FilteringDataSource::allowsMemoryMapping ( ) const
virtual

Implements soma::DataSource.

◆ at() [1/2]

virtual offset_t soma::FilteringDataSource::at ( ) const
virtual

Implements soma::DataSource.

◆ at() [2/2]

virtual bool soma::FilteringDataSource::at ( offset_t  pos)
virtual

Implements soma::DataSource.

◆ clone()

virtual DataSource* soma::FilteringDataSource::clone ( ) const
virtual

Implements soma::DataSource.

◆ commentTag()

std::string soma::FilteringDataSource::commentTag ( ) const

◆ countsLines()

bool soma::FilteringDataSource::countsLines ( ) const

◆ filtersComments()

bool soma::FilteringDataSource::filtersComments ( ) const

◆ getch()

virtual int soma::FilteringDataSource::getch ( )
virtual

Implements soma::DataSource.

◆ iterateMode()

virtual int soma::FilteringDataSource::iterateMode ( ) const
virtual

possible iteration mode(s): bitwise OR of IterateMode values

Implements soma::DataSource.

◆ lineNumber()

int soma::FilteringDataSource::lineNumber ( ) const

◆ putch()

virtual int soma::FilteringDataSource::putch ( int  ch)
virtual

Implements soma::DataSource.

◆ readBlock()

virtual long soma::FilteringDataSource::readBlock ( char *  data,
unsigned long  maxlen 
)
virtual

Implements soma::DataSource.

◆ setCommentTag()

void soma::FilteringDataSource::setCommentTag ( const std::string &  )

◆ setCountsLines()

void soma::FilteringDataSource::setCountsLines ( bool  )

◆ setFiltersComments()

void soma::FilteringDataSource::setFiltersComments ( bool  )

◆ setLineNumber()

void soma::FilteringDataSource::setLineNumber ( int  )

◆ size()

virtual offset_t soma::FilteringDataSource::size ( ) const
virtual

Implements soma::DataSource.

◆ ungetch()

virtual bool soma::FilteringDataSource::ungetch ( int  ch)
virtual

Implements soma::DataSource.

◆ writeBlock()

virtual long soma::FilteringDataSource::writeBlock ( const char *  data,
unsigned long  len 
)
virtual

Implements soma::DataSource.

Member Data Documentation

◆ _commenttag

std::string soma::FilteringDataSource::_commenttag
protected

Definition at line 79 of file filteringdatasource.h.

◆ _countlines

bool soma::FilteringDataSource::_countlines
protected

Definition at line 77 of file filteringdatasource.h.

◆ _filtercomments

bool soma::FilteringDataSource::_filtercomments
protected

Definition at line 76 of file filteringdatasource.h.

◆ _line

int soma::FilteringDataSource::_line
protected

Definition at line 78 of file filteringdatasource.h.


The documentation for this class was generated from the following file: