Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

Core::ReadAppendStream Class Reference

#include <ReadAppendStream.h>

Inheritance diagram for Core::ReadAppendStream:

Inheritance graph
[legend]
Collaboration diagram for Core::ReadAppendStream:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ReadAppendStream (SequenceableCollection *collection)
virtual StringclassName (void) const
 Answer receiver class name.
virtual void commit (void)
virtual void flush (void)
virtual void nextPut (Object *object)
virtual void nextPut (const char object)
virtual void nextPutAll (const Collection *collection)
virtual void nextPutAll (const char *string)
virtual void nextPutAll (const SequenceableCollection *collection, long size, long startIndex)
virtual void position (long position)
virtual long writePosition (void)
virtual void close (void)
virtual bool isWritable (void)

Protected Attributes

WriteStreamwriteStream

Constructor & Destructor Documentation

Core::ReadAppendStream::ReadAppendStream SequenceableCollection collection  ) 
 

Definition at line 32 of file ReadAppendStream.cc.

References writeStream.

00033   : ReadStream(collection)
00034 {
00035     writeStream = new WriteStream(collection);
00036 }


Member Function Documentation

String * Core::ReadAppendStream::className void   )  const [virtual]
 

Answer receiver class name.

Because there isn't any standard way to obtain class name this method comes to place.

Every class should rewrite this method but many didn't (yet).

Reimplemented from Core::ReadStream.

Definition at line 39 of file ReadAppendStream.cc.

00040 {
00041     return new String("ReadAppendStream");
00042 }

void Core::ReadAppendStream::close void   )  [virtual]
 

Reimplemented from Core::Stream.

Definition at line 97 of file ReadAppendStream.cc.

References Core::Stream::close(), and writeStream.

00098 {
00099     writeStream->close();
00100     ReadStream::close();
00101 }

void Core::ReadAppendStream::commit void   )  [virtual]
 

Reimplemented from Core::Stream.

Definition at line 45 of file ReadAppendStream.cc.

References Core::Stream::commit(), and writeStream.

00046 {
00047     writeStream->commit();
00048 }

void Core::ReadAppendStream::flush void   )  [virtual]
 

Reimplemented from Core::ReadStream.

Definition at line 50 of file ReadAppendStream.cc.

References Core::WriteStream::flush(), and writeStream.

00051 {
00052     writeStream->flush();
00053 }

bool Core::ReadAppendStream::isWritable void   )  [virtual]
 

Reimplemented from Core::ReadStream.

Definition at line 104 of file ReadAppendStream.cc.

00105 {
00106     return true;
00107 }

void Core::ReadAppendStream::nextPut const char  object  )  [virtual]
 

Reimplemented from Core::Stream.

Definition at line 61 of file ReadAppendStream.cc.

References nextPut(), and Core::Character::value().

00062 {
00063     nextPut(Character::value(object));
00064 }

void Core::ReadAppendStream::nextPut Object object  )  [virtual]
 

Reimplemented from Core::ReadStream.

Definition at line 55 of file ReadAppendStream.cc.

References Core::WriteStream::nextPut(), Core::PositionableStream::position(), Core::PositionableStream::read_limit, and writeStream.

Referenced by nextPut().

00056 {
00057     writeStream->nextPut(object);
00058     read_limit = writeStream->position();
00059 }

void Core::ReadAppendStream::nextPutAll const SequenceableCollection collection,
long  size,
long  startIndex
[virtual]
 

Reimplemented from Core::InternalStream.

Definition at line 77 of file ReadAppendStream.cc.

References Core::InternalStream::nextPutAll(), Core::PositionableStream::position(), Core::PositionableStream::read_limit, and writeStream.

00079 {
00080     writeStream->nextPutAll(collection, size, startIndex);
00081     read_limit = writeStream->position();
00082 }

void Core::ReadAppendStream::nextPutAll const char *  string  )  [virtual]
 

Reimplemented from Core::InternalStream.

Definition at line 72 of file ReadAppendStream.cc.

References nextPutAll().

00073 {
00074     nextPutAll(new String(string));
00075 }

void Core::ReadAppendStream::nextPutAll const Collection collection  )  [virtual]
 

Reimplemented from Core::InternalStream.

Definition at line 66 of file ReadAppendStream.cc.

References Core::InternalStream::nextPutAll(), Core::PositionableStream::position(), Core::PositionableStream::read_limit, and writeStream.

Referenced by nextPutAll().

00067 {
00068     writeStream->nextPutAll(collection);
00069     read_limit = writeStream->position();
00070 }

void Core::ReadAppendStream::position long  position  )  [virtual]
 

Reimplemented from Core::PositionableStream.

Definition at line 85 of file ReadAppendStream.cc.

References Core::PositionableStream::position(), and writeStream.

00086 {
00087     writeStream->position(position);
00088     ReadStream::position(position);
00089 }

long Core::ReadAppendStream::writePosition void   )  [virtual]
 

Definition at line 91 of file ReadAppendStream.cc.

References Core::PositionableStream::position(), and writeStream.

00092 {
00093     return writeStream->position();
00094 }


Member Data Documentation

WriteStream* Core::ReadAppendStream::writeStream [protected]
 

Definition at line 39 of file ReadAppendStream.h.

Referenced by close(), commit(), flush(), nextPut(), nextPutAll(), position(), ReadAppendStream(), and writePosition().


The documentation for this class was generated from the following files:
Generated on Mon Nov 27 09:51:51 2006 for Smalltalk like C++ Class Library by  doxygen 1.4.2