devsound/a3fdevsound/src/mmfdevsoundserver/mmfdevsoundserver.h
author hgs
Tue, 02 Nov 2010 12:28:51 +0000
changeset 6 fe9d1bf55678
parent 0 b8ed18f6c07b
permissions -rw-r--r--
2010wk46_02
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     1
// Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     2
// All rights reserved.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     3
// This component and the accompanying materials are made available
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     4
// under the terms of "Eclipse Public License v1.0"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     5
// which accompanies this distribution, and is available
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     7
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     8
// Initial Contributors:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     9
// Nokia Corporation - initial contribution.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    10
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    11
// Contributors:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    12
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    13
// Description:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    14
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    15
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    16
#ifndef MMFDEVSOUNDSERVER_H
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    17
#define MMFDEVSOUNDSERVER_H
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    18
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    19
#include <e32base.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    20
#include <e32def.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    21
#include <e32std.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    22
#include <mmf/common/mmfipc.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    23
#ifdef SYMBIAN_ENABLE_SPLIT_HEADERS
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    24
#include <mmf/common/mmfipcserver.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    25
#endif
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    26
#include "mmfaudioserver.h"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    27
#include "mmfdevsoundserverstart.h"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    28
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    29
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    30
	Panic category and codes that MmfDevSoundServer raises on the client
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    31
*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    32
_LIT(KMMFDevSoundClientPanicCategory, "DevSoundClient");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    33
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    34
enum TMMFDevSoundClientPanicCodes
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    35
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    36
	EMMFDevSoundPlayDataWithoutInitialize,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    37
	EMMFDevSoundRecordDataWithoutInitialize
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    38
	};
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    39
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    40
enum TMMFDevSoundServerPanicCodes
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    41
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    42
	EMMFDevSoundServerIsActive = 1
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    43
	};
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    44
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    45
// FORWARD DECLARATIONS
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    46
class CMMFDevSoundServer;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    47
class MGlobalProperties;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    48
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    49
// CLASS DECLARATION
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    50
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    51
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    52
	DevSound server implementation.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    53
	This class implements the DevSound server thread. The main purpose of this
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    54
	class is to create a new session when requested by DevSound proxy.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    55
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    56
	@lib MmfDevSoundServer.lib
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    57
	@since 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    58
