VMime
stopSequenceFilteredInputStream< COUNT > Class Template Reference
Inheritance diagram for stopSequenceFilteredInputStream< COUNT >:
Collaboration diagram for stopSequenceFilteredInputStream< COUNT >:

Public Member Functions

 stopSequenceFilteredInputStream (inputStream &is, const byte_t *sequence)
 
 stopSequenceFilteredInputStream (inputStream &is, const char *sequence)
 
inputStreamgetPreviousInputStream ()
 
bool eof () const
 
void reset ()
 
size_t read (byte_t *const data, const size_t count)
 
size_t skip (const size_t)
 
template<>
size_t read (byte_t *const data, const size_t count)
 
template<>
size_t read (byte_t *const data, const size_t count)
 
- Public Member Functions inherited from filteredInputStream
virtual size_t getBlockSize ()
 
- Public Member Functions inherited from stream
virtual ~stream ()
 

Additional Inherited Members

- Protected Member Functions inherited from object
 object ()
 
 object (const object &)
 
objectoperator= (const object &)
 
virtual ~object ()
 

Detailed Description

template<int COUNT>
class vmime::utility::stopSequenceFilteredInputStream< COUNT >

A filtered input stream which stops when a specified sequence is found (eof() method will return 'true').

Constructor & Destructor Documentation

stopSequenceFilteredInputStream ( inputStream is,
const byte_t sequence 
)

Construct a new filter for the specified input stream.

Parameters
isstream from which to read data to be filtered
sequencesequence on which to stop
stopSequenceFilteredInputStream ( inputStream is,
const char *  sequence 
)

Construct a new filter for the specified input stream.

Parameters
isstream from which to read data to be filtered
sequencesequence on which to stop

Member Function Documentation

bool eof ( ) const
virtual

Test for end of stream (no more data to read).

Returns
true if we have reached the end of stream, false otherwise

Implements inputStream.

inputStream& getPreviousInputStream ( )
virtual

Return a reference to the stream being filtered.

Returns
stream being filtered

Implements filteredInputStream.

size_t read ( byte_t *const  data,
const size_t  count 
)
virtual

Read data from the stream.

Parameters
datawill receive the data read
countmaximum number of bytes to read
Returns
number of bytes read

Implements inputStream.

References vmime::count(), vmime::end(), and inputStream::read().

Referenced by stopSequenceFilteredInputStream< COUNT >::read().

size_t read ( byte_t *const  data,
const size_t  count 
)
virtual

Read data from the stream.

Parameters
datawill receive the data read
countmaximum number of bytes to read
Returns
number of bytes read

Implements inputStream.

size_t read ( byte_t *const  data,
const size_t  count 
)
virtual

Read data from the stream.

Parameters
datawill receive the data read
countmaximum number of bytes to read
Returns
number of bytes read

Implements inputStream.

References vmime::end(), and stopSequenceFilteredInputStream< COUNT >::read().

void reset ( )
virtual

Set the read pointer to the beginning of the stream.

Warning
WARNING: this may not work for all stream types.

Implements inputStream.

size_t skip ( const size_t  count)
virtual

Skip a number of bytes.

Parameters
countmaximum number of bytes to ignore
Returns
number of bytes skipped

Implements inputStream.


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