Sourceforge.net - The VCF's Project Host
   The VCF Website Home   |   Online Discussion Forums   |   Sourceforge.net Project Page   

VCF::Stream Class Reference

Stream interface defines a core set of funcationality for streams in the Visual Component Framework derived Streams should support "stream chaining", the ability of the stream constructor to support an incoming stream from someother stream object. More...

#include <vcf/FoundationKit/Stream.h>

Inheritance diagram for VCF::Stream:

VCF::InputStream VCF::OutputStream VCF::BasicInputStream VCF::FileInputStream VCF::TCPSocketInputStream VCF::TextInputStream VCF::UDPSocketInputStream VCF::VariantDataInputStream VCF::VFFInputStream VCF::BasicOutputStream VCF::FileOutputStream VCF::TCPSocketOutputStream VCF::TextOutputStream VCF::UDPSocketOutputStream VCF::VariantDataOutputStream VCF::VFFOutputStream List of all members.

Public Member Functions

virtual ~Stream ()
virtual void seek (const uint64 &offset, const SeekType &offsetFrom)=0
virtual uint64 getSize ()=0
 returns the size of the stream.
virtual uchargetBuffer ()=0
 returns a pointer to the buffer that holds the stream memory
virtual uint64 getCurrentSeekPos ()=0
 this is a global offset from the beggining of the stream

Detailed Description

Stream interface defines a core set of funcationality for streams in the Visual Component Framework derived Streams should support "stream chaining", the ability of the stream constructor to support an incoming stream from someother stream object.

For example:

    MyStream s = new MyStream( new MemStream( new GZIPStream( SomeBigDataObject ) ) );
assuming SomeBigDataObject supports Persistable, then the object is read into the GZIPStream and compressed, the compressed bytes are sent to the Memory stream, and then this is sent to MyStream.

Streams are meant as alternative to the C++ streams, though in some cases they may extend the standard C++ stream library.

Author:
Jim Crafton
Version:
1.0


Constructor & Destructor Documentation

virtual VCF::Stream::~Stream  )  [inline, virtual]
 


Member Function Documentation

virtual uchar* VCF::Stream::getBuffer  )  [pure virtual]
 

returns a pointer to the buffer that holds the stream memory

Implemented in VCF::BasicInputStream, VCF::BasicOutputStream, VCF::FileInputStream, VCF::FileOutputStream, VCF::TextInputStream, VCF::TextOutputStream, VCF::VariantDataInputStream, VCF::VariantDataOutputStream, VCF::VFFInputStream, VCF::VFFOutputStream, VCF::XMLDictInputStream, VCF::XMLDictOutputStream, VCF::TCPSocketInputStream, VCF::TCPSocketOutputStream, VCF::UDPSocketInputStream, and VCF::UDPSocketOutputStream.

virtual uint64 VCF::Stream::getCurrentSeekPos  )  [pure virtual]
 

this is a global offset from the beggining of the stream

Implemented in VCF::BasicInputStream, VCF::BasicOutputStream, VCF::FileInputStream, VCF::FileOutputStream, VCF::TextInputStream, VCF::TextOutputStream, VCF::VariantDataInputStream, VCF::VariantDataOutputStream, VCF::VFFInputStream, VCF::VFFOutputStream, VCF::XMLDictInputStream, VCF::XMLDictOutputStream, VCF::TCPSocketInputStream, VCF::TCPSocketOutputStream, VCF::UDPSocketInputStream, and VCF::UDPSocketOutputStream.

virtual uint64 VCF::Stream::getSize  )  [pure virtual]
 

returns the size of the stream.

The size represents the number of bytes that have been written, or read to/from the stream

Implemented in VCF::BasicInputStream, VCF::BasicOutputStream, VCF::FileInputStream, VCF::FileOutputStream, VCF::TextInputStream, VCF::TextOutputStream, VCF::VariantDataInputStream, VCF::VariantDataOutputStream, VCF::VFFInputStream, VCF::VFFOutputStream, VCF::XMLDictInputStream, VCF::XMLDictOutputStream, VCF::TCPSocketInputStream, VCF::TCPSocketOutputStream, VCF::UDPSocketInputStream, and VCF::UDPSocketOutputStream.

virtual void VCF::Stream::seek const uint64 offset,
const SeekType offsetFrom
[pure virtual]
 

Implemented in VCF::BasicInputStream, VCF::BasicOutputStream, VCF::FileInputStream, VCF::FileOutputStream, VCF::TextInputStream, VCF::TextOutputStream, VCF::VariantDataInputStream, VCF::VariantDataOutputStream, VCF::VFFInputStream, VCF::VFFOutputStream, VCF::XMLDictInputStream, VCF::XMLDictOutputStream, VCF::TCPSocketInputStream, VCF::TCPSocketOutputStream, VCF::UDPSocketInputStream, and VCF::UDPSocketOutputStream.


The documentation for this class was generated from the following file:
   Comments or Suggestions?    License Information