williamr@2: /* williamr@2: * Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies). williamr@2: * All rights reserved. williamr@2: * This component and the accompanying materials are made available williamr@4: * under the terms of "Eclipse Public License v1.0" williamr@2: * which accompanies this distribution, and is available williamr@4: * at the URL "http://www.eclipse.org/legal/epl-v10.html". williamr@2: * williamr@2: * Initial Contributors: williamr@2: * Nokia Corporation - initial contribution. williamr@2: * williamr@2: * Contributors: williamr@2: * williamr@2: * Description: Constants and data types used by RLbt client. williamr@2: * williamr@2: */ williamr@2: williamr@2: williamr@2: #ifndef LBTCOMMON_H williamr@2: #define LBTCOMMON_H williamr@2: williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: williamr@2: /** williamr@2: * Trigger identity data type. williamr@2: * williamr@2: * @since S60 5.1 williamr@2: */ williamr@2: typedef TUint32 TLbtTriggerId; williamr@2: williamr@2: /** williamr@2: * Defines the null trigger ID. williamr@2: * williamr@2: * @since S60 5.1 williamr@2: */ williamr@2: const TLbtTriggerId KLbtNullTriggerId = 0; williamr@2: williamr@2: /** williamr@2: * Defines maximum length of the trigger name. williamr@2: * williamr@2: * @since S60 5.1 williamr@2: */ williamr@2: const TInt KLbtMaxNameLength = 256; williamr@2: williamr@2: /** williamr@2: * Error code used when a client application tries williamr@2: * to create a trigger with trigger area smaller than williamr@2: * the system's minimum size of trigger area. williamr@2: * williamr@2: * @since S60 5.1 williamr@2: */ williamr@2: const TInt KErrTriggerAreaTooSmall = -20000; williamr@2: williamr@2: /** williamr@2: * Error code used when a client application tries to create start-up williamr@2: * triggers beyond the limit specified by the system williamr@2: * williamr@2: * @since S60 5.1 williamr@2: */ williamr@2: const TInt KLbtErrMaxTriggerLimitExceeded = -20001; williamr@2: williamr@2: /** williamr@2: * Error code used when a client application tries to create triggers beyond williamr@2: * the total number of enabled and valid triggers limit define by the system williamr@2: * williamr@2: * @since S60 5.1 williamr@2: */ williamr@2: const TInt KLbtErrMaxEnabledValidTriggersLimitExceeded = -20002; williamr@2: williamr@2: /** williamr@2: * Trigger entry attribute fields mask. williamr@2: * williamr@2: * @see CLbtTriggerEntry::TAttribute williamr@2: * williamr@2: * @since S60 5.1 williamr@2: */ williamr@2: typedef TUint32 TLbtTriggerAttributeFieldsMask; williamr@2: williamr@2: /** williamr@2: * Defines all attributes of a trigger entry are specified. williamr@2: * williamr@2: * @since S60 5.1 williamr@2: */ williamr@2: const TLbtTriggerAttributeFieldsMask KLbtTriggerAttributeFieldsAll = 0xffffffff; williamr@2: williamr@2: /** williamr@2: * Trigger dynamic information fields mask. williamr@2: * williamr@2: * @see TLbtTriggerDynamicInfo::TLbtDynamicInfoAttribute williamr@2: * williamr@2: * @since S60 5.1 williamr@2: */ williamr@2: typedef TUint32 TLbtTriggerDynamicInfoFieldsMask; williamr@2: williamr@2: /** williamr@2: * Defines all attributes of the trigger's dynamic information are specified. williamr@2: * williamr@2: * @since S60 5.1 williamr@2: */ williamr@2: const TLbtTriggerDynamicInfoFieldsMask KLbtTriggerDynInfoFieldsAll = 0xffffffff; williamr@2: williamr@2: /** williamr@2: * Defines the default time interval after which the trigger is set effective by the Location Triggering Server. williamr@2: * williamr@2: * @since S60 5.1 williamr@2: */ williamr@2: const TInt KLbtDefaultTimeToRearm = 600; williamr@2: williamr@2: /** williamr@2: * Defines the maximum time interval after which the trigger is set effective by the Location Triggering Server. williamr@2: * williamr@2: * @since S60 5.1 williamr@2: */ williamr@2: const TInt KLbtMaxTimeToRearm = 2147483647; williamr@2: williamr@2: williamr@2: /** williamr@2: * Defines the minimum time interval after which the trigger is set effective by the Location Triggering Server. williamr@2: * williamr@2: * @since S60 5.1 williamr@2: */ williamr@2: const TInt KLbtMinTimeToRearm = 0; williamr@2: williamr@2: williamr@2: /** williamr@2: * Structure defines detailed information of a trigger firing event. williamr@2: * williamr@2: * @since S60 5.1 williamr@2: */ williamr@2: struct TLbtTriggerFireInfo williamr@2: { williamr@2: /** williamr@2: * Type of trigger fired. williamr@2: */ williamr@2: CLbtGeoAreaBase::TGeoAreaType iAreaType; williamr@2: williamr@2: /** williamr@2: * The identity of the fired trigger. williamr@2: */ williamr@2: TLbtTriggerId iTriggerId; williamr@2: williamr@2: /** williamr@2: * Position information of when the trigger was fired. Only williamr@2: * basic position information(class TPositionInfo) is returned by Location williamr@2: * Triggering Server. williamr@2: */ williamr@2: TPositionInfo iFiredPositionInfo; williamr@2: williamr@2: /** williamr@2: * For future use. williamr@2: */ williamr@2: TUint8 iUnused[8]; williamr@2: }; williamr@2: williamr@2: /** williamr@2: * The status of the Location triggering supervision mechanism ( on/off ). williamr@2: * williamr@2: * @since S60 5.1 williamr@2: */ williamr@2: enum TLbtTriggeringMechanismState williamr@2: { williamr@2: ETriggeringMechanismOn = 1, ///