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: Constants and data types used by RLbt client.
23 #include <lbspositioninfo.h>
24 #include <lbtgeoareabase.h>
27 * Trigger identity data type.
31 typedef TUint32 TLbtTriggerId;
34 * Defines the null trigger ID.
38 const TLbtTriggerId KLbtNullTriggerId = 0;
41 * Defines maximum length of the trigger name.
45 const TInt KLbtMaxNameLength = 256;
48 * Error code used when a client application tries
49 * to create a trigger with trigger area smaller than
50 * the system's minimum size of trigger area.
54 const TInt KErrTriggerAreaTooSmall = -20000;
57 * Error code used when a client application tries to create start-up
58 * triggers beyond the limit specified by the system
62 const TInt KLbtErrMaxTriggerLimitExceeded = -20001;
65 * Error code used when a client application tries to create triggers beyond
66 * the total number of enabled and valid triggers limit define by the system
70 const TInt KLbtErrMaxEnabledValidTriggersLimitExceeded = -20002;
73 * Trigger entry attribute fields mask.
75 * @see CLbtTriggerEntry::TAttribute
79 typedef TUint32 TLbtTriggerAttributeFieldsMask;
82 * Defines all attributes of a trigger entry are specified.
86 const TLbtTriggerAttributeFieldsMask KLbtTriggerAttributeFieldsAll = 0xffffffff;
89 * Trigger dynamic information fields mask.
91 * @see TLbtTriggerDynamicInfo::TLbtDynamicInfoAttribute
95 typedef TUint32 TLbtTriggerDynamicInfoFieldsMask;
98 * Defines all attributes of the trigger's dynamic information are specified.
102 const TLbtTriggerDynamicInfoFieldsMask KLbtTriggerDynInfoFieldsAll = 0xffffffff;
105 * Defines the default time interval after which the trigger is set effective by the Location Triggering Server.
109 const TInt KLbtDefaultTimeToRearm = 600;
112 * Defines the maximum time interval after which the trigger is set effective by the Location Triggering Server.
116 const TInt KLbtMaxTimeToRearm = 2147483647;
120 * Defines the minimum time interval after which the trigger is set effective by the Location Triggering Server.
124 const TInt KLbtMinTimeToRearm = 0;
128 * Structure defines detailed information of a trigger firing event.
132 struct TLbtTriggerFireInfo
135 * Type of trigger fired.
137 CLbtGeoAreaBase::TGeoAreaType iAreaType;
140 * The identity of the fired trigger.
142 TLbtTriggerId iTriggerId;
145 * Position information of when the trigger was fired. Only
146 * basic position information(class TPositionInfo) is returned by Location
149 TPositionInfo iFiredPositionInfo;
158 * The status of the Location triggering supervision mechanism ( on/off ).
162 enum TLbtTriggeringMechanismState
164 ETriggeringMechanismOn = 1, ///<Location triggering supervision mechanism is on
165 ETriggeringMechanismOff = 2 ///<Location triggering supervision mechanism is off
169 * The values defined in the enum determine if a particular trigger would be fired soon
170 * after an update operation if the terminal is found to be inside the triggering area
171 * (entry type trigger) or outside a triggering area (exit type trigger).
173 enum TLbtFireOnUpdate