Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

SH::Data Class Reference
[StreamHandlers]

#include <SHData.h>

Inheritance diagram for SH::Data:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 Data ()
virtual ~Data ()
virtual RPtr< Dataclone ()=0
virtual size_t getByteSize () const =0
virtual bool isPlainData () const =0
virtual bool isOrderedData () const =0
 Like isPlainData, but for SHOrderedData*.
virtual bool isRTPData () const =0
 Like isPlainData, but for MNRTPPacket*.
virtual bool isDummyData () const =0
 Like isPlainData, but for DummyData*.
virtual bool isSHRTPData () const =0
 Like isPlainData( ), but for SHRTPData*.
void ref ()
void unref ()
SHPlainDataasPlainData ()
SHOrderedDataasOrderedData ()
MNRTPPacketasRTPData ()
DummyDataasDummyData ()
OrderedDummyDataasOrderedDummyData ()
SHRTPDataasSHRTPData ()

Detailed Description

The multimedia data that is flowing from through the stream handlers has an abstract base class Data. Data items themselves are replicated in multicast stream handlers using their clone() method. The last instance is handed over to a downstream stream handler. Stream handlers interpret the contained data in their own ways.


Constructor & Destructor Documentation

SH::Data::Data  )  [inline]
 

virtual SH::Data::~Data  )  [inline, virtual]
 

Destructor


Member Function Documentation

virtual RPtr<Data> SH::Data::clone  )  [pure virtual]
 

Make a logical copy of the Data item. This logical copy may be a physical copy as well, or a reference count, or anything else that works.

Implemented in MNRTPPacket, SH::DummyData, SH::OrderedDummyData, SH::SHOrderedData, SH::SHPlainData, and SH::SHRTPData.

virtual size_t SH::Data::getByteSize  )  const [pure virtual]
 

The number of bytes that the payload of this data packet represents. In case of RTP, without the header, in case of dummy data, the virtually present data.

Implemented in MNRTPPacket, SH::DummyData, SH::SHPlainData, and SH::SHRTPData.

virtual bool SH::Data::isDummyData  )  const [pure virtual]
 

Like isPlainData, but for DummyData*.

Implemented in MNRTPPacket, SH::DummyData, SH::SHPlainData, and SH::SHRTPData.

virtual bool SH::Data::isOrderedData  )  const [pure virtual]
 

Like isPlainData, but for SHOrderedData*.

Implemented in MNRTPPacket, SH::DummyData, SH::OrderedDummyData, SH::SHOrderedData, SH::SHPlainData, and SH::SHRTPData.

virtual bool SH::Data::isPlainData  )  const [pure virtual]
 

This virtual function can be called to test whether a Data* is also a SHPlainData*. If it is, we can do a safe typecast using the asPlainData() function.

Implemented in MNRTPPacket, SH::DummyData, SH::SHPlainData, and SH::SHRTPData.

virtual bool SH::Data::isRTPData  )  const [pure virtual]
 

Like isPlainData, but for MNRTPPacket*.

Implemented in MNRTPPacket, SH::DummyData, SH::SHPlainData, and SH::SHRTPData.

virtual bool SH::Data::isSHRTPData  )  const [pure virtual]
 

Like isPlainData( ), but for SHRTPData*.

Implemented in MNRTPPacket, SH::DummyData, SH::SHPlainData, and SH::SHRTPData.

void SH::Data::ref  )  [inline]
 

void SH::Data::unref  )  [inline]
 

Return the current item to its own memory pool. After a call to release(), all pointers to the Data item are invalid, since release() may be implemented as "delete this;".


The documentation for this class was generated from the following file:
Generated on Sun Mar 6 13:36:34 2005 for Komssys by doxygen 1.3.8