CMMFDescriptor Class Reference

class CMMFDescriptor : public CMMFClip

MultiMedia framework class. Represents a client side descriptor. May be source descriptor from which data is read or destination to which data is written

Inherits from

Public Member Functions
~CMMFDescriptor ()
void BufferEmptiedL ( CMMFBuffer *)
void BufferFilledL ( CMMFBuffer *)
TInt64 BytesFree ()
TBool CanCreateSinkBuffer ()
TBool CanCreateSourceBuffer ()
TBool CanUseTransferBuffer ()
CMMFBuffer * CreateSinkBufferL ( TMediaId , TBool &)
CMMFBuffer * CreateSourceBufferL ( TMediaId , TBool &)
void EmptyBufferL ( CMMFBuffer *, MDataSource *, TMediaId )
void FillBufferL ( CMMFBuffer *, MDataSink *, TMediaId )
MDataSink * NewSinkL ()
MDataSource * NewSourceL ()
void ReadBufferL ( TInt , CMMFBuffer *, TInt , MDataSink *)
void ReadBufferL ( CMMFBuffer *, TInt , MDataSink *)
void ReadBufferL ( CMMFBuffer *, TInt )
TInt SetSize ( TInt )
void SetTransferBuffer ( TBool )
TFourCC SinkDataTypeCode ( TMediaId )
TInt Size ()
TFourCC SourceDataTypeCode ( TMediaId )
void WriteBufferL ( TInt , CMMFBuffer *, TInt , MDataSource *)
void WriteBufferL ( CMMFBuffer *, TInt , MDataSource *)
void WriteBufferL ( CMMFBuffer *, TInt )
Protected Member Functions
CMMFDescriptor ()
void ConstructL (const TDesC8 &)
void ConstructSinkL (const TDesC8 &)
void ConstructSourceL (const TDesC8 &)
Private Member Functions
TInt MaxLength ()
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CMMFClip::CMMFClip(TUid,TUid)
CMMFClip::Delete()
Private Attributes
TDes8 * iDes
RThread iDesThread
TInt iOffset
TFourCC iSinkFourCC
TFourCC iSourceFourCC
TBool iUseTransferBuffer

Constructor & Destructor Documentation

CMMFDescriptor()

CMMFDescriptor ( ) [protected]

~CMMFDescriptor()

~CMMFDescriptor ( ) [virtual]

Member Functions Documentation

BufferEmptiedL(CMMFBuffer *)

void BufferEmptiedL ( CMMFBuffer * aBuffer ) [virtual]

Parameters

CMMFBuffer * aBuffer

BufferFilledL(CMMFBuffer *)

void BufferFilledL ( CMMFBuffer * aBuffer ) [virtual]

Parameters

CMMFBuffer * aBuffer

BytesFree()

TInt64 BytesFree ( ) [virtual]

Returns the amount of space available for the clip.

This is a virtual function that each derived class must implement.

CanCreateSinkBuffer()

TBool CanCreateSinkBuffer ( ) [virtual]

CanCreateSourceBuffer()

TBool CanCreateSourceBuffer ( ) [virtual]

CanUseTransferBuffer()

TBool CanUseTransferBuffer ( )

ConstructL(const TDesC8 &)

void ConstructL ( const TDesC8 & aInitData ) [protected]

Parameters

const TDesC8 & aInitData

ConstructSinkL(const TDesC8 &)

void ConstructSinkL ( const TDesC8 & aInitData ) [protected, virtual]

Parameters

const TDesC8 & aInitData

ConstructSourceL(const TDesC8 &)

void ConstructSourceL ( const TDesC8 & aInitData ) [protected, virtual]

Parameters

const TDesC8 & aInitData

CreateSinkBufferL(TMediaId, TBool &)

CMMFBuffer * CreateSinkBufferL ( TMediaId aMediaId,
TBool & aReference
) [virtual]

Parameters

TMediaId aMediaId
TBool & aReference

CreateSourceBufferL(TMediaId, TBool &)

CMMFBuffer * CreateSourceBufferL ( TMediaId aMediaId,
TBool & aReference
) [virtual]

Parameters

TMediaId aMediaId
TBool & aReference

EmptyBufferL(CMMFBuffer *, MDataSource *, TMediaId)

void EmptyBufferL ( CMMFBuffer * aBuffer,
MDataSource * aSupplier,
TMediaId aMediaId
) [virtual]

Parameters

CMMFBuffer * aBuffer
MDataSource * aSupplier
TMediaId aMediaId

FillBufferL(CMMFBuffer *, MDataSink *, TMediaId)

void FillBufferL ( CMMFBuffer * aBuffer,
MDataSink * aConsumer,
TMediaId aMediaId
) [virtual]

Parameters

CMMFBuffer * aBuffer
MDataSink * aConsumer
TMediaId aMediaId

