os/mm/devsoundextensions/telephonyaudiorouting/TelephonyAudioRoutingBase/inc/TelephonyAudioRoutingProxy.h
Update contrib.
2 * Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
4 * This component and the accompanying materials are made available
5 * under the terms of "Eclipse Public License v1.0"
6 * which accompanies this distribution, and is available
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
14 * Description: Proxy class for handling client requests
20 #ifndef TELEPHONYAUDIOROUTINGPROXY_H
21 #define TELEPHONYAUDIOROUTINGPROXY_H
26 #include "TelephonyAudioRouting.h"
27 #include "TelephonyAudioRoutingSession.h"
33 * Defines client side API for telephony audio routing requests.
35 * @lib TelephonyAudioRouting.lib
38 class CTelephonyAudioRoutingProxy: public CTelephonyAudioRouting
41 public: // Constructors and destructor
43 IMPORT_C static CTelephonyAudioRoutingProxy* NewL(MTelephonyAudioRoutingObserver& aObserver);
48 virtual ~CTelephonyAudioRoutingProxy();
51 * Provide array of available outputs
54 * @return const TArray<TAudioOutput>: array of available outputs
56 virtual const TArray<TAudioOutput>& AvailableOutputs();
59 * Provide current audio output
62 * @return TAudioOutput: audio output
64 virtual TAudioOutput Output();
68 * Request to set the current output
70 * @param aOutput: desired output value
73 virtual void SetOutputL( TAudioOutput aOutput = ENotActive);
76 * Provide previous output value
79 * @return TAudioOutput: previous output value.
81 virtual TAudioOutput PreviousOutput();
85 * Request to set the ShowNote flag
86 * @since Series 60 3.1
87 * @param TBool aMode Show Note mode. ETrue or EFalse.
88 * @return KErrNone if succesful, otherwise system-wide error code.
90 virtual TInt SetShowNote( TBool aMode );
93 * Returns the the Show Note mode for the last succesfully completed
94 * SetOutputL() request.
95 * @since Series 60 3.1
96 * @param TBool aMode. On return of this function will contain
97 * Show Note mode. EFalse or ETrue.
98 * @return KErrNone if succesful, otherwise system-wide error code.
100 virtual TInt GetShowNote( TBool& aMode );
106 * C++ default constructor.
108 CTelephonyAudioRoutingProxy(MTelephonyAudioRoutingObserver& aObserver);
114 TBool ValidateOutputRequest(TAudioOutput aOutput);
115 TBool ShowNoteMode();
119 MTelephonyAudioRoutingObserver& iObserver;
120 RTelephonyAudioRoutingSession iSession;
122 TArray<CTelephonyAudioRouting::TAudioOutput> iAvailableOutputs;
127 #endif // TELEPHONYAUDIOROUTINGPROXY_H