rwlogo
SourcePro C++ 12.0

SourcePro® C++ API Reference Guide



   SourcePro C++
Documentation Home

RWDataFromByteInputStreamImp Class Reference
[Streams]

Abstract base class for all the data from binary conversion input stream implementation classes. More...

#include <rw/stream/RWDataFromByteInputStreamImp.h>

Inheritance diagram for RWDataFromByteInputStreamImp:
RWDataInputStreamImp RWInputStreamImp RWStreamImp RWBodyBase RWTCountingBody< RWMutexLock > RWTMonitor< RWMutexLock > RWNativeDataFromByteInputStreamImp

List of all members.

Public Member Functions

virtual ~RWDataFromByteInputStreamImp ()
virtual void close ()
virtual bool isBad () const
virtual bool isFail () const
virtual bool isEof () const
virtual bool isGood () const
virtual RWSize available () const
virtual RWSize skip (RWSize numUnits)

Protected Member Functions

 RWDataFromByteInputStreamImp (const RWByteInputStream &sourceStream)
RWByteInputStreamgetSourceStream ()
const RWByteInputStreamgetSourceStream () const
void setFail ()
void clearFail ()

Detailed Description

Abstract base class for all the data from the binary conversion input stream implementation classes. A conversion input stream is a stream that uses an attached input stream of a different format as the source of elements to its own functions. Implements the body idiom from the handle-body pattern.


Constructor & Destructor Documentation

virtual RWDataFromByteInputStreamImp::~RWDataFromByteInputStreamImp (  )  [virtual]

Destructor.

RWDataFromByteInputStreamImp::RWDataFromByteInputStreamImp ( const RWByteInputStream sourceStream  )  [inline, protected]

Used by the derived classes to initialize the attached source stream.

Parameters:
sourceStream A handle to the attached source stream.

Member Function Documentation

virtual RWSize RWDataFromByteInputStreamImp::available (  )  const [virtual]

Returns the number of bytes that can be read from the attached source stream without blocking. Throws no exceptions.

Implements RWInputStreamImp.

void RWDataFromByteInputStreamImp::clearFail (  )  [inline, protected]

Clears the data stream fail bit. Throws no exceptions.

virtual void RWDataFromByteInputStreamImp::close (  )  [virtual]

Forwards the close() request to the attached source stream.

Implements RWStreamImp.

const RWByteInputStream& RWDataFromByteInputStreamImp::getSourceStream (  )  const [inline, protected]

Returns a handle to the attached source stream. They throw no exceptions.

RWByteInputStream& RWDataFromByteInputStreamImp::getSourceStream (  )  [inline, protected]

Returns a handle to the attached source stream. They throw no exceptions.

virtual bool RWDataFromByteInputStreamImp::isBad (  )  const [virtual]

Forwards the isBad() request to the attached source stream. Throws no exceptions.

Implements RWStreamImp.

virtual bool RWDataFromByteInputStreamImp::isEof (  )  const [virtual]

Forwards the isEof() request to the attached source stream. Throws no exceptions.

Implements RWInputStreamImp.

virtual bool RWDataFromByteInputStreamImp::isFail (  )  const [virtual]

Forwards the isFail() request to the attached source stream. Throws no exceptions.

Implements RWStreamImp.

virtual bool RWDataFromByteInputStreamImp::isGood (  )  const [virtual]

Forwards the isGood() request to the attached source stream. Throws no exceptions.

Implements RWStreamImp.

void RWDataFromByteInputStreamImp::setFail (  )  [inline, protected]

Sets the data stream fail bit. Throws no exceptions.

virtual RWSize RWDataFromByteInputStreamImp::skip ( RWSize  numUnits  )  [virtual]

Skips numUnits bytes from the input sequence of the attached source stream, if possible. The function returns the actual number of bytes skipped, which can be any value between 0 and numUnits.

Parameters:
numUnits The number of bytes to be skipped.

Implements RWInputStreamImp.

 All Classes Functions Variables Typedefs Enumerations Enumerator Friends

© Copyright Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave and SourcePro are registered trademarks of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.
Contact Rogue Wave about documentation or support issues.