CMMFBuffer Class Reference

#include <mmf/server/mmfbuffer.h>

Link against: mmfserverbaseclasses.lib

class CMMFBuffer : public CBase

Inherits from

Detailed Description

Abstract representation of a buffer to contain multimedia data.

Member Attribute Documentation

iFrameNumber

TUint iFrameNumber[protected]

The frame number.

iLastBuffer

TBool iLastBuffer[protected]

Indicates if this is the last buffer. ETrue if it is.

iPosition

TUint iPosition[protected]

Used to store the current read/write position. Required when the codec and data path may have to read and write the buffer in more than one pass.

iRequestSize

TInt iRequestSize[protected]

Stores Request size, needed for dynamic buffer length.

iStatus

TBufferStatus iStatus[protected]

The current buffer status.

See also: enum TBufferStatus

iTimeToPlay

TTimeIntervalMicroSeconds iTimeToPlay[protected]

The buffer timestamp, in microseconds.

iType

TUid iType[protected]

The buffer type.

Constructor & Destructor Documentation

CMMFBuffer ( TUid )

CMMFBuffer(TUidaType)[protected, inline]

~CMMFBuffer ( )

~CMMFBuffer()[inline, virtual]

Destructor.

Member Function Documentation

BufferSize ( )

TUint BufferSize()const [pure virtual]

Returns the size of the data in the buffer.

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

Return Value
The buffer size.

FrameNumber ( )

TUint FrameNumber()const [inline]

Returns the frame number.

Return Value
The frame number.

IsFileServerSafe ( TUid )

IMPORT_C TBoolIsFileServerSafe(TUidaUid)[static]

Static method which returns ETrue if the buffer UID is a buffer that is safe to be used with the file server. If the buffer type is not safe to be used with the file server, then the client would need to copy the contents of the buffer, prior to passing it onto the file server.

This implementation assumes the CMMFPtrBuffer is safe for file server copy. If this is not the case then remove the PtrBuffer set to ETrue.

Parameters
aUidThe UID of the CMMFBuffer to be checked for support.
Return Value
The buffer size.

IsSupportedDataBuffer ( TUid )

IMPORT_C TBoolIsSupportedDataBuffer(TUidaUid)[static]

Static method which returns ETrue if the buffer UID is a supported CMMFDataBuffer type.

Note: If the buffer is not a CMMFDataBuffer this method should return EFalse.

Parameters
aUidThe UID of the CMMFBuffer to be checked for support.
Return Value
The buffer size.

LastBuffer ( )

TBool LastBuffer()const [inline]

Tests whether the buffer is the last buffer.

Return Value
A boolean indicating if the buffer is the last one. ETrue if it is the last buffer, EFalse otherwise.

NextFrame ( )

voidNextFrame()[inline]

Sets the buffer as the next frame.

Position ( )

TUint Position()const [inline, virtual]

Returns the current buffer read/write position. Used as read/write position on a buffer where a codec may need several passes on the same buffer.

Return Value
The buffer's number.

RequestSize ( )

TInt RequestSize()const [inline, virtual]

Returns the size of data processed by sink or data needed by source.

Return Value
The size of data

SetFrameNumber ( TUint )

voidSetFrameNumber(TUintaFrame)[inline]

Sets the frame number. This is used for repositioning.

Parameters
aFrameThe frame number.

SetLastBuffer ( TBool )

voidSetLastBuffer(TBoolaLastBuffer)[inline]

Sets the buffer as the last buffer.

Parameters
aLastBufferA boolean indicating if the buffer is the last buffer. ETrue if it is the last buffer, EFalse otherwise.

SetPosition ( TUint )

voidSetPosition(TUintaPosition)[inline, virtual]

Sets the current buffer read/write position. Used as read/write position on a buffer where a codec may need several passes on the same buffer.

Parameters
aPositionThe buffer's number.

SetStatus ( TBufferStatus )

voidSetStatus(TBufferStatusaStatus)[inline, virtual]

Sets the buffer's status.

Parameters
aStatusThe buffer's status.

SetTimeToPlay ( TTimeIntervalMicroSeconds )

voidSetTimeToPlay(TTimeIntervalMicroSecondsaTime)[inline]

Sets the buffer timestamp, in microseconds.

Parameters
aTimeThe buffer timestamp, in microseconds.

Status ( )

TBufferStatus Status()[inline]

Returns the buffer's status.

Return Value
The buffer's status.

TimeToPlay ( )

TTimeIntervalMicroSeconds TimeToPlay()const [inline]

Returns the buffer timestamp, in microseconds.

Return Value
The buffer timestamp, in microseconds.

Type ( )

TUid Type()const [inline]

Returns the buffer type.

Return Value
The buffer type.