CLbtContainerAO Class Reference

class CLbtContainerAO : public CActive

Inherits from

Public Member Functions
~CLbtContainerAO()
voidAddAsyncOpToQueue(CLbtContainerAOOperation *)
voidCancelAsyncRequest(TInt)
voidCompleteAsyncRequest(TInt)
voidCreateTriggerL(CLbtContainerTriggerEntry *, TInt, TRequestStatus &)
voidDeleteTriggersL(CLbtContainerUpdateFilter *, TInt, TRequestStatus &, TLbtSecurityPolicy)
voidGetTriggersL(const RArray< TLbtTriggerId > &, RPointerArray< CLbtContainerTriggerEntry > &, TInt &, TRequestStatus &, TLbtSecurityPolicy)
voidListTriggersL(CLbtContainerListOptions *, RPointerArray< CLbtContainerTriggerEntry > &, TInt, TRequestStatus &, TLbtSecurityPolicy)
CLbtContainerAO *NewL(RPointerArray< MLbtTriggerStore > &, RArray< CLbtContainer::TLbtTriggerStoreChangeObserver > &)
voidNotifyTriggerStoreReadyToServe()
voidStartNextAsyncOperation()
voidUpdateTriggerFiredStateL(RArray< TLbtTriggerId > &, TBool, TInt, TRequestStatus &)
voidUpdateTriggerL(CLbtContainerTriggerEntry &, TLbtTriggerDataMask, TLbtTriggerAttributeFieldsMask, TInt, TRequestStatus &, TLbtSecurityPolicy)
voidUpdateTriggersStateL(CLbtTriggerEntry::TLbtTriggerState, CLbtContainerUpdateFilter *, TInt, TLbtFireOnUpdate, TRequestStatus &, TLbtSecurityPolicy)
voidUpdateTriggersValidityL(TLbtTriggerDynamicInfo::TLbtTriggerValidity, RArray< TLbtTriggerId > &, TInt, TRequestStatus &, TLbtSecurityPolicy)
Private Member Functions
CLbtContainerAO(RPointerArray< MLbtTriggerStore > &, RArray< CLbtContainer::TLbtTriggerStoreChangeObserver > &)
voidConstructL()
voidDoCancel()
voidNotifyListeners()
voidProcessFilter(TBool &, TLbtTriggerEventMask &, TLbtTriggerEventMask &)
voidReverseArray(RPointerArray< CLbtContainerTriggerEntry > &)
TInt RunError(TInt)
voidRunL()
voidSortByDistance(RPointerArray< CLbtContainerTriggerEntry > &)
voidSortByName(RPointerArray< CLbtContainerTriggerEntry > &)
voidSortTriggers(RPointerArray< CLbtContainerTriggerEntry > &)
Inherited Functions
CActive::CActive(TInt)
CActive::Cancel()
CActive::Deque()
CActive::Extension_(TUint,TAny *&,TAny *)
CActive::IsActive()const
CActive::IsAdded()const
CActive::Priority()const
CActive::SetActive()
CActive::SetPriority(TInt)
CActive::~CActive()
CBase::CBase()
CBase::Delete(CBase *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
Inherited Enumerations
CActive:TPriority
Private Attributes
RPointerArray< CLbtContainerAOOperation >iAsyncOpQueue
TContainerAOOperation iAsyncRequest
TLbtTriggerAttributeFieldsMask iAttrMask
TRequestStatus *iClientStatus
TLbtTriggerDataMask iDataMask
RArray< CLbtContainer::TLbtTriggerStoreChangeObserver > &iObservers
CLbtListTriggerOptions::TLbtListTriggerSorting iSortingOption
TInt iTriggerStoreCtr
RPointerArray< MLbtTriggerStore > &iTriggerStores
Inherited Attributes
CActive::iStatus

Constructor & Destructor Documentation

CLbtContainerAO(RPointerArray< MLbtTriggerStore > &, RArray< CLbtContainer::TLbtTriggerStoreChangeObserver > &)

CLbtContainerAO(RPointerArray< MLbtTriggerStore > &aTriggerStores,
RArray< CLbtContainer::TLbtTriggerStoreChangeObserver > &aObservers
)[private]

~CLbtContainerAO()

~CLbtContainerAO()

Destructor.

If the notification is started, the destructor will cancel the notification.

Member Functions Documentation

AddAsyncOpToQueue(CLbtContainerAOOperation *)

voidAddAsyncOpToQueue(CLbtContainerAOOperation *aAsyncOp)

Parameters

CLbtContainerAOOperation * aAsyncOp

CancelAsyncRequest(TInt)

voidCancelAsyncRequest(TIntaOpId)

Parameters

TInt aOpId

CompleteAsyncRequest(TInt)

voidCompleteAsyncRequest(TIntaErr)

Parameters

TInt aErr

ConstructL()

voidConstructL()[private]

CreateTriggerL(CLbtContainerTriggerEntry *, TInt, TRequestStatus &)

voidCreateTriggerL(CLbtContainerTriggerEntry *aEntry,
TIntaOpCode,
TRequestStatus &aStatus
)

Parameters

CLbtContainerTriggerEntry * aEntry
TInt aOpCode
TRequestStatus & aStatus

DeleteTriggersL(CLbtContainerUpdateFilter *, TInt, TRequestStatus &, TLbtSecurityPolicy)

voidDeleteTriggersL(CLbtContainerUpdateFilter *aFilter,
TIntaOpCode,
TRequestStatus &aStatus,
TLbtSecurityPolicyaSecurityPolicy
)

Parameters

CLbtContainerUpdateFilter * aFilter
TInt aOpCode
TRequestStatus & aStatus
TLbtSecurityPolicy aSecurityPolicy

DoCancel()

voidDoCancel()[private, virtual]

Implements cancellation of an outstanding request.

This function is called as part of the active object's Cancel().

It must call the appropriate cancel function offered by the active object's asynchronous service provider. The asynchronous service provider's cancel is expected to act immediately.

DoCancel() must not wait for event completion; this is handled by Cancel().

CActive::Cancel

GetTriggersL(const RArray< TLbtTriggerId > &, RPointerArray< CLbtContainerTriggerEntry > &, TInt &, TRequestStatus &, TLbtSecurityPolicy)

voidGetTriggersL(const RArray< TLbtTriggerId > &aTriggerIds,
RPointerArray< CLbtContainerTriggerEntry > &aTriggers,
TInt &aOpId,
TRequestStatus &aStatus,
TLbtSecurityPolicyaSecurityPolicy = KLbtNullSecurity
)

Parameters

const RArray< TLbtTriggerId > & aTriggerIds
RPointerArray< CLbtContainerTriggerEntry > & aTriggers
TInt & aOpId
TRequestStatus & aStatus
TLbtSecurityPolicy aSecurityPolicy = KLbtNullSecurity

ListTriggersL(CLbtContainerListOptions *, RPointerArray< CLbtContainerTriggerEntry > &, TInt, TRequestStatus &, TLbtSecurityPolicy)

voidListTriggersL(CLbtContainerListOptions *aFilter,
RPointerArray< CLbtContainerTriggerEntry > &aTriggers,
TIntaOpCode,
TRequestStatus &aStatus,
TLbtSecurityPolicyaSecurityPolicy
)

Parameters

CLbtContainerListOptions * aFilter
RPointerArray< CLbtContainerTriggerEntry > & aTriggers
TInt aOpCode
TRequestStatus & aStatus
TLbtSecurityPolicy aSecurityPolicy

NewL(RPointerArray< MLbtTriggerStore > &, RArray< CLbtContainer::TLbtTriggerStoreChangeObserver > &)

CLbtContainerAO *NewL(RPointerArray< MLbtTriggerStore > &aTriggerStores,
RArray< CLbtContainer::TLbtTriggerStoreChangeObserver > &aObservers
)[static]

Construct a trigger change event notifier object.

When the object is constructed. The trigger change notification request is not issued to the Location Triggering Server. Client shall call CLbtTriggerChangeEventNotifier::Start() to start notification.

panic
LocTriggering ELbtServerBadHandle If the subsession of aLbt is not opened.

NotifyListeners()

voidNotifyListeners()[private]

NotifyTriggerStoreReadyToServe()

voidNotifyTriggerStoreReadyToServe()

ProcessFilter(TBool &, TLbtTriggerEventMask &, TLbtTriggerEventMask &)

voidProcessFilter(TBool &aIsRequested,
TLbtTriggerEventMask &aRequestedMask,
TLbtTriggerEventMask &aEventMask
)[private]

Parameters

TBool & aIsRequested
TLbtTriggerEventMask & aRequestedMask
TLbtTriggerEventMask & aEventMask

ReverseArray(RPointerArray< CLbtContainerTriggerEntry > &)

voidReverseArray(RPointerArray< CLbtContainerTriggerEntry > &aTriggers)[private]

Parameters

RPointerArray< CLbtContainerTriggerEntry > & aTriggers

RunError(TInt)

TInt RunError(TIntaError)[private, virtual]

Parameters

TInt aError

RunL()

voidRunL()[private, virtual]

Handles an active object's request completion event.

A derived class must provide an implementation to handle the completed request. If appropriate, it may issue another request.

The function is called by the active scheduler when a request completion event occurs, i.e. after the active scheduler's WaitForAnyRequest() function completes.

Before calling this active object's RunL() function, the active scheduler has:

1. decided that this is the highest priority active object with a completed request

2. marked this active object's request as complete (i.e. the request is no longer outstanding)

RunL() runs under a trap harness in the active scheduler. If it leaves, then the active scheduler calls RunError() to handle the leave.

Note that once the active scheduler's Start() function has been called, all user code is run under one of the program's active object's RunL() or RunError() functions.

CActiveScheduler::Start CActiveScheduler::Error CActiveScheduler::WaitForAnyRequest TRAPD

SortByDistance(RPointerArray< CLbtContainerTriggerEntry > &)

voidSortByDistance(RPointerArray< CLbtContainerTriggerEntry > &aTriggers)[private]

Parameters

RPointerArray< CLbtContainerTriggerEntry > & aTriggers

SortByName(RPointerArray< CLbtContainerTriggerEntry > &)

voidSortByName(RPointerArray< CLbtContainerTriggerEntry > &aTriggers)[private]

Parameters

RPointerArray< CLbtContainerTriggerEntry > & aTriggers

SortTriggers(RPointerArray< CLbtContainerTriggerEntry > &)

voidSortTriggers(RPointerArray< CLbtContainerTriggerEntry > &aTriggers)[private]

Parameters

RPointerArray< CLbtContainerTriggerEntry > & aTriggers

StartNextAsyncOperation()

voidStartNextAsyncOperation()

UpdateTriggerFiredStateL(RArray< TLbtTriggerId > &, TBool, TInt, TRequestStatus &)

voidUpdateTriggerFiredStateL(RArray< TLbtTriggerId > &aTriggerIds,
TBoolaFireBool,
TIntaOpCode,
TRequestStatus &aStatus
)

Parameters

RArray< TLbtTriggerId > & aTriggerIds
TBool aFireBool
TInt aOpCode
TRequestStatus & aStatus

UpdateTriggerL(CLbtContainerTriggerEntry &, TLbtTriggerDataMask, TLbtTriggerAttributeFieldsMask, TInt, TRequestStatus &, TLbtSecurityPolicy)

voidUpdateTriggerL(CLbtContainerTriggerEntry &aEntry,
TLbtTriggerDataMaskaDataMask,
TLbtTriggerAttributeFieldsMaskaAttrMask,
TIntaOpCode,
TRequestStatus &aStatus,
TLbtSecurityPolicyaSecurityPolicy
)

Parameters

CLbtContainerTriggerEntry & aEntry
TLbtTriggerDataMask aDataMask
TLbtTriggerAttributeFieldsMask aAttrMask
TInt aOpCode
TRequestStatus & aStatus
TLbtSecurityPolicy aSecurityPolicy

UpdateTriggersStateL(CLbtTriggerEntry::TLbtTriggerState, CLbtContainerUpdateFilter *, TInt, TLbtFireOnUpdate, TRequestStatus &, TLbtSecurityPolicy)

voidUpdateTriggersStateL(CLbtTriggerEntry::TLbtTriggerStateaState,
CLbtContainerUpdateFilter *aFilter,
TIntaOpCode,
TLbtFireOnUpdateaFireOnUpdate,
TRequestStatus &aStatus,
TLbtSecurityPolicyaSecurityPolicy
)

Parameters

CLbtTriggerEntry::TLbtTriggerState aState
CLbtContainerUpdateFilter * aFilter
TInt aOpCode
TLbtFireOnUpdate aFireOnUpdate
TRequestStatus & aStatus
TLbtSecurityPolicy aSecurityPolicy

UpdateTriggersValidityL(TLbtTriggerDynamicInfo::TLbtTriggerValidity, RArray< TLbtTriggerId > &, TInt, TRequestStatus &, TLbtSecurityPolicy)

voidUpdateTriggersValidityL(TLbtTriggerDynamicInfo::TLbtTriggerValidityaValidity,
RArray< TLbtTriggerId > &aTriggerIds,
TIntaOpCode,
TRequestStatus &aStatus,
TLbtSecurityPolicyaSecurityPolicy
)

Parameters

TLbtTriggerDynamicInfo::TLbtTriggerValidity aValidity
RArray< TLbtTriggerId > & aTriggerIds
TInt aOpCode
TRequestStatus & aStatus
TLbtSecurityPolicy aSecurityPolicy

Member Data Documentation

RPointerArray< CLbtContainerAOOperation > iAsyncOpQueue

RPointerArray< CLbtContainerAOOperation >iAsyncOpQueue[private]

TContainerAOOperation iAsyncRequest

TContainerAOOperation iAsyncRequest[private]

TLbtTriggerAttributeFieldsMask iAttrMask

TLbtTriggerAttributeFieldsMask iAttrMask[private]

TRequestStatus * iClientStatus

TRequestStatus *iClientStatus[private]

TLbtTriggerDataMask iDataMask

TLbtTriggerDataMask iDataMask[private]

RArray< CLbtContainer::TLbtTriggerStoreChangeObserver > & iObservers

RArray< CLbtContainer::TLbtTriggerStoreChangeObserver > &iObservers[private]

CLbtListTriggerOptions::TLbtListTriggerSorting iSortingOption

CLbtListTriggerOptions::TLbtListTriggerSorting iSortingOption[private]

TInt iTriggerStoreCtr

TInt iTriggerStoreCtr[private]

RPointerArray< MLbtTriggerStore > & iTriggerStores

RPointerArray< MLbtTriggerStore > &iTriggerStores[private]