diff -r 6b1d113cdff3 -r 6638e7f4bd8f telephonyserverplugins/multimodetsy/hayes/ATBASE.H --- a/telephonyserverplugins/multimodetsy/hayes/ATBASE.H Mon May 03 13:37:20 2010 +0300 +++ b/telephonyserverplugins/multimodetsy/hayes/ATBASE.H Thu May 06 15:10:38 2010 +0100 @@ -1,161 +1,161 @@ -// Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies). -// 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: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// AT Command Base Class Header -// -// - -/** - @file - @internalAll -*/ - - -#ifndef __ATBASE_H__ -#define __ATBASE_H__ - -#include "ATSTD.H" -#include -#include "SCHAT.H" -/** -@internalComponent -*/ -enum TEventSource - { - EReadCompletion, - EWriteCompletion, - ETimeOutCompletion - }; - -/** -@internalTechnology -*/ -const TUint KGenericBufferSize=200; // Changed from 100 to 200 hs - -class CATParamListEntry : public CBase -/** -@internalTechnology -*/ - { -public: - CATParamListEntry(const TDesC8& aPtr); - ~CATParamListEntry(); - void Deque(); - static void EntryValL(CATParamListEntry* aEntry,TInt& aValue); - static TInt EntryValL(CATParamListEntry* aEntry); -public: - TPtrC8 iResultPtr; -private: - TDblQueLink iLink; - friend class CATBase; - }; - - -class CTelObject; -class CCompleteRelinquish : public CAsyncOneShot -/** -CCompleteRelinquish calls RelinquishOwnershipCompleted() in ETel server so that the -server only closes down the session once the TSY's I/O has finished processing - -@internalTechnology -*/ - { -public: - static CCompleteRelinquish* New(CTelObject* aTelObject); - ~CCompleteRelinquish(); - void SetWhichCompletion(TPanicOccurred aPanicOccurred) {iPanicOccurred = aPanicOccurred;} -protected: - CCompleteRelinquish(CTelObject* aTelObject); - virtual void RunL(); -private: - CTelObject* iTelObject; - TPanicOccurred iPanicOccurred; - }; - - -class CATIO; -class CATBase : public CBase -/** -@internalTechnology -*/ - { -public: - void GenericEventSignal(TEventSource aEventSource, TInt aStatus); - CTelObject* Owner(); - TCallInfoTSY* CallInfo(); - void AppendWildCardChar(TDes8& aString); -protected: - CATBase(CATIO* aIo, CTelObject* aTelObject,CPhoneGlobals* aPhoneGlobals); - ~CATBase(); - virtual void EventSignal(TEventSource aEventSource)=0; - virtual void CompleteWithIOError(TEventSource aSource,TInt aStatus)=0; - void ChangeCallStatus(RMobileCall::TMobileCallStatus aCallStatus); - void ChangeLineStatus(RCall::TStatus aLineStatus); - void StandardWriteCompletionHandler(TEventSource aSource,TInt aLengthOfPause); - void Write(const TDesC8& aCommand,TInt aTimeOut = 5); - void Write(const TDesC8& aCommand,TInt aTimeOut,TInt aValue); - void Write(const TInt aTimeOut); - void WriteExpectingResults(const TDesC8& aCommand,TInt aTimeOut); - void AddStdExpectStrings(); - TInt ValidateExpectString(); // New version which does not leave 13/Sep/01 - void RemoveStdExpectStrings(); - void RemoveUnsolicitedStrings(); // Removes any unsolicited strings received during initialisation - void AddCmsErrorExpectString(); - void RemoveCmsErrorExpectString(); - void ParseBufferLC(TBool aReportLists=EFalse, TUint aSeparatorChar=','); - void ParseLineLC(TBool aReportLists=EFalse, TUint aSeparatorChar=','); - void ParseLC(TBool aReportLists, TUint aSeparatorChar); - void AddParamL(const TDesC8& aPtr); - void SetToNotInitialised(); - void RxResultsPushLC(); - static void CleanupRxResults(TAny *aCATBase); // for TCleanupOperation -protected: - CCommChatString* iOKExpectString; - CCommChatString* iErrorExpectString; - CCommChatString* iCmsExpectString; - CATIO* iIo; -protected: - TBuf8 iTxBuffer; - TDblQue iRxResults; - TPtrC8 iBuffer; - TTsyReqHandle iReqHandle; - CPhoneGlobals* iPhoneGlobals; - CCompleteRelinquish* iComplete; - CTelObject* iTelObject; - TCallInfoTSY* iCallInfo; - }; - -class CATInit; -class CATSetToOnlineCommandMode; -class CATCommands : public CATBase -/** -@internalTechnology -*/ - { -public: - void ExecuteCommand(TTsyReqHandle aTsyReqHandle, TAny* aParams); - void ExecuteCommand(TTsyReqHandle aTsyReqHandle, TAny* aParams,TCallInfoTSY* aCallInfo); - void CancelCommand(TTsyReqHandle aTsyReqHandle); - virtual void Start(TTsyReqHandle aTsyReqHandle, TAny* aParams)=0; - virtual void Stop(TTsyReqHandle aTsyReqHandle)=0; -protected: - CATCommands(CATIO* aIo, CTelObject* aTelObject,CATInit* aInit,CPhoneGlobals* aPhoneGlobals); - void ConstructL(); - ~CATCommands(); - virtual void Complete(TInt aError,TEventSource aSource); -protected: - CATInit* iInit; - CATSetToOnlineCommandMode* iATSetToOnlineCommandMode; - }; - -#endif +// Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies). +// 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: +// Nokia Corporation - initial contribution. +// +// Contributors: +// +// Description: +// AT Command Base Class Header +// +// + +/** + @file + @internalAll +*/ + + +#ifndef __ATBASE_H__ +#define __ATBASE_H__ + +#include "ATSTD.H" +#include +#include "SCHAT.H" +/** +@internalComponent +*/ +enum TEventSource + { + EReadCompletion, + EWriteCompletion, + ETimeOutCompletion + }; + +/** +@internalTechnology +*/ +const TUint KGenericBufferSize=200; // Changed from 100 to 200 hs + +class CATParamListEntry : public CBase +/** +@internalTechnology +*/ + { +public: + CATParamListEntry(const TDesC8& aPtr); + ~CATParamListEntry(); + void Deque(); + static void EntryValL(CATParamListEntry* aEntry,TInt& aValue); + static TInt EntryValL(CATParamListEntry* aEntry); +public: + TPtrC8 iResultPtr; +private: + TDblQueLink iLink; + friend class CATBase; + }; + + +class CTelObject; +class CCompleteRelinquish : public CAsyncOneShot +/** +CCompleteRelinquish calls RelinquishOwnershipCompleted() in ETel server so that the +server only closes down the session once the TSY's I/O has finished processing + +@internalTechnology +*/ + { +public: + static CCompleteRelinquish* New(CTelObject* aTelObject); + ~CCompleteRelinquish(); + void SetWhichCompletion(TPanicOccurred aPanicOccurred) {iPanicOccurred = aPanicOccurred;} +protected: + CCompleteRelinquish(CTelObject* aTelObject); + virtual void RunL(); +private: + CTelObject* iTelObject; + TPanicOccurred iPanicOccurred; + }; + + +class CATIO; +class CATBase : public CBase +/** +@internalTechnology +*/ + { +public: + void GenericEventSignal(TEventSource aEventSource, TInt aStatus); + CTelObject* Owner(); + TCallInfoTSY* CallInfo(); + void AppendWildCardChar(TDes8& aString); +protected: + CATBase(CATIO* aIo, CTelObject* aTelObject,CPhoneGlobals* aPhoneGlobals); + ~CATBase(); + virtual void EventSignal(TEventSource aEventSource)=0; + virtual void CompleteWithIOError(TEventSource aSource,TInt aStatus)=0; + void ChangeCallStatus(RMobileCall::TMobileCallStatus aCallStatus); + void ChangeLineStatus(RCall::TStatus aLineStatus); + void StandardWriteCompletionHandler(TEventSource aSource,TInt aLengthOfPause); + void Write(const TDesC8& aCommand,TInt aTimeOut = 5); + void Write(const TDesC8& aCommand,TInt aTimeOut,TInt aValue); + void Write(const TInt aTimeOut); + void WriteExpectingResults(const TDesC8& aCommand,TInt aTimeOut); + void AddStdExpectStrings(); + TInt ValidateExpectString(); // New version which does not leave 13/Sep/01 + void RemoveStdExpectStrings(); + void RemoveUnsolicitedStrings(); // Removes any unsolicited strings received during initialisation + void AddCmsErrorExpectString(); + void RemoveCmsErrorExpectString(); + void ParseBufferLC(TBool aReportLists=EFalse, TUint aSeparatorChar=','); + void ParseLineLC(TBool aReportLists=EFalse, TUint aSeparatorChar=','); + void ParseLC(TBool aReportLists, TUint aSeparatorChar); + void AddParamL(const TDesC8& aPtr); + void SetToNotInitialised(); + void RxResultsPushLC(); + static void CleanupRxResults(TAny *aCATBase); // for TCleanupOperation +protected: + CCommChatString* iOKExpectString; + CCommChatString* iErrorExpectString; + CCommChatString* iCmsExpectString; + CATIO* iIo; +protected: + TBuf8 iTxBuffer; + TDblQue iRxResults; + TPtrC8 iBuffer; + TTsyReqHandle iReqHandle; + CPhoneGlobals* iPhoneGlobals; + CCompleteRelinquish* iComplete; + CTelObject* iTelObject; + TCallInfoTSY* iCallInfo; + }; + +class CATInit; +class CATSetToOnlineCommandMode; +class CATCommands : public CATBase +/** +@internalTechnology +*/ + { +public: + void ExecuteCommand(TTsyReqHandle aTsyReqHandle, TAny* aParams); + void ExecuteCommand(TTsyReqHandle aTsyReqHandle, TAny* aParams,TCallInfoTSY* aCallInfo); + void CancelCommand(TTsyReqHandle aTsyReqHandle); + virtual void Start(TTsyReqHandle aTsyReqHandle, TAny* aParams)=0; + virtual void Stop(TTsyReqHandle aTsyReqHandle)=0; +protected: + CATCommands(CATIO* aIo, CTelObject* aTelObject,CATInit* aInit,CPhoneGlobals* aPhoneGlobals); + void ConstructL(); + ~CATCommands(); + virtual void Complete(TInt aError,TEventSource aSource); +protected: + CATInit* iInit; + CATSetToOnlineCommandMode* iATSetToOnlineCommandMode; + }; + +#endif