SourcePro® API Reference Guide

 
List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions
RWCharToStreambufOutputStreamImp Class Reference

Concrete class connecting a narrow character stream to an iostreams narrow character buffer. More...

#include <rw/stream/RWCharToStreambufOutputStreamImp.h>

Inheritance diagram for RWCharToStreambufOutputStreamImp:
RWCharOutputStreamImp RWOutputStreamImp RWStreamImp RWBodyBase RWTCountingBody< RWMutexLock > RWTMonitor< RWMutexLock >

Public Member Functions

virtual ~RWCharToStreambufOutputStreamImp ()
 
virtual void close ()
 
virtual void flush ()
 
virtual bool isBad () const
 
virtual bool isFail () const
 
virtual bool isGood () const
 
virtual void write (char charValue)
 
virtual void write (const char *charArray, RWSize numChars)
 
- Public Member Functions inherited from RWCharOutputStreamImp
virtual ~RWCharOutputStreamImp ()
 
virtual RWCharOutputStream acquire ()
 
virtual void release ()
 
- Public Member Functions inherited from RWOutputStreamImp
virtual ~RWOutputStreamImp ()
 
- Public Member Functions inherited from RWStreamImp
virtual ~RWStreamImp ()
 

Static Public Member Functions

static RWCharOutputStream make (std::streambuf &sink)
 

Protected Member Functions

 RWCharToStreambufOutputStreamImp (std::streambuf &sinkBuff)
 
std::streambuf & getSinkBuff ()
 
const std::streambuf & getSinkBuff () const
 
- Protected Member Functions inherited from RWCharOutputStreamImp
 RWCharOutputStreamImp ()
 
- Protected Member Functions inherited from RWOutputStreamImp
 RWOutputStreamImp ()
 
- Protected Member Functions inherited from RWStreamImp
 RWStreamImp ()
 
- Protected Member Functions inherited from RWBodyBase
 RWBodyBase (void)
 
 RWBodyBase (RWStaticCtor)
 
 RWBodyBase (const RWBodyBase &second)
 
virtual ~RWBodyBase (void)
 
RWBodyBaseoperator= (const RWBodyBase &second)
 
- Protected Member Functions inherited from RWTCountingBody< RWMutexLock >
 RWTCountingBody (unsigned initCount=0)
 
 RWTCountingBody (RWStaticCtor)
 
 RWTCountingBody (const RWTCountingBody< RWMutexLock > &second)
 
RWTCountingBody< RWMutexLock > & operator= (const RWTCountingBody< RWMutexLock > &second)
 
 ~RWTCountingBody (void)
 
unsigned addReference (void)
 
unsigned references (void) const
 
unsigned removeReference (void)
 
- Protected Member Functions inherited from RWTMonitor< RWMutexLock >
 RWTMonitor ()
 
 RWTMonitor (RWStaticCtor)
 
 RWTMonitor (const RWTMonitor< RWMutexLock > &second)
 
 ~RWTMonitor ()
 
void acquire ()
 
bool isAcquired () const
 
RWTMonitor< RWMutexLock > & monitor () const
 
RWMutexLockmutex ()
 
RWTMonitor< RWMutexLock > & operator= (const RWTMonitor< RWMutexLock > &)
 
void release ()
 
bool tryAcquire ()
 

Additional Inherited Members

- Protected Types inherited from RWTCountingBody< RWMutexLock >
typedef RWTLockGuard< RWTMonitor< RWMutexLock > > LockGuard
 
typedef RWTTryLockGuard< RWTMonitor< RWMutexLock > > TryLockGuard
 
typedef RWTUnlockGuard< RWTMonitor< RWMutexLock > > UnlockGuard
 
- Protected Types inherited from RWTMonitor< RWMutexLock >
typedef RWTLockGuard< RWTMonitor< RWMutexLock > > LockGuard
 
typedef RWTTryLockGuard< RWTMonitor< RWMutexLock > > TryLockGuard
 
