Attempt to represent the S^2->S^3 header reorganisation as a series of "hg rename" operations
1 // Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
2 // All rights reserved.
3 // This component and the accompanying materials are made available
4 // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
5 // which accompanies this distribution, and is available
6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
16 #ifndef __LBSCRITERIA_H__
17 #define __LBSCRITERIA_H__
19 #include <lbscommon.h>
22 class TPositionSelectionOrder
24 This class is used as part of the TPositionCriteria class to chose a
25 positioning module that will provide the desired quality of information.
26 It allows position-quality-metrics to be given priorities, enabling them
27 to be given preference in the decision.
35 Specifies the priority of selection parameters.
52 EOrderFairlyHigh = 125,
60 Specifies the quality of position metrics that can be prioritized.
64 /** Time to first fix */
66 /** Time to next fix */
68 /** Field Horizontal Accuracy */
69 EFieldHorizontalAccuracy,
70 /** Field Vertical Accuracy */
71 EFieldVerticalAccuracy,
76 /** Number of fields */
77 EFieldNumFields, // Do not use this value. Must appear after all other field values.
79 EFieldLast = KMaxTInt8 // Do not use this value. Must appear at end.
82 IMPORT_C TPositionSelectionOrder();
84 IMPORT_C TInt SetOrderTimeToFirstFix(TOrder aOrder);
85 IMPORT_C TInt SetOrderTimeToNextFix(TOrder aOrder);
87 IMPORT_C TInt SetOrderHorizontalAccuracy(TOrder aOrder);
88 IMPORT_C TInt SetOrderVerticalAccuracy(TOrder aOrder);
90 IMPORT_C TInt SetOrderCostIndicator(TOrder aOrder);
91 IMPORT_C TInt SetOrderPowerConsumption(TOrder aOrder);
93 IMPORT_C void ResetSelectionOrder();
94 IMPORT_C void ClearSelectionOrder();
96 IMPORT_C TUint NumSelectionItems() const;
97 IMPORT_C TInt GetSelectionItem(TUint aIndex,
99 TOrder& aOrder) const;
104 Stores a field / priority pair.
110 /** A position quality metric identifier. */
112 /** The priority given to the iField position quality metric. */
117 TInt AddItem(TField aField, TOrder aOrder);
120 /** The number of selection items in the iItems array. */
122 /** Array of users position quality priorities. */
123 SItem iItems[KPositionMaxSectionFields];
127 TPositionCriteriaBase derived classes class types
128 // If the following line generates an error, too many fields have been added
129 // to the TPositionSelectionOrder::TOrder enumeration, some must be removed
134 POSITION_COMPILE_TIME_ASSERT(TPositionSelectionOrder::EFieldNumFields <= KPositionMaxSectionFields);
137 class TPositionCriteriaBase : public TPositionClassTypeBase
139 The base class for classes used to store position module selection
140 criteria information.
147 IMPORT_C TPositionCriteriaBase();
148 IMPORT_C TPositionCriteriaBase(TPositionModuleInfo::TCapabilities aCapabilityMask);
151 IMPORT_C void AddRequiredCapabilities(TPositionModuleInfo::TCapabilities aCapabilityMask);
152 IMPORT_C void ClearRequiredCapabilities();
153 IMPORT_C TPositionModuleInfo::TCapabilities RequiredCapabilities() const;
155 IMPORT_C void SetRequiredQuality(const TPositionQuality& aPosQuality);
156 IMPORT_C void GetRequiredQuality(TPositionQuality& aPosQuality) const;
158 IMPORT_C void SetSelectionOrder(const TPositionSelectionOrder& aSelectionOrder);
159 IMPORT_C void GetSelectionOrder(TPositionSelectionOrder& aSelectionOrder) const;
161 IMPORT_C void ResetCriteria();
162 IMPORT_C void ClearCriteria();
165 /** The capabilities a positioning module must have. */
166 TPositionModuleInfo::TCapabilities iRequiredCaps;
167 /** The quality required of a positioning module. */
168 TPositionQuality iRequiredQuality;
169 /** The priorities assigned to the various quality metrics. */
170 TPositionSelectionOrder iSelectionOrder;
174 class TPositionCriteria : public TPositionCriteriaBase
176 The standard class criteria class for selecting a positioning module.
183 IMPORT_C TPositionCriteria();
184 IMPORT_C TPositionCriteria(TPositionModuleInfo::TCapabilities aCapabilityMask);
187 /** Unused variable for future expansion. */
191 #endif // __LBSCRITERIA_H__