os/mm/devsoundextensions/telephonyaudiorouting/Session/inc/TelephonyAudioRoutingRequest.h
First public contribution.
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: Active object for each asynchronous request in RTelephonyAudioRoutingSession.
15 * Notifies MTelephonyAudioObserver upon request completion.
22 #ifndef TELEPHONYAUDIOROUTINGREQUEST_H
23 #define TELEPHONYAUDIOROUTINGREQUEST_H
26 #include "TelephonyAudioRoutingSession.h"
27 #include "TelephonyAudioRoutingClientServer.h"
28 #include "TelephonyAudioRouting.h"
34 * Implements active object for outstanding asynchronous request.
36 * @lib TelephonyAudioRoutingSession.lib
37 * @since Series 60 3.1
39 class CTelephonyAudioRoutingRequest : public CActive
42 public: // Constructors and destructor
45 * Two-phased constructor.
47 static CTelephonyAudioRoutingRequest* NewL( RTelephonyAudioRoutingSession& aSession, MTelephonyAudioRoutingObserver& aObserver, CTelephonyAudioRouting& aAudioRouting, TTelAudRtngServRqst aRequest );
53 virtual ~CTelephonyAudioRoutingRequest();
55 private: // Functions from base classes
59 * Cancel outstanding request
67 * Implementation of CActive::RunL. Called when server request has completed.
76 * C++ default constructor.
78 CTelephonyAudioRoutingRequest( RTelephonyAudioRoutingSession& aSession, MTelephonyAudioRoutingObserver& aObserver, CTelephonyAudioRouting& aAudioRouting, TTelAudRtngServRqst aRequest );
82 * By default Symbian 2nd phase constructor is private.
89 RTelephonyAudioRoutingSession& iSession;
90 MTelephonyAudioRoutingObserver& iObserver;
91 CTelephonyAudioRouting& iAudioRouting;
92 TTelAudRtngServRqst iRequestOpcode;
94 private: // Friend classes
95 friend class RTelephonyAudioRoutingSession;
99 #endif // TELEPHONYAUDIOROUTINGREQUEST_H