telephonyserverplugins/multimodetsy/hayes/ATHANGUP.CPP
branchRCL_3
changeset 20 07a122eea281
parent 19 630d2f34d719
--- a/telephonyserverplugins/multimodetsy/hayes/ATHANGUP.CPP	Tue Aug 31 16:23:08 2010 +0300
+++ b/telephonyserverplugins/multimodetsy/hayes/ATHANGUP.CPP	Wed Sep 01 12:40:21 2010 +0100
@@ -487,3 +487,53 @@
 		}	
 	iState=EATNotInProgress;
 	}
+
+//
+//	CATHangUpFax
+//
+
+CATHangUpFax* CATHangUpFax::NewL(CATIO* aIo, CTelObject* aTelObject,CATInit* aInit,CPhoneGlobals* aPhoneGlobals)
+	{
+	CATHangUpFax* hangup=new(ELeave) CATHangUpFax(aIo, aTelObject, aInit,aPhoneGlobals);
+	CleanupStack::PushL(hangup);
+	hangup->ConstructL();
+	CleanupStack::Pop();
+	return hangup;
+	}
+
+CATHangUpFax::CATHangUpFax(CATIO* aIo, CTelObject* aTelObject,CATInit* aInit,CPhoneGlobals* aPhoneGlobals)
+											: CATCallAlterCommands(aIo,aTelObject,aInit,aPhoneGlobals)
+	{}
+
+CATHangUpFax::~CATHangUpFax()
+	{}
+
+void CATHangUpFax::Start(TTsyReqHandle aTsyReqHandle, TAny* /*aParams*/)
+//
+//	When a fax call is terminated, modem is set to not initialised so that if a data call
+//  follows it will initialise the modem again.
+//
+	{
+	LOGTEXT(_L8("Starting HangUp fax call"));
+	iReqHandle=aTsyReqHandle;
+	iPhoneGlobals->iNotificationStore->CheckNotification(REINTERPRET_CAST(CCallBase*,iTelObject),EBegunHangingUp);
+	CCallMobileFax* faxCall = REINTERPRET_CAST(CCallMobileFax*,iTelObject);
+//	iPhoneGlobals->iPhoneStatus.iInitStatus = EPhoneNotInitialised;
+	faxCall->FaxHangUp(aTsyReqHandle);
+	}
+
+void CATHangUpFax::Stop(TTsyReqHandle aTsyReqHandle)
+//
+//	Too late to stop hang up process here. Only hope is if escape sequence or init sequence
+//	had to be performed first
+//
+	{
+	__ASSERT_ALWAYS(aTsyReqHandle == iReqHandle,Panic(EIllegalTsyReqHandle));
+	LOGTEXT(_L8("Too late to cancel Hang Up Command"));
+	}
+
+void CATHangUpFax::EventSignal(TEventSource /*aSource*/)
+	{}
+
+void CATHangUpFax::Complete(TInt /*aError*/,TEventSource /*aSource*/)
+	{}