#include <scs/scsclient.h>
Link against: scsclient.lib
| class RScsClientSubsessionBase : public RSubSessionBase |
| Public Member Functions | |
|---|---|
| IMPORT_C void | Close() |
| Protected Member Functions | |
|---|---|
| RScsClientSubsessionBase() | |
| IMPORT_C TInt | CallSubsessionFunction(TInt) |
| IMPORT_C TInt | CallSubsessionFunction(TInt, const TIpcArgs &) |
| IMPORT_C void | CallSubsessionFunction(TInt, const TIpcArgs &, TRequestStatus &) |
| IMPORT_C void | CancelSubsessionFunction(TInt) |
| IMPORT_C TInt | CreateSubsession(const RScsClientBase &, TInt, const TIpcArgs &) |
This class is used to send messages to server-side SCS subsessions. This class cannot be used directly - the implementor must define a subclass.
| IMPORT_C | RScsClientSubsessionBase | ( | ) | [protected] |
This protected constructor prevents the class from being instantiated directly.
Send a command to the corresponding server-side subsession. The subclass uses this function instead of directly calling RSubSessionBase::SendReceive because it adds the SCS code which marks this as a subsession call. Therefore, it can be routed to the subsession object on the server side without any custom decoding.
| Parameters | |
|---|---|
| aFunction | Subsession command identifier. Bits 31:24 must be zero, because they are reserved for SCS commands. |
Send a command to the corresponding server-side subsession. The subclass uses this function instead of directly calling RSubSessionBase::SendReceive because it adds the SCS code which marks this as a subsession call. Therefore, it can be routed to the subsession object on the server side without any custom decoding.
| Parameters | |
|---|---|
| aFunction | Subsession command identifier. Bits 31:24 must be zero, because they are reserved for SCS commands. |
| aArgs | Standard IPC arguments. The fourth argument cannot be used because that is reserved for the subsession handle. |
| IMPORT_C void | CallSubsessionFunction | ( | TInt | aFunction, |
| const TIpcArgs & | aArgs, | |||
| TRequestStatus & | aStatus | |||
| ) | const [protected] | |||
Send a command to the corresponding server-side subsession.
| Parameters | |
|---|---|
| aFunction | Subsession command identifier. Bits 31:24 must be zero, because they are reserved for SCS commands. |
| aArgs | Standard IPC arguments. The fourth argument cannot be used because that is reserved for the subsession handle. |
| aStatus | The server completes this object when it has finished handling the session. |
| IMPORT_C void | CancelSubsessionFunction | ( | TInt | aFunction | ) | const [protected] |
Cancel an outstanding subsession request. This has no effect if the request is not outstanding.
| Parameters | |
|---|---|
| aFunction | Implementation function. This must be the same value that was supplied to CallSubsessionFunction. |
| IMPORT_C TInt | CreateSubsession | ( | const RScsClientBase & | aSession, |
| TInt | aFunction, | |||
| const TIpcArgs & | aArgs | |||
| ) | [protected] | |||
Create a subsession over the supplied session.
| Parameters | |
|---|---|
| aSession | Session which will host the subsession. |
| aFunction | Command identifier. Bits 31:24 must be zero, because they are reserved for SCS commands. |
| aArgs | Standard IPC arguments. The fourth argument cannot be used because that is reserved for the subsession handle. |