omxilcomp/omxilaudioemulator/pcmrenderer/src/omxilpcmrendererprocessingfunction.h
author hgs
Thu, 14 Oct 2010 10:22:53 +0100
changeset 4 46e224560be8
parent 1 e0d606d6e3b1
permissions -rw-r--r--
2010wk42
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     1
/*
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     2
* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     3
* All rights reserved.
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     4
* This component and the accompanying materials are made available
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     6
* which accompanies this distribution, and is available
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     8
*
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     9
* Initial Contributors:
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    11
*
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    12
* Contributors:
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    13
*
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    14
* Description:
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    15
*
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    16
*/
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    17
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    18
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    19
/**
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    20
 @file
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    21
 @internalComponent
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    22
*/
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    23
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    24
#ifndef OMXILPCMRENDERERPROCESSINGFUNCTION_H
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    25
#define OMXILPCMRENDERERPROCESSINGFUNCTION_H
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    26
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    27
#include "omxilpcmrendererconst.h"
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    28
#include <openmax/il/common/omxilprocessingfunction.h>
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    29
#include <e32msgqueue.h> 
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    30
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    31
// Forward declarations
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    32
class MOmxILClockComponentCmdsIf;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    33
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    34
NONSHARABLE_CLASS(COmxILPcmRendererProcessingFunction) :
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    35
	public COmxILProcessingFunction
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    36
	{
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    37
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    38
public:
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    39
	static COmxILPcmRendererProcessingFunction* NewL(
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    40
		MOmxILCallbackNotificationIf& aCallbacks,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    41
		MOmxILClockComponentCmdsIf& aClientClockPort);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    42
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    43
	~COmxILPcmRendererProcessingFunction();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    44
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    45
	OMX_ERRORTYPE StateTransitionIndication(TStateIndex aNewState);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    46
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    47
	OMX_ERRORTYPE BufferFlushingIndication(TUint32 aPortIndex,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    48
										   OMX_DIRTYPE aDirection);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    49
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    50
	OMX_ERRORTYPE ParamIndication(OMX_INDEXTYPE aParamIndex,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    51
									  const TAny* apComponentParameterStructure);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    52
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    53
	OMX_ERRORTYPE ConfigIndication(OMX_INDEXTYPE aConfigIndex,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    54
									   const TAny* apComponentConfigStructure);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    55
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    56
	OMX_ERRORTYPE BufferIndication(
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    57
		OMX_BUFFERHEADERTYPE* apBufferHeader,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    58
		OMX_DIRTYPE aDirection);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    59
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    60
	OMX_ERRORTYPE MediaTimeIndication(const OMX_TIME_MEDIATIMETYPE& aMediaTimeType);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    61
	
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    62
	OMX_BOOL BufferRemovalIndication(
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    63
		OMX_BUFFERHEADERTYPE* apBufferHeader,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    64
		OMX_DIRTYPE aDirection);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    65
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    66
	TInt GetBytesPlayed() const;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    67
	
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    68
private:
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    69
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    70
	COmxILPcmRendererProcessingFunction(MOmxILCallbackNotificationIf& aCallbacks,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    71
									MOmxILClockComponentCmdsIf& aClientClockPort);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    72
	
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    73
	void ConstructL();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    74
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    75
	void FlushBufferList(RPointerArray<OMX_BUFFERHEADERTYPE>& aBufferList);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    76
	
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    77
private:
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    78
	RPointerArray<OMX_BUFFERHEADERTYPE> iBuffersToEmpty;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    79
	RPointerArray<OMX_BUFFERHEADERTYPE> iBuffersEmptied;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    80
	OMX_STATETYPE iState;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    81
	MOmxILClockComponentCmdsIf* iClientClockPortPtr;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    82
	OMX_TICKS iStartMediaTime;	
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    83
	
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    84
	class CAudioDevice : public CActive
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    85
		{
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    86
	public:
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    87
		static CAudioDevice* NewL(COmxILPcmRendererProcessingFunction& aParent);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    88
		~CAudioDevice();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    89
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    90
		// from CActive
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    91
		void RunL();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    92
		void DoCancel();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    93
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    94
		OMX_ERRORTYPE OpenDevice();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    95
		OMX_ERRORTYPE CloseDevice();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    96
		OMX_ERRORTYPE Execute();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    97
		OMX_ERRORTYPE MoveToPausedState();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    98
		OMX_ERRORTYPE Stop();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    99
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   100
		OMX_ERRORTYPE SetChannels(TUint aChannels);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   101
		OMX_ERRORTYPE SetSampleRate(TUint aSampleRate);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   102
		OMX_ERRORTYPE SetVolume(TInt aVolume);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   103
		OMX_ERRORTYPE SetVolumeRamp(const TTimeIntervalMicroSeconds& aRampDuration);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   104
		OMX_ERRORTYPE SetMuted(TBool aMuted);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   105
		OMX_BUFFERHEADERTYPE* GetCurrentBuffer();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   106
		TInt GetBytesPlayed();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   107
		void ConfigAudioRamper(TInt64 aRampTime);
1
e0d606d6e3b1 Revision: 2010wk36
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   108
		TBool RampAudio(TDes8& aBuffer);
0
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   109
		TBool ConstructAndStartUpdateTimer();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   110
		void ProcessNextBuffer();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   111
		void PlayData();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   112
		void ProcessMediaTimeIndication(OMX_TIME_MEDIATIMETYPE& aMediaTimeType);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   113
		void ProcessParamIndication(const OMX_AUDIO_PARAM_PCMMODETYPE& aPcmModeType);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   114
		
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   115
	private:
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   116
		CAudioDevice(COmxILPcmRendererProcessingFunction& aParent);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   117
		void ConstructL();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   118
		OMX_ERRORTYPE SetPlayFormat();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   119
		void SignalBufferCompletion(OMX_BUFFERHEADERTYPE* apCurrentBuffer);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   120
		TBool IsBufferLengthSufficient(TInt aBufferLength) const;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   121
		TInt GetMinBufferLength() const;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   122
		void SendBufferToSoundDevice(TDes8& aBuffer);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   123
		void StartUpdateTimer();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   124
		void HandleClockStateChanged(const OMX_TIME_MEDIATIMETYPE& aMediaTimeType);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   125
		TBool CanPlayNow();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   126
		void HandleClockScaleChanged(const OMX_TIME_MEDIATIMETYPE& aMediaTimeType);		
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   127
		void PauseAudio();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   128
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   129
		// From MGenericTimerClient
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   130
		static TInt UpdateClockMediaTime(TAny* aPtr );
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   131
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   132
	private:
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   133
		RMdaDevSound iSoundDevice;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   134
		OMX_BUFFERHEADERTYPE* iCurrentBuffer;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   135
		COmxILPcmRendererProcessingFunction& iParent;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   136
		TInt iSampleRate;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   137
		TInt iChannels;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   138
		RMdaDevSound::TMdaSoundEncoding iEncoding;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   139
		TUint iVolume;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   140
		TBool iMuted;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   141
		TUint iBufferSize;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   142
		TTimeIntervalMicroSeconds iVolumeRamp;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   143
		TBool iRampAudioSample;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   144
		TInt iRampSamples;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   145
		TInt iRampSamplesLeft;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   146
		TInt iRampIncr;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   147
		TBool iSkip;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   148
		TBool iClockStateRunning;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   149
		TBool iPausedClockViaScale;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   150
		TBool iIsStartTimeFlagSet;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   151
		OMX_TICKS iClockMediaTime;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   152
		TBool iPlayData;  // To indicate whether it can start rendering audio or not 
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   153
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   154
		/// If the component is in a state other than OMX_StateExecuting, this
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   155
		/// internal variable is used to store the last value of bytes played by
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   156
		/// the Sound Device.
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   157
		TInt iLastBytesPlayedValue;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   158
		
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   159
		/// This is used to send a media time update to the clock component
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   160
		CPeriodic* iPeriodic;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   161
		
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   162
		// This variable is used to optionally allocate a memory segment to cache OMX buffers if the tunnelled component does not utilise them well
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   163
		// If the tunnelled components don't fill in sufficient data in the buffers, this can create underflows in the renderer, as the driver won't have enough data to play
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   164
		RBuf8 iCachedPlayBuffer;		
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   165
		TBool iResumeAfterNextPlay;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   166
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   167
		} *iAudioDevice;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   168
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   169
	class CPFHelper : public CActive
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   170
		{
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   171
	public:
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   172
		static CPFHelper* NewL(CAudioDevice& aAudioDevice);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   173
		~CPFHelper();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   174
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   175
		// from CActive
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   176
		void RunL();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   177
		void DoCancel();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   178
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   179
		TInt OpenDevice();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   180
		TInt CloseDevice();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   181
		TInt CloseDeviceOnError();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   182
		TInt Execute();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   183
		TInt Stop();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   184
		TInt CancelDevice();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   185
		TInt BufferIndication();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   186
		TInt MediaTimeIndication(const OMX_TIME_MEDIATIMETYPE& aMediaTimeType);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   187
		TInt ParamIndication(const OMX_AUDIO_PARAM_PCMMODETYPE* aPcmModeType);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   188
		TInt SetVolumeRamp(const OMX_U64 aRampDuration);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   189
		TInt SetVolume(const OMX_S32 aVolumeValue);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   190
		TInt SetMuted(const OMX_BOOL aVolumeValue);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   191
		
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   192
		enum TMessageType 
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   193
			{
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   194
			EOpenDevice,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   195
			ECloseDevice,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   196
			ECloseDeviceOnError,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   197
			EExecuteCommand,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   198
			EStopCommand,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   199
			ECancelCommand,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   200
			EBufferIndication,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   201
			EMediaTimeIndication,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   202
			EParamIndication,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   203
			ESetVolumeRamp,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   204
			ESetVolume,
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   205
			ESetMuted
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   206
			};
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   207
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   208
		class TProcMessage
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   209
			{
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   210
		public:
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   211
			TMessageType iType;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   212
			OMX_TIME_MEDIATIMETYPE iMediaTimeType;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   213
			OMX_AUDIO_PARAM_PCMMODETYPE iPcmModeType;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   214
			OMX_U64 iRampDuration;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   215
			OMX_S32 iVolumeValue;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   216
			OMX_BOOL iMuted;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   217
			};
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   218
			
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   219
		RMsgQueue<TProcMessage> iMsgQueue;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   220
	
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   221
	private:
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   222
		CPFHelper(CAudioDevice& aAudioDevice);
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   223
		void ConstructL();
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   224
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   225
	private:
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   226
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   227
		static const TInt KMaxMsgQueueEntries = 150;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   228
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   229
		CAudioDevice& iAudioDevice;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   230
		TThreadId iHelperThreadId;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   231
		RSemaphore iCallerSemaphore;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   232
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   233
		} *iPFHelper;
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   234
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   235
	};
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   236
58be5850fb6c Revision: 2010wk32
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   237
#endif // OMXILPCMRENDERERPROCESSINGFUNCTION_H