RScsClientSubsessionBase Class Reference

class RScsClientSubsessionBase : public RSubSessionBase

This class is used to send messages to server-side SCS subsessions. This class cannot be used directly - the implementor must define a subclass.

Inherits from

Constructor & Destructor Documentation

RScsClientSubsessionBase()

IMPORT_C RScsClientSubsessionBase ( ) [protected]

This protected constructor prevents the class from being instantiated directly.

Member Functions Documentation

CallSubsessionFunction(TInt)

IMPORT_C TInt CallSubsessionFunction ( TInt aFunction ) const [protected]

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

TInt aFunction Subsession command identifier. Bits 31:24 must be zero, because they are reserved for SCS commands.

CallSubsessionFunction(TInt, const TIpcArgs &)

IMPORT_C TInt CallSubsessionFunction ( TInt aFunction,
const TIpcArgs & aArgs
) const [protected]

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

TInt aFunction Subsession command identifier. Bits 31:24 must be zero, because they are reserved for SCS commands.
const TIpcArgs & aArgs Standard IPC arguments. The fourth argument cannot be used because that is reserved for the subsession handle.

CallSubsessionFunction(TInt, const TIpcArgs &, TRequestStatus &)

IMPORT_C void CallSubsessionFunction ( TInt aFunction,
const TIpcArgs & aArgs,
TRequestStatus & aStatus
) const [protected]

Send a command to the corresponding server-side subsession.

Parameters

TInt aFunction Subsession command identifier. Bits 31:24 must be zero, because they are reserved for SCS commands.
const TIpcArgs & aArgs Standard IPC arguments. The fourth argument cannot be used because that is reserved for the subsession handle.
TRequestStatus & aStatus The server completes this object when it has finished handling the session.

CancelSubsessionFunction(TInt)

IMPORT_C void CancelSubsessionFunction ( TInt aFunction ) const [protected]

Cancel an outstanding subsession request. This has no effect if the request is not outstanding.

Parameters

TInt aFunction Implementation function. This must be the same value that was supplied to CallSubsessionFunction.

Close()

IMPORT_C void Close ( )

Closes the subsession, releasing resources on the server side.

CreateSubsession(const RScsClientBase &, TInt, const TIpcArgs &)

IMPORT_C TInt CreateSubsession ( const RScsClientBase & aSession,
TInt aFunction,
const TIpcArgs & aArgs
) [protected]

Create a subsession over the supplied session.

Parameters

const RScsClientBase & aSession Session which will host the subsession.
TInt aFunction Command identifier. Bits 31:24 must be zero, because they are reserved for SCS commands.
const TIpcArgs & aArgs Standard IPC arguments. The fourth argument cannot be used because that is reserved for the subsession handle.