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

RWUCharFromByteInputStreamImp

Module:  Advanced Tools   Package:  Streams


RWUCharFromByteInputStreamImp RWUCharInputStreamImp RWInputStreamImp RWStreamImp RWBodyBase

Local Index

Members

Header File

#include <rw/stream/RWUCharFromByteInputStreamImp.h>

Description

Concrete class connecting a UTF-16 character stream to a binary stream. The UTF-16 characters are read as a sequence of bytes using the byte ordering (little endian or big endian) specified by the stream header. The stream header consists of the UTF-16 character U+FEFF that is inserted in the stream when generating the output byte sequence. Implements the body idiom from the handle-body pattern.

Protected Constructor

RWUCharFromByteInputStreamImp(RWByteInputStream&
sourceStream);

Public Destructor

virtual 
~RWUCharFromByteInputStreamImp();

Static Public Member Function

static RWUCharInputStream 
make(RWByteInputStream& source);

Public Member Functions

virtual RWSize 
available() const;
virtual void 
close();

virtual bool 
isBad() const;

virtual bool 
isEof() const;

virtual bool 
isFail() const;

virtual bool 
isGood() const;
virtual RWUChar 
read();
virtual RWSize 
read(RWUChar* unicodeArray, RWSize numUChars);
virtual RWSize 
readUntil(RWUChar* unicodeArray, RWSize maxSize, 
RWUChar delim);
virtual RWSize 
skip(RWSize numUnits);

Protected Member Functions

static void 
swap2Bytes(RWUChar& uc);
static void 
swapnBytes(RWUChar* ucAr, RWSize n);

Protected Member Functions

RWByteInputStream& 
getSourceStream();

const RWByteInputStream& 
getSourceStream() const;
void 
getUChar(RWUChar& uc);
RWSize 
getUChars(RWUChar* ucAr, RWSize max);


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.