RMMFDataPathProxy Class Reference

#include <mmf/server/mmfdatapathproxy.h>

Link against: mmfserverbaseclasses.lib

class RMMFDataPathProxy

Detailed Description

Proxy class used to create a datapath in a new subthread.

Constructor & Destructor Documentation

RMMFDataPathProxy ( )

RMMFDataPathProxy()[inline]

Constuctor.

Member Function Documentation

AddDataSink ( MDataSink * )

IMPORT_C TIntAddDataSink(MDataSink *aSink)

Specify the data sink for this datapath.

If the source already exists, this function tries to establish a connection between the source and the sink. Note that only one data sink can be added to the datapath.

Since
7.0s
Parameters
aSinkA pointer to the data sink.
Return Value
An error code indicating if the function call was successful. KErrNone on success, otherwise another of the system-wide error codes.

AddDataSource ( MDataSource * )

IMPORT_C TIntAddDataSource(MDataSource *aSource)

Specify the data source for this datapath.

If the sink already exists, this function tries to establish a connection between the source and sink. Note that only one data source can be added to the datapath.

Since
7.0s
Parameters
aSourceA pointer to the data source.
Return Value
An error code indicating if the function call was successful. KErrNone on success, otherwise another of the system-wide error codes.

ClearPlayWindow ( )

IMPORT_C TIntClearPlayWindow()

Removes a previously defined play window.

Since
7.0s
Return Value
An error code indicating if the function call was successful. KErrNone on success, otherwise another of the system-wide error codes.

Close ( )

IMPORT_C voidClose()

Deletes the datapath and shuts down the datapath proxy thread.

Calls RMMFSubThreadBase::Shutdown(). This function will not return until the subthread has exited, or a timeout has occurred.

Since
7.0s

CreateSubThread ( )

IMPORT_C TIntCreateSubThread()

Creates a subthread that will contain the datapath.

Since
7.0s
Return Value
An error code indicating if the function call was successful. KErrNone on success, otherwise another of the system-wide error codes.

GetPosition ( TTimeIntervalMicroSeconds & )

IMPORT_C TIntGetPosition(TTimeIntervalMicroSeconds &aPosition)const

Gets the current position of the datapath in units of time.

Since
7.0s
Parameters
aPositionThe current position in micro seconds will be copied into this variable.
Return Value
An error code indicating if the function call was successful. KErrNone on success, otherwise another of the system-wide error codes.

LoadDataPath ( )

IMPORT_C TIntLoadDataPath()

Load the datapath in the new thread. Use this method if the codec UID is not known and there is no datapath ambiguity, ie. only one datapath is possible.

Since
7.0s
Return Value
An error code indicating if the function call was successful. KErrNone on success, otherwise another of the system-wide error codes.

LoadDataPath ( TMediaId )

IMPORT_C TIntLoadDataPath(TMediaIdaMediaId)

Load the datapath in the new thread.

Use this method if the codec UID is not known but the TMediaId can be used to select which codec to use.

Since
7.0s
Parameters
aMediaIdThe type of media to be handled by this datapath.
Return Value
An error code indicating if the function call was successful. KErrNone on success, otherwise another of the system-wide error codes.

LoadDataPath ( TUid )

IMPORT_C TIntLoadDataPath(TUidaCodecUid)

Load the datapath in the new thread.

Use this method if the codec UID is known and there is no datapath ambiguity, ie. only one datapath is possible.

Since
7.0s
Parameters
aCodecUidThe UID of the codec plugin to be used by the datapath.
Return Value
An error code indicating if the function call was successful. KErrNone on success, otherwise another of the system-wide error codes.

LoadDataPath ( TUid, TMediaId )

IMPORT_C TIntLoadDataPath(TUidaCodecUid,
TMediaIdaMediaId
)

Loads the datapath in the new thread.

Use this method if the codec UID is known and there is datapath ambiguity. The TMediaId will be used to choose the correct path.

Since
7.0s
Parameters
aCodecUidThe UID of the codec plugin to be used by the datapath.
aMediaIdThe type of media to be handled by this datapath.
Return Value
An error code indicating if the function call was successful. KErrNone on success, otherwise another of the system-wide error codes.

Pause ( )

IMPORT_C TIntPause()

Pauses playing.

This function transfers the datapath from the playing into the primed state and sends KMMFErrorCategoryDataPathGeneralError to the client if an error occurs.

Since
7.0s
Return Value
An error code indicating if the function call was successful. KErrNone on success, otherwise another of the system-wide error codes.

Play ( )

IMPORT_C TIntPlay()

Transfer the datapath from the primed into the playing state.

This function starts an active scheduler play loop and can only play from the primed state.

Since
7.0s
Return Value
An error code indicating if the function call was successful. KErrNone on success, otherwise another of the system-wide error codes.

Prime ( )

IMPORT_C TIntPrime()

Transfer the datapath from the stopped into the primed state.

This function allocates buffers in preparation to play and must be called before calling PlayL().

Since
7.0s
Return Value
An error code indicating if the function call was successful. KErrNone on success, otherwise another of the system-wide error codes.

SetPlayWindow ( const TTimeIntervalMicroSeconds &, const TTimeIntervalMicroSeconds & )

IMPORT_C TIntSetPlayWindow(const TTimeIntervalMicroSeconds &aStart,
const TTimeIntervalMicroSeconds &aEnd
)

Sets the play window relative to the start of the entire clip.

Since
7.0s
Parameters
aStartThe start position in micro seconds relative to the start of the clip.
aEndThe end position in micro seconds relative to the start of the clip.
Return Value
An error code indicating if the function call was successful. KErrNone on success, otherwise another of the system-wide error codes.

SetPosition ( const TTimeIntervalMicroSeconds & )

IMPORT_C TIntSetPosition(const TTimeIntervalMicroSeconds &aPosition)

Sets the current position of the datapath in units of time.

Since
7.0s
Parameters
aPositionThe required position in micro seconds.
Return Value
An error code indicating if the function call was successful. KErrNone on success, otherwise another of the system-wide error codes.

State ( TInt & )

IMPORT_C TIntState(TInt &aState)

Gets the current datapath state.

Since
7.0s
Parameters
aStateThe current state of the datapath will be copied into this variable.
Return Value
An error code indicating if the function call was successful. KErrNone on success, otherwise another of the system-wide error codes.

Stop ( )

IMPORT_C TIntStop()

Stops playing.

This function transfers the datapath from the primed into the stopped state and resets the data path position, but does not clean up buffers. It also sends KMMFErrorCategoryDataPathGeneralError to the client if an error occurs.

Since
7.0s
Return Value
An error code indicating if the function call was successful. KErrNone on success, otherwise another of the system-wide error codes.