#include <mmf/server/mmfdatabuffer.h>
class CMMFPtrBuffer : public CMMFDataBuffer |
Public Member Functions | |
---|---|
~CMMFPtrBuffer() | |
virtual TUint | BufferSize() |
virtual TDes8 & | Data() |
virtual const TDesC8 & | Data() |
IMPORT_C CMMFPtrBuffer * | NewL() |
IMPORT_C CMMFPtrBuffer * | NewL(const TPtr8 &) |
virtual void | SetPosition(TUint) |
IMPORT_C void | SetPtr(const TPtr8 &) |
virtual void | SetRequestSizeL(TInt) |
virtual void | SetStatus(TBufferStatus) |
Inherited Attributes | |
---|---|
CMMFBuffer::iFrameNumber | |
CMMFBuffer::iLastBuffer | |
CMMFBuffer::iPosition | |
CMMFBuffer::iRequestSize | |
CMMFBuffer::iStatus | |
CMMFBuffer::iTimeToPlay | |
CMMFBuffer::iType |
This class is a wrapper class intended to provide support for shared I/O buffers under EKA2 This class, unlike other data buffers does not own memory - rather it contains a pointer to already allocated memory The purpose of this class is that components such as codecs can use CMMFDataBuffers transparently without having to be concerned with whether the buffer is a standard buffer or memory residing in shared I/O
Users of this class need to be very careful when using buffers of this type. It cannot be assumed that a buffer of this type can be written/read by any process other than the current one - example - handing CMMFPtrBuffer to the file server may not work since the file server's process may not have access to write data buffer.
IMPORT_C | ~CMMFPtrBuffer | ( | ) |
Destructor.
Destructor does no deletion, as this buffer class does not own the memory.
TUint | BufferSize | ( | ) | const [virtual] |
Reimplemented from CMMFDataBuffer::BufferSize()const
Returns the actual data size (ie. not the max length) of the data contained in the CMMFPtrBuffer.
Returns: The size in bytes of the data contained in the CMMFPtrBuffer.
TDes8 & | Data | ( | ) | [virtual] |
Reimplemented from CMMFDataBuffer::Data()
Returns a descriptor to the data contained in the CMMFPtrBuffer.
Returns: A reference to a TPtr containing the CMMFPtrBuffer data.
const TDesC8 & | Data | ( | ) | const [virtual] |
Reimplemented from CMMFDataBuffer::Data()const
Returns a descriptor to the data contained in the CMMFPtrBuffer.
Returns: A const reference to a TPtr containing the CMMFPtrBuffer data.
IMPORT_C CMMFPtrBuffer * | NewL | ( | ) | [static] |
Reimplemented from CMMFDataBuffer::NewL()
Function to instantiate a CMMFPtrBuffer. This NewL creates an unititalised CMMFPtrBuffer.
Returns: A pointer to a new CMMFPtrBuffer.
IMPORT_C CMMFPtrBuffer * | NewL | ( | const TPtr8 & | aPtr | ) | [static] |
Function to instantiate a CMMFPtrBuffer. This NewL creates a CMMFPtrBuffer which owns a TPtr8.
Parameter | Description |
---|---|
aPtr | A reference to a TPtr containing the CMMFPtrBuffer data. |
Returns: A pointer to a new CMMFPtrBuffer.
void | SetPosition | ( | TUint | aPosition | ) | [virtual] |
Reimplemented from CMMFBuffer::SetPosition(TUint)
Sets the position.
This function is used by components (eg. codecs) which read data from a buffer and wish to store a read position marker for further reads.
Note: The position cannot exceed the size of the actual data not the maximum length.
Parameter | Description |
---|---|
aPosition | The position. |
void | SetRequestSizeL | ( | TInt | aSize | ) | [virtual] |
Reimplemented from CMMFDataBuffer::SetRequestSizeL(TInt)
Sets the request size.
This method is used in cases where a component (eg. a data source) may not be able or be desirable to write to the entire max length of the buffer (eg. variable bit rate codecs). In this case, the SetRequestSizeL() can be set which can be read by the RequestSize() function in the component so that it knows to only write data upto the requested size and not fill the buffer up to its maximum length.
Parameter | Description |
---|---|
aSize | The request size. |
void | SetStatus | ( | TBufferStatus | aStatus | ) | [virtual] |
Reimplemented from CMMFBuffer::SetStatus(TBufferStatus)
Overriden method to set the status. Resets the data size to 0 when the buffer becomes available.
Parameter | Description |
---|---|
aStatus | The buffer status. See enum TBufferStatus. |