class RAnim |
Client-side handle to a server-side animation class.
This class should be sub-classed to provide a client side interface to the server side animation DLL. The server side animation DLL is derived from CAnim.
Public Member Functions | |
---|---|
~RAnim() | |
IMPORT_C void | Close() |
IMPORT_C void | Destroy() |
Protected Member Functions | |
---|---|
RAnim() | |
RAnim(RAnimDll &) | |
IMPORT_C void | AsyncCommandReply(TRequestStatus &, TInt, const TIpcArgs &) |
IMPORT_C void | Command(TInt, const TPtrC8 &) |
IMPORT_C void | Command(TInt) |
IMPORT_C TInt | CommandReply(TInt) |
IMPORT_C TInt | CommandReply(TInt, const TPtrC8 &) |
IMPORT_C TInt | CommandReply(TInt, const TDesC8 &, const TIpcArgs &) |
IMPORT_C TInt | Construct(const RWindowBase &, TInt, const TDesC8 &) |
IMPORT_C TInt | Construct(const RWindowBase &, TInt, const TDesC8 &, const TIpcArgs &) |
IMPORT_C TInt | Construct(const RWsSprite &, TInt, const TDesC8 &) |
IMPORT_C TInt | Construct(const RWsSprite &, TInt, const TDesC8 &, const TIpcArgs &) |
Private Attributes | |
---|---|
RAnimDll * | iAnimDll |
TInt32 | iHandle |
IMPORT_C | RAnim | ( | ) | [protected] |
Default constructor. Developers should use the other constructor overload.
IMPORT_C | RAnim | ( | RAnimDll & | aDll | ) | [protected] |
Protected C++ constructor.
This constructor should be used to construct an animation object from a given animation DLL. The DLL must be loaded first, see the discussion of RAnimDll.
RAnimDll & aDll | The animation DLL. |
IMPORT_C void | AsyncCommandReply | ( | TRequestStatus & | aRequestStatus, |
TInt | aOpcode, | |||
const TIpcArgs & | aIpcArgs | |||
) | [protected] |
Sends a command and its arguments to the server-side CAnim instance asynchronously.
The IPC (inter-process communication) arguments are passed to the CAnim-derived class' CommandReplyL function, where the behaviour should be implemented. The request is not buffered - rather the function executes asynchronously. The first and second slots of the TIpcArgs parameter are reserved for internal use.
If the code calling this function is itself an API that is asynchronous (i.e. if the TRequestStatus passed into this function is simply a parameter to a higher-level API), then that higher-level API should typically provide a corresponding "Cancel" function that its own clients can use to cancel their asynchronous request - this would typically be implemented by the higher-level API by using RAnim::CommandReply.
CommandReply() Command() CAnim::CommandReplyL()
TRequestStatus & aRequestStatus | Set initially by the function to KRequestPending. Then when this asynchronous function at some potentially later point in time "completes", aRequestStatus is set to the completion code which is a value defined by the animation writer (i.e. the value that the server-side CAnim-derived class' CommandReplyL returns or leaves with). The value may, in some cases, be defined to be an error code. |
TInt aOpcode | An opcode meaningful to the server-side CAnim-derived class. |
const TIpcArgs & aIpcArgs | Inter-process communication arguments which will be passed to the server side object. Panics if either the first or second "slot" is set to anything other than TIpcArgs::ENothing. |
IMPORT_C void | Close | ( | ) | [virtual] |
Sends the close command.
This frees resources belonging to an animation object. It would be called to release resources when the RAnim is owned in-line by another object (so that destruction is automatic).
This function always causes a flush of the window server buffer.
IMPORT_C void | Command | ( | TInt | aOpcode, |
const TPtrC8 & | aArgs | |||
) | [protected] |
Sends a command and its arguments to the server-side CAnim instance, and returns immediately.
Commands issued by this function may be buffered before being passed to the server.
Server-side errors cannot be detected, so Command() should not be used for operations which could fail or which may leave. Use CommandReply() for those. Although the window server will not fail due to errors not being returned to the client side, client side behaviour will almost certainly not be correct if errors have been generated but not received.
Use of this function results in a server-side call to the equivalent CAnim::Command().
CommandReply() AsyncCommandReply() CAnim::Command()
IMPORT_C void | Command | ( | TInt | aOpcode | ) | [protected] |
Sends a command to the server-side CAnim instance, and returns immediately.
Commands issued by this function may be buffered before being passed to the server.
Server-side errors cannot be detected, so Command() should not be used for operations which could fail or which may leave. Use CommandReply() for those. Although the window server will not fail due to errors not being returned to the client side, client side behaviour will almost certainly not be correct if errors have been generated but not received.
Use of this function results in a server-side call to the equivalent CAnim::Command().
CommandReply() AsyncCommandReply() CAnim::Command()
TInt aOpcode | An operation meaningful to the server-side CAnim object. |
IMPORT_C TInt | CommandReply | ( | TInt | aOpcode | ) | [protected] |
Sends a command to the server-side CAnim instance, and waits for a response.
This function executes synchronously and returns the code returned by the server-side method CAnim::CommandReplyL(). The request is not buffered.
This function always causes a flush of the window server buffer.
Command() AsyncCommandReply() CAnim::CommandReplyL()
TInt aOpcode | An opcode meaningful to the server-side CAnim-derived class. |
IMPORT_C TInt | CommandReply | ( | TInt | aOpcode, |
const TPtrC8 & | aArgs | |||
) | [protected] |
Sends a command and its arguments to the server-side CAnim instance, and waits for a response.
The packaged command arguments are passed to the matching server side function, where the behaviour should be implemented. The request is not buffered. The function executes synchronously and returns the code returned by the server-side method CAnim::CommandReplyL().
This function always causes a flush of the window server buffer.
Command() AsyncCommandReply() CAnim::CommandReplyL()
IMPORT_C TInt | CommandReply | ( | TInt | aOpcode, |
const TDesC8 & | aArgs, | |||
const TIpcArgs & | aIpcArgs | |||
) | [protected] |
Sends a command and its arguments to the server-side CAnim instance, and waits for a response.
The IPC (inter-process communication) arguments are passed to the matching server side function, where the behaviour should be implemented. The request is not buffered. The function executes synchronously and returns the code returned by the server-side method CAnim::CommandReplyL(). The first slot of the TIpcArgs parameter is reserved for internal use.
This function always causes a flush of the window server buffer.
Command() AsyncCommandReply() CAnim::CommandReplyL()
TInt aOpcode | An opcode meaningful to the server-side CAnim-derived class. |
const TDesC8 & aArgs | Packaged arguments which will be passed to the server side object. |
const TIpcArgs & aIpcArgs | Inter-process communication arguments which will be passed to the server side object. Panics if the first "slot" is set to anything other than TIpcArgs::ENothing. |
IMPORT_C TInt | Construct | ( | const RWindowBase & | aDevice, |
TInt | aType, | |||
const TDesC8 & | aParams | |||
) | [protected] |
Completes construction of the object based on a window device, and creates the server-side animation system.
Construction information is passed to the server side via aType and aParams. The server then passes the information to the function CreateInstanceL() inside the Anim DLL.
This function always causes a flush of the window server buffer.
CAnim::ConstructL() CAnimDll::CreateInstanceL()
const RWindowBase & aDevice | A window device. |
TInt aType | The type of this animation object, as understood by CAnimDll::CreateInstanceL(). |
const TDesC8 & aParams | Packaged arguments which will be passed to the server side object to tell it how to construct itself or initialise itself. |
IMPORT_C TInt | Construct | ( | const RWindowBase & | aDevice, |
TInt | aType, | |||
const TDesC8 & | aParams, | |||
const TIpcArgs & | aIpcArgs | |||
) | [protected] |
Completes construction of the object based on a window device, and creates the server-side animation system.
Construction information is passed to the server side via aType and aParams. The server then passes the information to the function CreateInstanceL() inside the Anim DLL.
This function always causes a flush of the window server buffer.
CAnim::ConstructL() CAnimDll::CreateInstanceL()
const RWindowBase & aDevice | A window device. |
TInt aType | The type of this animation object, as understood by CAnimDll::CreateInstanceL(). |
const TDesC8 & aParams | Packaged arguments which will be passed to the server side object to tell it how to construct itself or initialise itself. |
const TIpcArgs & aIpcArgs | Inter-process communication arguments which will be passed to the server side object. Panics if the first "slot" is set to anything other than TIpcArgs::ENothing. |
IMPORT_C TInt | Construct | ( | const RWsSprite & | aDevice, |
TInt | aType, | |||
const TDesC8 & | aParams | |||
) | [protected] |
Completes construction of the Anim DLL based on a sprite.
Construction information is passed to the server side via aType and aParams. The server then passes the information to the function CreateInstanceL() inside the Anim DLL.
This function always causes a flush of the window server buffer.
CAnim::ConstructL() CAnimDll::CreateInstanceL()
IMPORT_C TInt | Construct | ( | const RWsSprite & | aDevice, |
TInt | aType, | |||
const TDesC8 & | aParams, | |||
const TIpcArgs & | aIpcArgs | |||
) | [protected] |
Completes construction of the Anim DLL based on a sprite.
Construction information is passed to the server side via aType and aParams. The server then passes the information to the function CreateInstanceL() inside the Anim DLL.
This function always causes a flush of the window server buffer.
CAnim::ConstructL() CAnimDll::CreateInstanceL()
const RWsSprite & aDevice | A sprite. |
TInt aType | The type of this animation object, as understood by CAnimDll::CreateInstanceL(). |
const TDesC8 & aParams | Packaged arguments which will be passed to the server side object to tell it how to construct itself or initialise itself. |
const TIpcArgs & aIpcArgs | Inter-process communication arguments which will be passed to the server side object. Panics if the first "slot" is set to anything other than TIpcArgs::ENothing. |
IMPORT_C void | Destroy | ( | ) |
Closes and deletes the server-side animation object.
This should be called on heap allocated objects.
This function always causes a flush of the window server buffer.
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.