telephonyutils/etel3rdpartyapi/inc/TelephonyActPhone.h
author James Aley <jamesa@symbian.org>
Wed, 16 Jun 2010 15:43:02 +0100
branchGCC_SURGE
changeset 43 ab2197e94294
parent 0 3553901f7fa8
child 24 6638e7f4bd8f
permissions -rw-r--r--
Fix for Bug 2986

/*
* Copyright (c) 2009 Sony Ericsson Mobile Communications AB
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Sony Ericsson Mobile Communications AB - initial contribution.
* Nokia Corporation - additional changes.
* 
* Contributors:
* 
* Description:
* TelephonyActPhone Active Object class, used by CTelephonyFunctions class.
*
*/


/**
 @file
*/

#include <etel.h>
#include <etelmm.h>
#include "Etel3rdParty.h"

class CTelephony;
class CTelephonyFunctions;	
class CAsyncRequestBaseAct;

class CGetPhoneIdAct : public CAsyncRequestBaseAct
/**
This is an active object responsible for interacting with Multimode ETel
*/
	{
	
public:		
	static CGetPhoneIdAct* NewL(CTelephonyFunctions* aTelephonyFunctions);
	~CGetPhoneIdAct();
	void GetPhoneId(TDes8& aId);
			
protected:
	void Complete();//from CAsyncRequestBaseAct
	TInt RunError(TInt aLeaveCode);//from CActive
	void DoCancel();//from CActive
	
private:	
	CGetPhoneIdAct(CTelephonyFunctions* aTelephonyFunctions);
	CTelephonyFunctions* iTelephonyFunctions;
	CTelephony::TPhoneIdV1* iISVphoneId;
	RMobilePhone::TMobilePhoneIdentityV1 iMMphoneId;		
	};

class CGetSubscriberIdAct : public CAsyncRequestBaseAct
/**
This is an active object responsible for interacting with Multimode ETel
*/
	{
	
public:		
	static CGetSubscriberIdAct* NewL(CTelephonyFunctions* aTelephonyFunctions);
	~CGetSubscriberIdAct();
	void GetSubscriberId(TDes8& aId);
			
protected:	
	void Complete(); //from CAsyncRequestBaseAct
	TInt RunError(TInt aLeaveCode); //from CActive
	void DoCancel(); //from CActive
	
private:	
	CGetSubscriberIdAct(CTelephonyFunctions* aTelephonyFunctions);
	CTelephonyFunctions* iTelephonyFunctions;
	CTelephony::TSubscriberIdV1* iISVSubscriberIdV1;
	RMobilePhone:: TMobilePhoneSubscriberId iMMSubscriberId;		
	};
	
class CGetIndicatorAct : public CAsyncRequestBaseAct
/**
This is an active object responsible for interacting with Multimode ETel
*/
	{
	
public:		
	static CGetIndicatorAct* NewL(CTelephonyFunctions* aTelephonyFunctions);
	~CGetIndicatorAct();
	void GetIndicator(TDes8& aId);
			
protected:	
	void Complete(); //from CAsyncRequestBaseAct
	TInt RunError(TInt aLeaveCode); //from CActive
	void DoCancel(); //from CActive
	
private:	
	CGetIndicatorAct(CTelephonyFunctions* aTelephonyFunctions);
	CTelephonyFunctions* iTelephonyFunctions;
	CTelephony::TIndicatorV1* iISVIndicator;
	TUint32 iIndicator;
	TUint32 iIndicatorCaps;		
	};

