2 * Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
4 * This component and the accompanying materials are made available
5 * under the terms of "Eclipse Public License v1.0"
6 * which accompanies this distribution, and is available
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
14 * Description: location triggering server client interface
20 #ifndef LBTTRIGGERCHANGEEVENTNOTIFIER_H
21 #define LBTTRIGGERCHANGEEVENTNOTIFIER_H
24 #include <lbttriggerchangeeventobserver.h>
27 * Helper class to receive trigger change event
28 * through observer interface.
30 * @see RLbt::NotifyTriggerChangeEvent
36 class CLbtTriggerChangeEventNotifier : public CActive
40 * Construct a trigger change event notifier object.
42 * When the object is constructed. The trigger change
43 * notification request is not issued to the
44 * Location Triggering Server. Client shall call
45 * CLbtTriggerChangeEventNotifier::Start() to start
48 * @param[in] aLbt A reference to RLbt object. The subsession
49 * must be opened. Otherwise a panic is raised.
50 * @param[in] aObserver A reference to the
51 * observer object to receive trigger change event.
52 * @param[in] aPriority An integer specifying the
53 * priority of this active object. CActive::TPriority
54 * defines a standard set of priorities.
56 * @panic LocTriggering ELbtServerBadHandle If the
57 * subsession of aLbt is not opened.
59 IMPORT_C static CLbtTriggerChangeEventNotifier* NewL(
61 MLbtTriggerChangeEventObserver& aObserver,
62 TInt aPriority = CActive::EPriorityStandard );
67 * If the notification is started, the
68 * destructor will cancel the notification.
70 IMPORT_C ~CLbtTriggerChangeEventNotifier();
73 * Start trigger change event notification.
75 * After this function is called, when any
76 * trigger is changed in Location Trigger Server, the
77 * client will be notified from the observer interface.
79 * Client shall call Cancel() function to stop the
80 * trigger change event notification.
82 IMPORT_C void Start();
86 //Derived from CActive
88 TInt RunError( TInt aError );
93 * C++ default constructor
95 CLbtTriggerChangeEventNotifier(
97 MLbtTriggerChangeEventObserver& aObserver,
98 TInt aPriority = CActive::EPriorityStandard );
101 * Symbian 2nd phase constructor
107 * Trigger change event object.
109 TLbtTriggerChangeEvent iChangeEvent;
112 * Reference to Lbt subsession.
117 * Reference to trigger change event observer.
119 MLbtTriggerChangeEventObserver& iObserver;
123 #endif // LBTTRIGGERCHANGEEVENTNOTIFIER_H