*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    59
NONSHARABLE_CLASS( CMMFDevSoundServer ): public CMmfIpcServer
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    60
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    61
public:  // Constructors and destructor
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    62
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    63
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    64
		Constructs, and returns a pointer to, a new CMMFDevSoundServer object.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    65
		Leaves on failure.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    66
		@param CMMFAudioServer* aAudioServer A pointer reference to Audio
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    67
		Server launchining this.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    68
		@param TProcessId& aClientPID A reference to process id of the client
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    69
		launching DevSound server.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    70
		@param MGlobalProperties a reference to global properties such as FourCC to format converter
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    71
		@return CMMFDevSoundServer* A pointer to newly created object.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    72
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    73
	IMPORT_C static CMMFDevSoundServer* NewL(MGlobalProperties* aGlobalProperties,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    74
						TProcessId& aClientPID);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    75
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    76
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    77
		Destructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    78
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    79
	~CMMFDevSoundServer();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    80
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    81
	// New functions
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    82
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    83
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    84
		From CServer2. Creates a server-side client session object.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    85
		@since 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    86
		@param TVersion - server version requested by the client.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    87
		@return CMmfIpcSession* A pointer to newly created session.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    88
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    89
	CMmfIpcSession* NewSessionL(const TVersion &aVersion) const;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    90
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    91
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    92
		Increment the session Id.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    93
		@since 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    94
		@param ?arg1 ?description
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    95
		@return ?description
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    96
		@return void
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    97
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    98
	void IncrementSessionId();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    99
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   100
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   101
		Decrement the session Id.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   102
		Once the number of DevSound sessions becomes zero, DevSound
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   103
		Server will start its shutdown routine.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   104
		@since 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   105
		@param ?arg1 ?description
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   106
		@return void
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   107
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   108
	void DecrementSessionId();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   109
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   110
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   111
		Sends Event to DevSound client.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   112
		@since 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   113
		@param TInt aSessionToAlert Id of DevSound to be alerted.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   114
		@param TInt aSessionToBeLaunched Id of DevSound to be launched.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   115
		@return void
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   116
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   117
	void SendEventToClient(TInt aSessionToAlert, TInt aSessionToBeLaunched);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   118
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   119
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   120
		Launches the DevSound servers waiting for Audio Policy.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   121
		@since 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   122
		@param TInt aSessionToBeLaunched Id of DevSound to be launched.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   123
		@return void
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   124
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   125
	void LaunchRequest(TInt aSessionId);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   126
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   127
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   128
		Returns DevSound Server session identifier.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   129
		@since 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   130
		@return TInt A integer representing session id.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   131
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   132
	TInt DevSoundSessionId() {return iDevSoundSessionId;};
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   133
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   134
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   135
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   136
		Static entry point to launch the thread.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   137
		@since 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   138
		@param TAny* aParams
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   139
		@return KErrNone if successfull, else corresponding error code
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   140
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   141
	IMPORT_C static TInt StartThread(TAny* aParams);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   142
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   143
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   144
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   145
		Returns process id of the client application.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   146
		@since 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   147
		@return TProcessId Process id of the client application.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   148
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   149
	TProcessId ProcessId() {return iClientPID;};
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   150
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   151
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   152
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   153
		@since 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   154
		@return void.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   155
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   156
	void SetClientProcessIdL(TThreadId aTid);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   157
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   158
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   159
		Returns the actual process id of the client application.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   160
		@since 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   161
		@return TProcessId Process id of the client application.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   162
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   163
	TProcessId ActualProcessId() {return iActualClientPID;};
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   164
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   165
private:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   166
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   167
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   168
		C++ default constructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   169
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   170
	CMMFDevSoundServer(MGlobalProperties* aGlobalProperties,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   171
					TProcessId& aClientPID);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   172
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   173
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   174
		By default Symbian 2nd phase constructor is private.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   175
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   176
	void ConstructL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   177
	static void RenamePrioritizeServer();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   178
	static void StartThreadL(TDevSoundServerStart& aStart);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   179
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   180
	CMmfIpcSession* CreateNewSessionL(const TVersion& aVersion) const;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   181
	void CheckForNoSessionsLeft();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   182
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   183
private:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   184
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   185
		A Timer utility class used by DevSound Server for shutdown purpose.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   186
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   187
	class CDelayDevSoundShutDown : public CActive
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   188
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   189
	public:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   190
		// Construct/destruct
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   191
		static CDelayDevSoundShutDown* NewL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   192
		~CDelayDevSoundShutDown();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   193
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   194
	public:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   195
		// Request a timeout after aDelay
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   196
		void SetDelay(TTimeIntervalMicroSeconds32 aDelay);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   197
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   198
	protected:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   199
		// From CActive
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   200
		void RunL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   201
		void DoCancel();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   202
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   203
	private:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   204
		// Construct/destruct
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   205
		CDelayDevSoundShutDown();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   206
		void ConstructL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   207
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   208
	private:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   209
		RTimer iTimer;      // Has
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   210
		};
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   211
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   212
private:    // Data
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   213
	// Id allocated to this DevSound server.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   214
	TInt iDevSoundSessionId;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   215
	// Session to be launched
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   216
	TInt iSessionToBeLaunched;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   217
	// Process id of client
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   218
	TProcessId iClientPID;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   219
	// DevSound server shutdown utlilty timer object
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   220
	CDelayDevSoundShutDown* iDelayDevSoundShutDown;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   221
	// A pointer reference to Audio Server
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   222
	MGlobalProperties* iGlobalProperties;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   223
	// Process id of client
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   224
	TProcessId iActualClientPID;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   225
	};
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   226
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   227
GLDEF_C void PanicClient(const RMmfIpcMessage& aMessage,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   228
					TMMFDevSoundClientPanicCodes aPanicCode);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   229
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   230
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   231
#endif // MMFDEVSOUNDSERVER_H
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   232
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   233
// End of File