class CGetBatteryInfoAct : public CAsyncRequestBaseAct
/**
This is an active object responsible for interacting with Multimode ETel
*/
	{
	
public:		
	static CGetBatteryInfoAct* NewL(CTelephonyFunctions* aTelephonyFunctions);
	~CGetBatteryInfoAct();
	void GetBatteryInfo(TDes8& aId);
			
protected:	
	void Complete(); //from CAsyncRequestBaseAct
	TInt RunError(TInt aLeaveCode); //from CActive
	void DoCancel(); //from CActive
	
private:	
	CGetBatteryInfoAct(CTelephonyFunctions* aTelephonyFunctions);
	CTelephonyFunctions* iTelephonyFunctions;
	CTelephony::TBatteryInfoV1* iISVBatteryInfo;
	RMobilePhone::TMobilePhoneBatteryInfoV1 iMMBatteryInfo;
	};

class CGetSignalStrengthAct : public CAsyncRequestBaseAct
/**
This is an active object responsible for interacting with Multimode ETel
*/
	{
	
public:		
	static CGetSignalStrengthAct* NewL(CTelephonyFunctions* aTelephonyFunctions);
	~CGetSignalStrengthAct();
	void GetSignalStrength(TDes8& aId);
			
protected:	
	void Complete(); //from CAsyncRequestBaseAct
	TInt RunError(TInt aLeaveCode); //from CActive
	void DoCancel(); //from CActive
	
private:	
	CGetSignalStrengthAct(CTelephonyFunctions* aTelephonyFunctions);
	CTelephonyFunctions* iTelephonyFunctions;
	CTelephony::TSignalStrengthV1* iISVSignalStrength;
	TInt32 iSignalStrength;
	TInt8 iBar;
	};

class CGetIccLockInfoAct : public CAsyncRequestBaseAct
/**
This is an active object responsible for interacting with Multimode ETel
*/
	{
	
public:		
	static CGetIccLockInfoAct* NewL(CTelephonyFunctions* aTelephonyFunctions);
	~CGetIccLockInfoAct();
	void GetIccLockInfo(CTelephony::TIccLock aLock, TDes8& aId);
			
protected:	
	void Complete(); //from CAsyncRequestBaseAct
	TInt RunError(TInt aLeaveCode); //from CActive
	void DoCancel(); //from CActive
	
private:	
	CGetIccLockInfoAct(CTelephonyFunctions* aTelephonyFunctions);
	CTelephonyFunctions* iTelephonyFunctions;
	CTelephony::TIccLockInfoV1* iISVLockInfo;
	RMobilePhone::TMobilePhoneLockInfoV1 iMMLockInfo;
	RMobilePhone::TMobilePhoneLockInfoV1Pckg iMMLockInfo1Pckg;
	};
	
class CSendDTMFTonesAct : public CAsyncRequestBaseAct
/**
This is an active object responsible for interacting with Multimode ETel
*/
	{
	
public:		
	static CSendDTMFTonesAct* NewL(CTelephonyFunctions* aTelephonyFunctions);
	~CSendDTMFTonesAct();
	void SendDTMFTones(const TDesC& aTones);
			
protected:	
	void Complete(); //from CAsyncRequestBaseAct
	TInt RunError(TInt aLeaveCode); //from CActive
	void DoCancel(); //from CActive

	
private:	
	CSendDTMFTonesAct(CTelephonyFunctions* aTelephonyFunctions);
	CTelephonyFunctions* iTelephonyFunctions;
	};

class CFlightModeChangeAct : public CAsyncRequestBaseAct
/**
This is an active object responsible for interacting with Multimode ETel
*/
	{
	
public:		
	static CFlightModeChangeAct* NewL(CTelephonyFunctions* aTelephonyFunctions);
	~CFlightModeChangeAct();
	void FlightModeChangeL(TDes8& aDes);
			
protected:	
	void Complete(); //from CAsyncRequestBaseAct
	TInt RunError(TInt aLeaveCode); //from CActive
	void DoCancel(); //from CActive
	
private:	
	CFlightModeChangeAct(CTelephonyFunctions* aTelephonyFunctions);
	CTelephonyFunctions* iTelephonyFunctions;
	CTelephony::TFlightModeV1* iFlightMode;
	};