typedef RWTUnlockGuard< RWTMonitor< RWMutexLock > > UnlockGuard
 

Detailed Description

Concrete class connecting a narrow character stream, to an iostreams narrow character buffer. The iostreams buffer is used as the sink for the data written to the narrow character stream. Implements the body idiom from the handle-body pattern.

Constructor & Destructor Documentation

virtual RWCharToStreambufOutputStreamImp::~RWCharToStreambufOutputStreamImp ( )
virtual

Destructor.

RWCharToStreambufOutputStreamImp::RWCharToStreambufOutputStreamImp ( std::streambuf &  sinkBuff)
inlineprotected

Initializes the reference to the iostreams std::streambuf, that will be used as the sink of narrow characters.

Parameters
sinkBuffThe iostreams std::streambuf that will serve as the sink of narrow characters.

Member Function Documentation

virtual void RWCharToStreambufOutputStreamImp::close ( )
virtual

This function calls flush(). The user is responsible for closing the iostreams std::streambuf used as the sink of narrow characters if necessary.

Exceptions
RWExternalStreamExceptionThrown when the call to the internal iostreams std::streambuf object fails or any propagated exceptions from that call occur.

Reimplemented from RWOutputStreamImp.

virtual void RWCharToStreambufOutputStreamImp::flush ( )
virtual

Forward the flush request to the iostreams std::streambuf.

Exceptions
RWExternalStreamExceptionThrown when the call to the internal iostreams std::streambuf object fails or any propagated exceptions from that call occur.

Implements RWOutputStreamImp.

std::streambuf& RWCharToStreambufOutputStreamImp::getSinkBuff ( )
inlineprotected

Returns a reference to the iostreams std::streambuf, which is used as the sink of narrow characters. Throws no exceptions.

const std::streambuf& RWCharToStreambufOutputStreamImp::getSinkBuff ( ) const
inlineprotected

Returns a reference to the iostreams std::streambuf, which is used as the sink of narrow characters. Throws no exceptions.

virtual bool RWCharToStreambufOutputStreamImp::isBad ( ) const
virtual

Returns true if the last operation performed on the iostreams std::streambuf failed. Throws no exceptions.

Implements RWStreamImp.

virtual bool RWCharToStreambufOutputStreamImp::isFail ( ) const
virtual

Returns true if the last operation performed on the iostreams std::streambuf failed. Throws no exceptions.

Implements RWStreamImp.

virtual bool RWCharToStreambufOutputStreamImp::isGood ( ) const
virtual

Returns true if the last operation performed on the iostreams std::streambuf succeeded. Throws no exceptions.

Implements RWStreamImp.

static RWCharOutputStream RWCharToStreambufOutputStreamImp::make ( std::streambuf &  sink)
inlinestatic

Constructs an RWCharToStreambufOutputStreamImp instance that uses sink as its sink of narrow characters, and returns a handle to it. Throws no exceptions.

Parameters
sinkThe iostreams std::streambuf that is used as the sink of narrow characters.
virtual void RWCharToStreambufOutputStreamImp::write ( char  charValue)
virtual

Writes a single narrow character to the iostreams std::streambuf.

Exceptions
RWExternalStreamExceptionThrown when the call to the internal iostreams std::streambuf object fails or any propagated exceptions from that call occur.
Parameters
charValueThe narrow character to be written.

Implements RWCharOutputStreamImp.

virtual void RWCharToStreambufOutputStreamImp::write ( const char *  charArray,
RWSize  numChars 
)
virtual

Writes an array of narrow characters to the iostreams std::streambuf.

Exceptions
RWIncompleteStreamOperationThrown when the call to the internal iostreams std::streambuf object fails or any propagated exceptions from that call occur.
Parameters
charArrayA pointer to the first element of the array.
numCharsThe number of narrow characters to be written.

Implements RWCharOutputStreamImp.

Copyright © 2023 Rogue Wave Software, Inc., a Perforce company. All Rights Reserved.