Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
P6R::p6IDataStream Interface Referenceabstract

#include <p6datastream.h>

Inherits P6R::p6ICom.

Public Member Functions

virtual P6INT32 addref (void)=0
 
virtual P6R::P6ERR beginStream (void)=0
 
virtual P6R::P6ERR endStream (void)=0
 
virtual P6R::P6ERR processStream (const P6VOID *pData, P6UINT32 cData)=0
 
virtual P6R::P6ERR queryInterface (const P6R::P6IID &iid, P6VOID **ppIface)=0
 
virtual P6INT32 release (void)=0
 

Detailed Description

This interface is implmented by components that support receiving streamed data.

Components that support chaining streams will also usually take a pointer to a P6R::p6IDataStream interface in their initialze method.

Chaining streams provides a powerful mechanism for performing multiple transformations on data. The decision of which tranformations to perform can easily be done at runtime using this mechanism.

Data stream implementation can be broken down into two types: filters and sinks.

Sinks are usually things like files or sockets that provide a stream interface to write out to these devices,

Filters transform the stream in some fashion and write the transformed data out to another filter or sink using the p6IDataStream interface. Examples of filters might be a base64 transcoder or an encryption component.

Definition at line 44 of file p6datastream.h.


The documentation for this interface was generated from the following file: