Location:
mmfbuffer.h
Link against: mmfserverbaseclasses.lib
class CMMFBuffer : public CBase;
Abstract representation of a buffer to contain multimedia data.
CBase
- Base class for all classes to be instantiated on the heap
CMMFBuffer
- Abstract representation of a buffer to contain multimedia data
Defined in CMMFBuffer
:
BufferSize()
, CMMFBuffer()
, FrameNumber()
, IsFileServerSafe()
, IsSupportedDataBuffer()
, LastBuffer()
, NextFrame()
, Position()
, RequestSize()
, SetFrameNumber()
, SetLastBuffer()
, SetPosition()
, SetStatus()
, SetTimeToPlay()
, Status()
, TimeToPlay()
, Type()
, iFrameNumber
, iLastBuffer
, iPosition
, iRequestSize
, iStatus
, iTimeToPlay
, iType
, ~CMMFBuffer()
Inherited from CBase
:
Delete()
,
Extension_()
,
operator new()
static IMPORT_C TBool IsSupportedDataBuffer(TUid aUid);
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.
|
|
static IMPORT_C TBool IsFileServerSafe(TUid aUid);
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.
|
|
inline virtual void SetStatus(TBufferStatus aStatus);
Sets the buffer's status.
|
inline TBufferStatus Status();
Returns the buffer's status.
|
virtual TUint BufferSize() const=0;
Returns the size of the data in the buffer.
This is a virtual function that each derived class must implement.
|
inline TTimeIntervalMicroSeconds TimeToPlay() const;
Returns the buffer timestamp, in microseconds.
|
inline void SetTimeToPlay(TTimeIntervalMicroSeconds aTime);
Sets the buffer timestamp, in microseconds.
|
inline TUint FrameNumber() const;
Returns the frame number.
|
inline void SetFrameNumber(TUint aFrame);
Sets the frame number. This is used for repositioning.
|
inline virtual void SetPosition(TUint aPosition);
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.
|
inline virtual TUint Position() const;
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.
|
inline virtual TInt RequestSize() const;
Returns the size of data processed by sink or data needed by source.
|
inline void SetLastBuffer(TBool aLastBuffer);
Sets the buffer as the last buffer.
|
inline TBool LastBuffer() const;
Tests whether the buffer is the last buffer.
|
protected: TTimeIntervalMicroSeconds iTimeToPlay;
The buffer timestamp, in microseconds.
protected: TUint iPosition;
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.
protected: TBool iLastBuffer;
Indicates if this is the last buffer. ETrue if it is.