sl@0: /* sl@0: * Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies). sl@0: * All rights reserved. sl@0: * This component and the accompanying materials are made available sl@0: * under the terms of "Eclipse Public License v1.0" sl@0: * which accompanies this distribution, and is available sl@0: * at the URL "http://www.eclipse.org/legal/epl-v10.html". sl@0: * sl@0: * Initial Contributors: sl@0: * Nokia Corporation - initial contribution. sl@0: * sl@0: * Contributors: sl@0: * sl@0: * Description: sl@0: * sl@0: */ sl@0: sl@0: sl@0: sl@0: #ifndef MMFAUDIOSERVERSESSION_H sl@0: #define MMFAUDIOSERVERSESSION_H sl@0: sl@0: // INCLUDES sl@0: #include sl@0: #include sl@0: #include sl@0: #ifdef SYMBIAN_ENABLE_SPLIT_HEADERS sl@0: #include sl@0: #endif sl@0: #include "mmfaudioclientserver.h" sl@0: sl@0: sl@0: // CLASS DECLARATION sl@0: sl@0: /** sl@0: * Server-side session implementation. sl@0: * sl@0: * @lib MmfAudioServer.exe sl@0: */ sl@0: class CMMFAudioServerSession : public CMmfIpcSession sl@0: { sl@0: public: sl@0: sl@0: /** sl@0: * Constructs, and returns a pointer to, a new CMMFAudioServerSession sl@0: * object. sl@0: * @param aDevSoundSessionHandle. A handle to the DevSound server session. sl@0: * @return CMMFAudioServerSession* a pointer to newly created object. sl@0: */ sl@0: static CMMFAudioServerSession* NewL( sl@0: RHandleBase& aDevSoundSessionHandle); sl@0: sl@0: /** sl@0: * Destructor. sl@0: */ sl@0: ~CMMFAudioServerSession(); sl@0: sl@0: /** sl@0: * Creates a new server-side session. sl@0: * @param aServer - audioserver referencei sl@0: */ sl@0: void CreateL(const CMmfIpcServer& aServer); sl@0: sl@0: /** sl@0: * Handles the client requestsi sl@0: * @param const aMessage - Request from client. sl@0: */ sl@0: void ServiceL(const RMmfIpcMessage& aMessage); sl@0: sl@0: /** sl@0: * Returns the AudioServer session ID. sl@0: * @return TInt A integer representing audio server session ID. sl@0: */ sl@0: TInt AudioServerSessionId() {return iAudioServerSessionId;}; sl@0: sl@0: private: sl@0: //Constructor. sl@0: sl@0: CMMFAudioServerSession(RHandleBase& aDevSoundSessionHandle); sl@0: sl@0: //Second phase constructor. sl@0: sl@0: void ConstructL(); sl@0: sl@0: private: // Data sl@0: // Integer representing audio server session. sl@0: TInt iAudioServerSessionId; sl@0: // This is the handle to the DevSound server session. sl@0: RHandleBase iDevSoundSessionHandle; sl@0: sl@0: }; sl@0: sl@0: #endif // MMFAUDIOSERVERSESSION_H sl@0: sl@0: // End of File