class TMMFMessage |
Encapsulation of an RMessage or an RMessage2 to provide protection to controller plugins from the changes occurring with secure APIs.
Adds required destination information to the message so the controller framework can determine which object the message is for.
Adds capability to check whether the message has been completed.
Allows two descriptors to be read from the client, and one descriptor to be copied to the client.
RMMFControllerProxy::SendAsync
7.0s
Public Member Functions | |
---|---|
TMMFMessage(const TMMFMessage &) | |
TMMFMessage(const RMmfIpcMessage &) | |
IMPORT_C void | AdoptFileHandleFromClientL(TInt, TInt, RFile &) |
IMPORT_C void | Complete(TInt) |
IMPORT_C const TMMFMessageDestination & | Destination() |
IMPORT_C void | FetchDestinationL() |
IMPORT_C TInt | Function() |
IMPORT_C TBool | IsCompleted() |
IMPORT_C TInt | ReadData1FromClient(TDes8 &) |
IMPORT_C void | ReadData1FromClientL(TDes8 &) |
IMPORT_C TInt | ReadData2FromClient(TDes8 &) |
IMPORT_C void | ReadData2FromClientL(TDes8 &) |
IMPORT_C TInt | SizeOfData1FromClient() |
IMPORT_C TInt | SizeOfData2FromClient() |
IMPORT_C TInt | WriteDataToClient(const TDesC8 &) |
IMPORT_C void | WriteDataToClientL(const TDesC8 &) |
Private Attributes | |
---|---|
TBool | iAmCompleted |
TMMFMessageDestination | iDestination |
TInt | iDummyPadding |
TInt | iFunction |
RMessagePtr2 | iMessage |
IMPORT_C | TMMFMessage | ( | const TMMFMessage & | aMessage | ) |
Copy constructor.
A controller plugin should use this to take a copy of the message when it must wait for some other event before completing it.
7.0s
const TMMFMessage & aMessage | The message object to copy. |
IMPORT_C | TMMFMessage | ( | const RMmfIpcMessage & | aMessage | ) |
Constructs a TMMFMessage from an RMmfIpcMessage.
7.0s
const RMmfIpcMessage & aMessage | The handle to the remote message. |
IMPORT_C void | AdoptFileHandleFromClientL | ( | TInt | aFsHandleIndex, |
TInt | aFileHandleIndex, | |||
RFile & | aFile | |||
) |
IMPORT_C void | Complete | ( | TInt | aReason | ) |
Signals to the client that its request has been completed.
Equivalent to RMessage::Complete.
7.0s
TInt aReason | The result code to be given back to the client. |
IMPORT_C const TMMFMessageDestination & | Destination | ( | ) |
Returns the destination of the message.
The destination of the message, consisting of a UID defining the interface and the handle of the destination object.
7.0s
IMPORT_C void | FetchDestinationL | ( | ) |
Gets the destination info from the client.
7.0s
IMPORT_C TInt | Function | ( | ) |
Returns an integer describing the function being called. Equivalent to RMessage::Function().
The function being called over IPC.
RMessage::Function()
7.0s
IMPORT_C TBool | IsCompleted | ( | ) |
Checks whether this message has already been completed.
A boolean indicating if the message has been completed. ETrue if the message has been completed, EFalse if not.
7.0s
IMPORT_C TInt | ReadData1FromClient | ( | TDes8 & | aDes | ) |
Copy the first descriptor from the client.
One of the system-wide error codes. In particular, KErrBadDescriptor will be returned if the client did not provide a valid descriptor.
7.0s
TDes8 & aDes | A descriptor defining the area of memory into which the data from the client will be copied. Note, the descriptor must be of sufficient size. |
IMPORT_C void | ReadData1FromClientL | ( | TDes8 & | aDes | ) |
Copy the first descriptor from the client.
This functino can leave with one of the system-wide error codes. In particular, the leave code KErrBadDescriptor will be used if the client did not provide a valid descriptor.
7.0s
TDes8 & aDes | A descriptor defining the area of memory into which the data from the client will be copied. Note, the descriptor must be of sufficient size. |
IMPORT_C TInt | ReadData2FromClient | ( | TDes8 & | aDes | ) |
Copies the second descriptor from the client.
One of the system-wide error codes. In particular, KErrBadDescriptor will be returned if the client did not provide a valid descriptor.
7.0s
TDes8 & aDes | A descriptor defining the area of memory into which the data from the client will be copied. Note, the descriptor must be of sufficient size. |
IMPORT_C void | ReadData2FromClientL | ( | TDes8 & | aDes | ) |
Copies the second descriptor from the client.
This function can leave with one of the system-wide error codes. In particular, the leave code KErrBadDescriptor will be used if the client did not provide a valid descriptor.
7.0s
TDes8 & aDes | A descriptor defining the area of memory into which the data from the client will be copied. Note, the descriptor must be of sufficient size. |
IMPORT_C TInt | SizeOfData1FromClient | ( | ) |
Returns the size of the first descriptor that can be copied over from the client.
Use this to create a descriptor of appropriate size before reading the data from the client.
The size of data 1.
7.0s
IMPORT_C TInt | SizeOfData2FromClient | ( | ) |
Returns the size of the second descriptor that can be copied over from the client.
Use this to create a descriptor of appropriate size before reading the data from the client.
The size of data 2.
7.0s
IMPORT_C TInt | WriteDataToClient | ( | const TDesC8 & | aDes | ) |
Copies data back to the client.
One of the system-wide error codes. In particular, the error code KErrBadDescriptor will be returned if the client did not provide a valid descriptor.
7.0s
const TDesC8 & aDes | The data to be copied back to the client. Note that the client must have already created a descriptor of sufficient size for the data to be copied into. |
IMPORT_C void | WriteDataToClientL | ( | const TDesC8 & | aDes | ) |
Copies the data back to the client.
This function can leave with one of the system-wide error codes. In particular, the leave code KErrBadDescriptor will be used if the client did not provide a valid descriptor.
7.0s
const TDesC8 & aDes | The data to be copied back to the client. Note that the client must have already created a descriptor of sufficient size for the data to be copied into. |
TMMFMessageDestination | iDestination | [private] |
The destination of this message.