RATExt Class Reference
class RATExt : public RSessionBase |
Client of AT Extension.
atextclient.lib
- Since
- S60 v5.0
Public Member Functions |
---|
IMPORT_C TInt | BroadcastNvramStatusChange(const TDesC8 &) |
IMPORT_C TInt | CancelHandleCommand() |
IMPORT_C TInt | CancelReceiveEcomPluginChange() |
IMPORT_C TInt | CancelReceiveUnsolicitedResult(TUid &) |
IMPORT_C TInt | Connect(TATExtensionInterface, const TDesC8 &) |
IMPORT_C TInt | GetNextPartOfReply(TBuf8< KDefaultCmdBufLength > &, TInt &) |
IMPORT_C TInt | GetNextSpecialCommand(TDes8 &, TBool &) |
IMPORT_C TInt | HandleCommand(TRequestStatus &, const TDesC8 &, TBuf8< KDefaultCmdBufLength > &, TPckg< TInt > &, TPckg< TATExtensionReplyType > &) |
IMPORT_C TInt | MarkUrcHandlingOwnership(TUid &) |
IMPORT_C TInt | NumberOfPlugins() |
IMPORT_C TInt | ReceiveEcomPluginChange(TRequestStatus &, TPckg< TUid > &, TPckg< TATExtensionEcomType > &) |
IMPORT_C TInt | ReceiveUnsolicitedResult(TRequestStatus &, TBuf8< KDefaultUrcBufLength > &, TPckg< TUid > &) |
IMPORT_C TInt | ReportCharacterChange(TATExtensionCharType, TInt8) |
IMPORT_C TInt | ReportExternalHandleCommandError() |
IMPORT_C TInt | ReportHandleCommandAbort(TBool &) |
IMPORT_C TInt | ReportListenerUpdateReady(TUid &, TATExtensionEcomType) |
IMPORT_C TInt | ReportQuietModeChange(TBool) |
IMPORT_C TInt | ReportVerboseModeChange(TBool) |
IMPORT_C TInt | SynchronousClose() |
Inherited Functions |
---|
| RHandleBase::Attributes()const |
| RHandleBase::BTraceId()const |
| RHandleBase::Close() |
| RHandleBase::DoExtendedClose() |
| RHandleBase::Duplicate(const RThread &,TOwnerType) |
| RHandleBase::FullName()const |
| RHandleBase::FullName(TDes &)const |
| RHandleBase::Handle()const |
| RHandleBase::HandleInfo(THandleInfo *) |
| RHandleBase::Name()const |
| RHandleBase::NotifyDestruction(TRequestStatus &) |
| RHandleBase::Open(const TFindHandleBase &,TOwnerType) |
| RHandleBase::OpenByName(const TDesC &,TOwnerType,TInt) |
| RHandleBase::RHandleBase() |
| RHandleBase::RHandleBase(TInt) |
| RHandleBase::SetHandle(TInt) |
| RHandleBase::SetHandleNC(TInt) |
| RSessionBase::CreateSession(RServer2,const TVersion &) |
| RSessionBase::CreateSession(RServer2,const TVersion &,TInt) |
| RSessionBase::CreateSession(RServer2,const TVersion &,TInt,TIpcSessionType,const TSecurityPolicy *,TRequestStatus *) |
| RSessionBase::CreateSession(const TDesC &,const TVersion &) |
| RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt) |
| RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt,TIpcSessionType,const TSecurityPolicy *,TRequestStatus *) |
| RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt,TRequestStatus *) |
| RSessionBase::Open(RMessagePtr2,TInt,TOwnerType) |
| RSessionBase::Open(RMessagePtr2,TInt,const TSecurityPolicy &,TOwnerType) |
| RSessionBase::Open(TInt,TOwnerType) |
| RSessionBase::Open(TInt,const TSecurityPolicy &,TOwnerType) |
| RSessionBase::Send(TInt)const |
| RSessionBase::Send(TInt,const TIpcArgs &)const |
| RSessionBase::SendReceive(TInt)const |
| RSessionBase::SendReceive(TInt,TRequestStatus &)const |
| RSessionBase::SendReceive(TInt,const TIpcArgs &)const |
| RSessionBase::SendReceive(TInt,const TIpcArgs &,TRequestStatus &)const |
| RSessionBase::SetReturnedHandle(TInt) |
| RSessionBase::SetReturnedHandle(TInt,RHandleBase &) |
| RSessionBase::SetReturnedHandle(TInt,const TSecurityPolicy &) |
| RSessionBase::ShareAuto() |
| RSessionBase::ShareProtected() |
Member Functions Documentation
BroadcastNvramStatusChange(const TDesC8 &)
IMPORT_C TInt | BroadcastNvramStatusChange | ( | const TDesC8 & | aNvram | ) | |
Broadcasts NVRAM status change to the plugins.
Parameters
const TDesC8 & aNvram | New NVRAM status. The new settings (delimited by "|") must differ from the Hayes defaults. |
CancelHandleCommand()
IMPORT_C TInt | CancelHandleCommand | ( | ) | |
Cancels a command handling request. Calling this API in editor mode also causes ATEXT to reset the information about the plugin currently handling byte-by-byte data. This causes the next command to be handled in normal mode.
CancelReceiveEcomPluginChange()
IMPORT_C TInt | CancelReceiveEcomPluginChange | ( | ) | |
Cancels ECOM plugin uninstall/install/version report receiving
CancelReceiveUnsolicitedResult(TUid &)
IMPORT_C TInt | CancelReceiveUnsolicitedResult | ( | TUid & | aUrcPluginUid | ) | |
Cancels a pending receiving request.
Parameters
TUid & aUrcPluginUid | UID of the plugin |
Connect(TATExtensionInterface, const TDesC8 &)
Establishes a session with server and connect to corresponding extension plugins specified by parameter TATExtensionInterface.
GetNextPartOfReply(TBuf8< KDefaultCmdBufLength > &, TInt &)
Gets the remaining reply of a previous handled command.
Parameters
TBuf8< KDefaultCmdBufLength > & aReply | The descriptor to hold the reply; |
TInt & aRemainingReplyLength | tells the length of remaining reply if it is not 0; the remainings can be fetched by GetNextPartOfReply(). |
GetNextSpecialCommand(TDes8 &, TBool &)
Gets the next special command RSS file entry. These commands are commands with a matching start but with any ending sequence. Command "ATD*99***1#" is one of these and the number of these commands should be kept minimal.
Parameters
TDes8 & aCmd | The next found special command |
TBool & aFirstSearch | If ETrue the search is done from the start, If EFalse the search continues from the old position. ATEXT sets this to EFalse after each successfull call. |
HandleCommand(TRequestStatus &, const TDesC8 &, TBuf8< KDefaultCmdBufLength > &, TPckg< TInt > &, TPckg< TATExtensionReplyType > &)
Handles a command. This API supports two modes: Normal mode (!EReplyTypeEditor) for normal use cases Editor mode (EReplyTypeEditor) for special AT commands with text mode
Notes for parameters below: (1) Command to be handled is used in normal mode only. Editor mode is entered when the first EReplyTypeEditor reply is received (5). Editor mode is ended when the first !EReplyTypeEditor reply is received (5). (2) Data received is character set independent; this API is called byte-by-byte in editor mode. (3) The reply string is not used in editor mode's text input. Only editor mode's start condition (prompt) and end condition (!EReplyTypeEditor) handle the possibly existing reply string. (4) The remaining reply length setting is not used in editor mode's text input. It is only used in editor mode's start condition (prompt) and end condition (!EReplyTypeEditor) (5) Normal mode: Other than EReplyTypeEditor reply. Editor mode: Started with EReplyTypeEditor, continued with EReplyTypeEditor, Ended with !EReplyTypeEditor Note: the first reply with EReplyTypeEditor is the "prompt". Subsequent replies with EReplyTypeEditor are ignored.
Note: The editor mode supported by this API should only be used for commands not requiring support for signals. These commands include cases such as DCD signal required by command AT+CMGS.
Parameters
TRequestStatus & aStatus | The request status |
const TDesC8 & aCmd | The command to be handled (1) or data for editor mode (2). |
TBuf8< KDefaultCmdBufLength > & aReply | The descriptor to hold reply to this command (3). |
TPckg< TInt > & aRemainingReplyLength | Tells the length of remaining reply if it is not 0; the remainings can be fetched by GetNextPartOfReply() (4). |
TPckg< TATExtensionReplyType > & aReplyType | Reply type for the handled AT command (1) or editor mode (2) (5). |
MarkUrcHandlingOwnership(TUid &)
IMPORT_C TInt | MarkUrcHandlingOwnership | ( | TUid & | aUrcPluginUid | ) | |
Marks URC handling ownership.
Parameters
TUid & aUrcPluginUid | UID of the plugin |
NumberOfPlugins()
IMPORT_C TInt | NumberOfPlugins | ( | ) | |
ReceiveEcomPluginChange(TRequestStatus &, TPckg< TUid > &, TPckg< TATExtensionEcomType > &)
Receives ECOM plugin uninstall/install/version reports
ReceiveUnsolicitedResult(TRequestStatus &, TBuf8< KDefaultUrcBufLength > &, TPckg< TUid > &)
Receives unsolicited result code from extension plugins.
ReportCharacterChange(TATExtensionCharType, TInt8)
Reports change to a value of a character
ReportExternalHandleCommandError()
IMPORT_C TInt | ReportExternalHandleCommandError | ( | ) | |
Reports about external handle command error condition. This is for cases when for example DUN decided the reply contained an error condition but the plugin is still handling the command internally. Example: "AT+TEST;+TEST2" was given in command line; "AT+TEST" returns non-EReplyTypeError condition and "AT+TEST2" returns EReplyTypeError. As the plugin(s) returning the non-EReplyTypeError may still have some ongoing operation then these plugins are notified about the external EReplyTypeError in command line processing. It is to be noted that HandleCommandCancel() is not sufficient to stop the processing as the command handling has already finished.
ReportHandleCommandAbort(TBool &)
IMPORT_C TInt | ReportHandleCommandAbort | ( | TBool & | aStop | ) | |
Reports about abort condition in command handling. This is for cases when for example DUN decided an abort condition was received from DTE (ITU-T V.250 5.6.1). This API is for notifying the plugin that abort was requested. However the plugin currently handling the command may ignore the request if it doesn't support abort for the command or it may return the changed condition with HandleCommandCompleted()
Parameters
TBool & aStop | If ETrue stop command line processing If EFalse continue command line processing |
ReportListenerUpdateReady(TUid &, TATExtensionEcomType)
ReportQuietModeChange(TBool)
IMPORT_C TInt | ReportQuietModeChange | ( | TBool | aMode | ) | |
Reports change to quiet mode. The quiet mode is off by default.
Parameters
TBool aMode | ETrue if quiet mode changed on, EFalse if off |
ReportVerboseModeChange(TBool)
IMPORT_C TInt | ReportVerboseModeChange | ( | TBool | aMode | ) | |
Reports change to verbose mode. The verbose mode is on by default.
Parameters
TBool aMode | ETrue if verbose mode changed on, EFalse if off |
SynchronousClose()
IMPORT_C TInt | SynchronousClose | ( | ) | |
Member Data Documentation
TATExtensionInterface
iConnectedIf
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.