#include <pv_plugin_interfaces.h>
Inheritance diagram for MPVDataSourceBase:
Public Methods | |
MPVDataSourceBase (TUid aType) | |
virtual | ~MPVDataSourceBase () |
virtual void | FillBufferL (CMMFBuffer *aBuffer, MPVDataSinkBase *aConsumer, TMediaId)=0 |
virtual void | BufferEmptiedL (CMMFBuffer *aBuffer)=0 |
virtual TBool | CanCreateSourceBuffer ()=0 |
virtual CMMFBuffer * | CreateSourceBufferL (TMediaId, TBool &) |
virtual CMMFBuffer * | CreateSourceBufferL (TMediaId, CMMFBuffer &, TBool &) |
virtual TInt | SourceThreadLogon (MAsyncEventHandler &) |
virtual void | SourceThreadLogoff () |
virtual TInt | SourcePrimeL () |
virtual TInt | SourcePlayL () |
virtual TInt | SourcePauseL () |
virtual TInt | SourceStopL () |
Base class for data sources
|
|
|
|
|
Method called by a data sink to pass back an emptied buffer to the source This is a pure virtual function that each derived class must implement. This method is used as the callback when the data source actively requests a consumer ie a data sink to empty a buffer by calling the data sinks EmptyBufferL. When the data source gets this callback it knows that the buffer has been emptied and can be reused
|
|
Method to indicate whether the data source can create a buffer. This is a pure virtual function that each derived class must implement.
|
|
Returns a buffer created by the data source This is a virtual function that a derived class can implement. This can be used in preference to the above CreateSourceBufferL method in cases where the source buffer creation has a dependancy on the sink buffer
|
|
Returns a buffer created by the data source This is a pure virtual function that each derived class must implement.
|
|
Method called by a MDataSink to request the data source to fill aBuffer with data. This is a pure virtual function that each derived class must implement. This method is used when a data source is passively waiting for requests from a consumer ie a data sink to fill a buffer. The data source must call the BufferFilledL member on aConsumer when it has filled the buffer with data - the data source can either make this callback synchronously or asynchronously.
|
|
Method to 'pause' the data source This is a virtual function that a derrived data source can implement if any data source specific action is required to 'pause' |
|
Method to 'play' the data source This is a virtual function that a derrived data source can implement if any data source specific action is required prior to 'playing'ie the start of data transfer |
|
Method to 'prime' the data source This is a virtual function that a derrived data source can implement if any data source specific 'priming' is required |
|
Method to 'stop' the data source This is a virtual function that a derrived data source can implement if any data source specific action is required to 'stop' |
|
Method to 'logoff' the data source from the same thread that source supplies data in. This method may be required as the thread that the data source is deleted in may not be the same thread that the data transfer took place in. Therefore any thread specific releasing of resources needs to be performed in the SourceThreadLogoff rather than in the destructor This is a virtual function that a derrived data source can implement if any thread specific releasing of resources is required. |
|
Method to 'logon' the data source to the same thread that source will be supplying data in. This method may be required as the thread that the data source was created in is not always the same thread that the data transfer will take place in. Therefore any thread specific initialisation needs to be performed in the SourceThreadLogon rather than in the creation of the data source. This is a virtual function that a derrived data source can implement if any thread specific initialisation is required and/or the data source can create any asynchronous events.
|