Symbian
Symbian Developer Library

SYMBIAN OS V9.4

Feedback

[Index] [Previous] [Next]

#include <e32cmn.h>

Class TIpcArgs

class TIpcArgs;

Description

A Version 2 client/server class that clients use to package the arguments to be sent to a server.

The object can package up to 4 arguments together with information about each argument's type, width and accessibility; it is also possible for the package to contain zero arguments. In addition to the default constructor, the class has four templated constructors, allowing an object of this type to be constructed for 0, 1, 2, 3 or 4 arguments.

Internally, the arguments are stored in a simple TInt array. Consecutive arguments in a constructor's parameter list are put into consecutive slots in the array. The TIpcArgs::Set(TInt,TNothing) overloaded functions can be used to set argument values into specific slots within this array.

Members

Defined in TIpcArgs:


Construction and destruction


TIpcArgs()

inline TIpcArgs();

Description

Default constructor.

An argument package constructed using this constructor has no arguments; however, arguments can subsequently be set into this argument package object using the TIpcArgs::Set(TInt,TNothing) member functions.


TIpcArgs(T0)

inline TIpcArgs(T0 a0);

Description

A templated constructor that constructs the argument package; it takes 1 argument.

Parameters

T0 a0

An argument of general class type T0 to be contained by this object.


TIpcArgs(T0,T1)

inline TIpcArgs(T0 a0, T1 a1);

Description

A templated constructor that constructs the argument package; it takes 2 arguments.

Parameters

T0 a0

An argument of general class type T0 to be contained by this object.

T1 a1

An argument of general class type T1 to be contained by this object.


TIpcArgs(T0,T1,T2)

inline TIpcArgs(T0 a0, T1 a1, T2 a2);

Description

A templated constructor that constructs the argument package; it takes 3 arguments.

Parameters

T0 a0

An argument of general class type T0 to be contained by this object.

T1 a1

An argument of general class type T1 to be contained by this object.

T2 a2

An argument of general class type T2 to be contained by this object.


TIpcArgs(T0,T1,T2,T3)

inline TIpcArgs(T0 a0, T1 a1, T2 a2, T3 a3);

Description

A templated constructor that constructs the argument package; it takes 4 arguments.

Parameters

T0 a0

An argument of general class type T0 to be contained by this object.

T1 a1

An argument of general class type T1 to be contained by this object.

T2 a2

An argument of general class type T2 to be contained by this object.

T3 a3

An argument of general class type T3 to be contained by this object.

[Top]


Member functions


Set(TInt,TNothing)

inline void Set(TInt aIndex, TNothing);

Description

Sets an argument to default value and type.

Parameters

TInt aIndex

TIpcArgs::TNothing


Set(TInt,TInt)

inline void Set(TInt aIndex, TInt aValue);

Description

Sets an argument value of TInt type.

Parameters

TInt aIndex

An index value that identifies the slot in the array of arguments into which the argument value is to be placed. This must be a value in the range 0 to 3.

TInt aValue

The argument value.


Set(TInt,const TAny *)

inline void Set(TInt aIndex, const TAny *aValue);

Description

Sets an argument value of TAny* type.

Parameters

TInt aIndex

An index value that identifies the slot in the array of arguments into which the argument value is to be placed. This must be a value in the range 0 to 3.

const TAny *aValue

The argument value.


Set(TInt,RHandleBase)

inline void Set(TInt aIndex, RHandleBase aValue);

Description

Sets an argument value of RHandleBase type.

Parameters

TInt aIndex

An index value that identifies the slot in the array of arguments into which the argument value is to be placed. This must be a value in the range 0 to 3.

RHandleBase aValue

The argument value.


Set(TInt,const TDesC8 *)

inline void Set(TInt aIndex, const TDesC8 *aValue);

Description

Sets an argument value TDesC8* type.

Parameters

TInt aIndex

An index value that identifies the slot in the array of arguments into which the argument value is to be placed. This must be a value in the range 0 to 3.

const TDesC8 *aValue

The argument value.


Set(TInt,const TDesC16 *)

inline void Set(TInt aIndex, const TDesC16 *aValue);

Description

Sets an argument value of TDesC16* type.

Parameters

TInt aIndex

An index value that identifies the slot in the array of arguments into which the argument value is to be placed. This must be a value in the range 0 to 3.

const TDesC16 *aValue

The argument value.


Set(TInt,TDes8 *)

inline void Set(TInt aIndex, TDes8 *aValue);

Description

Sets an argument value of TDes8* type.

Parameters

TInt aIndex

An index value that identifies the slot in the array of arguments into which the argument value is to be placed. This must be a value in the range 0 to 3.

TDes8 *aValue

The argument value.


Set(TInt,TDes16 *)

inline void Set(TInt aIndex, TDes16 *aValue);

Description

Sets an argument value of TDes16* type.

Parameters

TInt aIndex

An index value that identifies the slot in the array of arguments into which the argument value is to be placed. This must be a value in the range 0 to 3.

TDes16 *aValue

The argument value.

[Top]


Member enumerations


Enum TNothing

TNothing

Description

Indicates a Null argument.

ENothing

An enum value that can be used to indicate an empty or unused argument to a server. For example:

                  TIpcArgs args(arg1, TIpcArgs::ENothing, arg2);

This argument will have an undefined value when the server receives the message.

[Top]


Member data


iArgs

TInt iArgs[KMaxMessageArguments];

Description

The location where the message arguments are stored.

There is no reason to access this data member directly and it should be considered as internal.


iFlags

TInt iFlags;

Description

The location where the flag bits describing the argument types are stored.

The symbolic values describing the argument types are internal to Symbian, and there is therefore no reason to access this data member directly. It should be considered as internal.