sl@0: // Copyright (c) 2001-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: #ifndef __MMFBTAUDIOPOLICYREQUEST_H__ sl@0: #define __MMFBTAUDIOPOLICYREQUEST_H__ sl@0: sl@0: #include sl@0: #include "MmfBtPolicyClientServer.h" sl@0: sl@0: enum TPolicyResponse sl@0: { sl@0: EProceed, sl@0: EDenied, sl@0: EStopThenProceed, sl@0: EResume, sl@0: EMix sl@0: }; sl@0: sl@0: /****************************************************************************** sl@0: * Class Name: CMMFAudioPolicyRequest sl@0: * sl@0: * Description: This class carries request information from the client to the sl@0: * server, upon making a request to proceed with a user's command. sl@0: * sl@0: ******************************************************************************/ sl@0: sl@0: sl@0: class CMMFAudioPolicyRequest : public CBase sl@0: /** sl@0: *@internalTechnology sl@0: */ sl@0: { sl@0: public: sl@0: inline CMMFAudioPolicyRequest(); sl@0: ~CMMFAudioPolicyRequest(){}; sl@0: sl@0: // Accessor methods: sl@0: sl@0: inline void SetPrioritySettings(const TMMFAudioPolicyPrioritySettings& aPrioritySettings); sl@0: sl@0: inline TInt Priority(); sl@0: inline void SetPriority(TInt aPriority); sl@0: sl@0: inline TMMFAudioPolicyState State(); sl@0: inline void SetState(TMMFAudioPolicyState aState); sl@0: sl@0: inline TMdaPriorityPreference Pref(); sl@0: inline void SetPref(TMdaPriorityPreference aPref); sl@0: sl@0: inline TInt PolicySessionId(); sl@0: sl@0: inline TBool DeviceInUse(); sl@0: inline void SetDeviceInUse(TBool aDeviceInUse); sl@0: sl@0: inline TUid NotificationEvent() const; sl@0: inline void SetNotificationEvent(TUid aNotificationEventUid); sl@0: inline void ResetNotificationEvent(TUid aNotificationEventUid); sl@0: inline void SetEventFlag(TBool aEventFlag); sl@0: inline TBool IsEventNotified() const; sl@0: sl@0: inline TBool Capabilities(); sl@0: inline void SetCapabilities(TBool aCaps); sl@0: sl@0: private: sl@0: sl@0: TInt iPriority; sl@0: TMdaPriorityPreference iPref; sl@0: TMMFAudioPolicyState iState; sl@0: TInt iPolicySessionId; sl@0: TMMFAudioPolicyPrioritySettings iPrioritySettings; sl@0: TBool iDeviceInUse; sl@0: TUid iNotificationEventUid; sl@0: TBool iEventNotified; sl@0: sl@0: TBool iCapabilities; sl@0: sl@0: friend class CMMFAudioPolicySession; // Allow this class to use SetSessionId() sl@0: inline void SetPolicySessionId(TInt aPolicySessionId); sl@0: }; sl@0: sl@0: #include "MmfBtAudioPolicyRequest.inl" sl@0: sl@0: #endif //__MMFBTAUDIOPOLICYREQUEST_H__