class CNotifyIndicatorAct : public CAsyncRequestBaseAct
/**
This is an active object responsible for interacting with Multimode ETel
*/
	{
	
public:		
	static CNotifyIndicatorAct* NewL(CTelephonyFunctions* aTelephonyFunctions);
	~CNotifyIndicatorAct();
	void NotifyIndicator(TDes8& aId);
			
protected:	
	void Complete(); //from CAsyncRequestBaseAct
	TInt RunError(TInt aLeaveCode); //from CActive
	void DoCancel(); //from CActive
	
private:	
	CNotifyIndicatorAct(CTelephonyFunctions* aTelephonyFunctions);
	CTelephonyFunctions* iTelephonyFunctions;
	CTelephony::TIndicatorV1* iISVIndicator;
	TUint32 iIndicator;
	TUint32 iIndicatorCaps;		
	};

class CNotifyBatteryInfoAct : public CAsyncRequestBaseAct
/**
This is an active object responsible for interacting with Multimode ETel
*/
	{
	
public:		
	static CNotifyBatteryInfoAct* NewL(CTelephonyFunctions* aTelephonyFunctions);
	~CNotifyBatteryInfoAct();
	void NotifyBatteryInfo(TDes8& aId);
			
protected:	
	void Complete(); //from CAsyncRequestBaseAct
	TInt RunError(TInt aLeaveCode); //from CActive
	void DoCancel(); //from CActive
	
private:	
	CNotifyBatteryInfoAct(CTelephonyFunctions* aTelephonyFunctions);
	CTelephonyFunctions* iTelephonyFunctions;
	CTelephony::TBatteryInfoV1* iISVBatteryInfo;
	RMobilePhone::TMobilePhoneBatteryInfoV1 iMMBatteryInfo;
	};

class CNotifySignalStrengthAct : public CAsyncRequestBaseAct
/**
This is an active object responsible for interacting with Multimode ETel
*/
	{
	
public:		
	static CNotifySignalStrengthAct* NewL(CTelephonyFunctions* aTelephonyFunctions);
	~CNotifySignalStrengthAct();
	void NotifySignalStrength(TDes8& aId);
			
protected:	
	void Complete(); //from CAsyncRequestBaseAct
	TInt RunError(TInt aLeaveCode); //from CActive
	void DoCancel(); //from CActive
	
private:	
	CNotifySignalStrengthAct(CTelephonyFunctions* aTelephonyFunctions);
	CTelephonyFunctions* iTelephonyFunctions;
	CTelephony::TSignalStrengthV1* iISVSignalStrength;
	TInt32 iSignalStrength;
	TInt8 iBar;
	};


class CNotifyIccLockInfoAct : public CAsyncRequestBaseAct
/**
This is an active object responsible for interacting with Multimode ETel
*/
	{
	
public:		
	static CNotifyIccLockInfoAct* NewL(CTelephonyFunctions* aTelephonyFunctions);
	~CNotifyIccLockInfoAct();
	void NotifyIccLockInfo(CTelephony::TIccLock aLock, TDes8& aId);
			
protected:	
	void Complete(); //from CAsyncRequestBaseAct
	TInt RunError(TInt aLeaveCode); //from CActive
	void DoCancel(); //from CActive
	
private:	
	CNotifyIccLockInfoAct(CTelephonyFunctions* aTelephonyFunctions);
	CTelephonyFunctions* iTelephonyFunctions;
	//Pointer to the client data where notify Pin1 lock info will be stored
	CTelephony::TIccLockInfoV1* iISVPin1LockInfo;
	//Pointer to the client data where notify Pin2 lock info will be stored
	CTelephony::TIccLockInfoV1* iISVPin2LockInfo;
	RMobilePhone::TMobilePhoneLockInfoV1 iMMLockInfo;
	RMobilePhone::TMobilePhoneLockInfoV1Pckg iMMLockInfoV1Pckg;
	RMobilePhone::TMobilePhoneLock iMMLock;
	};