Rogue Wave banner
Previous fileTop of DocumentContentsIndex pageNext file
Advanced Tools Module Reference Guide
Rogue Wave web site:  Home Page  |  Main Documentation Page

RWTInputStreamLockImp<InputStream, FilteredInputStreamImp>

Module:  Advanced Tools   Package:  Streams


RWTInputStreamLockImp FilteredInputStreamImp

Local Index

Members

Header File

#include <rw/stream/RWTInputStreamLockImp.h>

Description

The class RWTInputStreamLockImp implements a simple lock stream that can be used with any kind of input stream. The stream locks its internal synchronization mechanism, before forwarding input requests to its associated source stream, and then unlocks the internal synchronization mechanism upon completion. The stream's internal synchronization mechanism is locked using a guard object, ensuring its proper release in the event that an exception is thrown.

Member Typedefs

typedef InputStream RWInputStream_type      RWInputStream_type 
typedef typename InputStream::element_type  element_type 

Protected Constructor

RWTInputStreamLockImp(InputStream& sourceStream);

Public Destructor

virtual 
~RWTInputStreamLockImp();

Static Public Member Function

static InputStream 
make(InputStream& sourceStream);

Public Member Functions

virtual InputStream 
acquire();
virtual RWSize 
available() const;
virtual void 
close();
virtual bool 
isBad() const;
virtual bool 
isEof() const;
virtual bool 
isFail() const;
virtual bool 
isGood() const;
virtual element_type 
read();
virtual RWSize 
read(element_type* array, RWSize num);
virtual void 
release();
virtual RWSize 
skip(RWSize numUnits);

Protected Member Functions

RWMutexLock& 
getStreamMutex() const;

RWMutexLock& 
getStreamMutex();


Previous fileTop of DocumentContentsIndex pageNext file

© 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.