MaxLength()

TInt MaxLength ( ) [private, inline]

NewSinkL()

MDataSink * NewSinkL ( ) [static]

NewSourceL()

MDataSource * NewSourceL ( ) [static]

ReadBufferL(TInt, CMMFBuffer *, TInt, MDataSink *)

void ReadBufferL ( TInt aLength,
CMMFBuffer * aBuffer,
TInt aPosition,
MDataSink * aConsumer
) [virtual]

Reads aLength number of bytes of data from the offset, aPosition into the buffer, aBuffer. Intended for asynchronous usage.

This is a virtual function that each derived class must implement.

Parameters

TInt aLength The number of bytes to read.
CMMFBuffer * aBuffer The buffer to read the data into.
TInt aPosition The offset from which to start reading.
MDataSink * aConsumer The sink of tha data read from the clip. Will be informed of read if not NULL.

ReadBufferL(CMMFBuffer *, TInt, MDataSink *)

void ReadBufferL ( CMMFBuffer * aBuffer,
TInt aPosition,
MDataSink * aConsumer
) [virtual]

Reads the maximum number of bytes of data from the offset, aPosition into the buffer, aBuffer. Intended for asynchronous usage.

This is a virtual function that each derived class must implement.

Parameters

CMMFBuffer * aBuffer The buffer to read the data into.
TInt aPosition The offset from which to start reading.
MDataSink * aConsumer The sink of tha data read from the clip. Will be informed of read if not NULL.

ReadBufferL(CMMFBuffer *, TInt)

void ReadBufferL ( CMMFBuffer * aBuffer,
TInt aPosition
) [virtual]

Reads the maximum number of bytes of data from the offset, aPosition into the buffer, aBuffer. Intended for synchronous usage.

This is a virtual function that each derived class must implement.

Parameters

CMMFBuffer * aBuffer The buffer to read the data into.
TInt aPosition The offset from which to start reading.

SetSize(TInt)

TInt SetSize ( TInt aSize ) [virtual]

Sets the size of the clip. This should be overriden in the derived classes, the default version returns KErrNotSupported.

Parameters

TInt aSize The size of the clip.

SetTransferBuffer(TBool)

void SetTransferBuffer ( TBool aTBuffer )

Parameters

TBool aTBuffer

SinkDataTypeCode(TMediaId)

TFourCC SinkDataTypeCode ( TMediaId aMediaId ) [virtual]

Parameters

TMediaId aMediaId

Size()

TInt Size ( ) [virtual]

Returns the size of the clip in bytes.

This is a virtual function that each derived class must implement.

SourceDataTypeCode(TMediaId)

TFourCC SourceDataTypeCode ( TMediaId aMediaId ) [virtual]

Parameters

TMediaId aMediaId

WriteBufferL(TInt, CMMFBuffer *, TInt, MDataSource *)

void WriteBufferL ( TInt aLength,
CMMFBuffer * aBuffer,
TInt aPosition,
MDataSource * aSupplier
) [virtual]

Writes aLength number of bytes of data from the offset, aPosition from the buffer, aBuffer. Intended for asynchronous usage.

This is a virtual function that each derived class must implement.

Parameters

TInt aLength The number of bytes to write.
CMMFBuffer * aBuffer The buffer to write the data into.
TInt aPosition The offset from which to start writing.
MDataSource * aSupplier The source of the data writen to the clip. Will be informed of write if not NULL.

WriteBufferL(CMMFBuffer *, TInt, MDataSource *)

void WriteBufferL ( CMMFBuffer * aBuffer,
TInt aPosition,
MDataSource * aSupplier
) [virtual]

Writes the maximum number of bytes of data from the offset, aPosition from the buffer, aBuffer. Intended for asynchronous usage.

This is a virtual function that each derived class must implement.

Parameters

CMMFBuffer * aBuffer The buffer to write the data into.
TInt aPosition The offset from which to start writing.
MDataSource * aSupplier The source of the data writen to the clip. Will be informed of write if not NULL.

WriteBufferL(CMMFBuffer *, TInt)

void WriteBufferL ( CMMFBuffer * aBuffer,
TInt aPosition
) [virtual]

Writes the maximum number of bytes of data from the offset, aPosition from the buffer, aBuffer. Intended for synchronous usage.

This is a virtual function that each derived class must implement.

Parameters

CMMFBuffer * aBuffer The buffer to write the data into.
TInt aPosition The offset from which to start writing.

Member Data Documentation

TDes8 * iDes

TDes8 * iDes [private]

RThread iDesThread

RThread iDesThread [private]

TInt iOffset

TInt iOffset [private]

TFourCC iSinkFourCC

TFourCC iSinkFourCC [private]

TFourCC iSourceFourCC

TFourCC iSourceFourCC [private]

TBool iUseTransferBuffer

TBool iUseTransferBuffer [private]