RScsClientSubsessionBase Class Reference

#include <scs/scsclient.h>

Link against: scsclient.lib

class RScsClientSubsessionBase : public RSubSessionBase

Inherits from

  • RScsClientSubsessionBase

    Detailed Description

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

    Constructor & Destructor Documentation

    RScsClientSubsessionBase ( )

    IMPORT_CRScsClientSubsessionBase()[protected]

    This protected constructor prevents the class from being instantiated directly.

    Member Function Documentation

    CallSubsessionFunction ( TInt )

    IMPORT_C TIntCallSubsessionFunction(TIntaFunction)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.

    ParameterDescription
    aFunctionSubsession command identifier. Bits 31:24 must be zero, because they are reserved for SCS commands.

    Returns: Error code with which the server completed the request.

    CallSubsessionFunction ( TInt, const TIpcArgs & )

    IMPORT_C TIntCallSubsessionFunction(TIntaFunction,
    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.

    ParameterDescription
    aFunctionSubsession command identifier. Bits 31:24 must be zero, because they are reserved for SCS commands.
    aArgsStandard IPC arguments. The fourth argument cannot be used because that is reserved for the subsession handle.

    Returns: Error code with which the server completed the request.

    CallSubsessionFunction ( TInt, const TIpcArgs &, TRequestStatus & )

    IMPORT_C voidCallSubsessionFunction(TIntaFunction,
    const TIpcArgs &aArgs,
    TRequestStatus &aStatus
    )const [protected]

    Send a command to the corresponding server-side subsession.

    ParameterDescription
    aFunctionSubsession command identifier. Bits 31:24 must be zero, because they are reserved for SCS commands.
    aArgsStandard IPC arguments. The fourth argument cannot be used because that is reserved for the subsession handle.
    aStatusThe server completes this object when it has finished handling the session.

    CancelSubsessionFunction ( TInt )

    IMPORT_C voidCancelSubsessionFunction(TIntaFunction)const [protected]

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

    ParameterDescription
    aFunctionImplementation function. This must be the same value that was supplied to CallSubsessionFunction.

    Close ( )

    IMPORT_C voidClose()

    Closes the subsession, releasing resources on the server side.

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

    IMPORT_C TIntCreateSubsession(const RScsClientBase &aSession,
    TIntaFunction,
    const TIpcArgs &aArgs
    )[protected]

    Create a subsession over the supplied session.

    ParameterDescription
    aSessionSession which will host the subsession.
    aFunctionCommand identifier. Bits 31:24 must be zero, because they are reserved for SCS commands.
    aArgsStandard IPC arguments. The fourth argument cannot be used because that is reserved for the subsession handle.

    Returns: Error code with which the server completed the request.