CSmsuActiveBase Class Reference

class CSmsuActiveBase : public CActive

Base class for SMS active objects.

Inherits from

Constructor & Destructor Documentation

CSmsuActiveBase(TInt)

IMPORT_C CSmsuActiveBase ( TInt aPriority ) [protected]

Constructor.

capability
None

Parameters

TInt aPriority Active object priority

~CSmsuActiveBase()

IMPORT_C ~CSmsuActiveBase ( )
Destructor.
capability
None

Member Functions Documentation

Complete(TInt)

IMPORT_C void Complete ( TInt aStatus ) [protected, virtual]

Object use complete.

This is called at the end of the RunL() , if the RunL() has not reset the object to be active.

If an observer has been set (see Queue() ), DoComplete() is called, and that observer is signalled with the object status.

capability
None

Parameters

TInt aStatus Active object status word

CompleteMyself(TInt, TBool)

IMPORT_C void CompleteMyself ( TInt aStatus,
TBool aSetActive = ETrue
) [protected]

Signals this object.

capability
None

Parameters

TInt aStatus Status code with which to signal the object
TBool aSetActive = ETrue True to set the object to be active

CompleteMyselfAfterTimeout(TInt)

IMPORT_C void CompleteMyselfAfterTimeout ( TInt aStatus ) [protected]

This function is used to request that the active object is completed after the current timeout is handled. When a timeout occurs, the active object is cancelled which requires DoCancel() to be called. However the object is active until after the DoCancel() meaning it is not possible to make a new request. This function requests a second call to Complete() (via RunL etc.) which is done without the object being active.

This function can only be called when a timeout occurs, otherwise it would not get actioned.

capability
None

Parameters

TInt aStatus Status code with which to signal the object

ConstructTimeoutL()

IMPORT_C void ConstructTimeoutL ( ) [protected]

Constructs a timer.

This is required before use of TimedSetActive() .
capability
None

DoComplete(TInt &)

void DoComplete ( TInt & ) [protected, inline, virtual]

Implements derived-class specified Complete() behaviour.

This is called from Complete() .

Parameters

TInt &

DoRunL()

void DoRunL ( ) [protected, pure virtual]

Implements derived-class specified RunL() behaviour.

This is called from RunL() .

Queue(TRequestStatus &)

IMPORT_C void Queue ( TRequestStatus & aStatus ) [protected]

Sets an asynchronous observer to which to report completion of this object.

capability
None

Parameters

TRequestStatus & aStatus Asynchronous status word of the observer

RunError(TInt)

IMPORT_C TInt RunError ( TInt aError ) [protected, virtual]

Handles leaves occurring in the RunL() function.

It calls Complete() .

capability
None

Parameters

TInt aError RunL() leave code

RunL()

IMPORT_C void RunL ( ) [protected, virtual]

Handles the object's request completion event.

If a timer has been set with TimedSetActive() , this is cancelled. DoRunL() is then called. If, after this, the object is not active, Complete() is called.
capability
None

TimedOut()

IMPORT_C TBool TimedOut ( ) const [protected]

Determines if the object has timed out.

TimedSetActive

TimedSetActive(const TTimeIntervalMicroSeconds32 &)

IMPORT_C void TimedSetActive ( const TTimeIntervalMicroSeconds32 & aTimeIntervalMicroSeconds32 ) [protected]

Activates the object, and sets it to be completed after a specified time.

capability
None

Parameters

const TTimeIntervalMicroSeconds32 & aTimeIntervalMicroSeconds32 Time after which to complete the object

TimedSetActiveCancel()

IMPORT_C void TimedSetActiveCancel ( ) [protected]

Member Data Documentation

TRequestStatus * iReport

TRequestStatus * iReport [protected]

Observer, set by Queue() .

CSmsuTimeout * iSmsuTimeout

CSmsuTimeout * iSmsuTimeout [protected]

Timer, to be activated by TimedSetActive() .