CLbsAdmin Class Reference
class CLbsAdmin : public CBase
|
Location Based Services Administration API.
Manages global configuration and sets/selects an active Network Protocol Module. May be used: a) by a Control Panel UI application to configure the LBS component b) to notify internal LBS components about changes in the configuration c) by a UI Status Bar (Icons) to reflect the status of the LBS component.
A client may also use the API to receive changes to any of the configuration settings through a call-back mechanism. Please note that a setting may change several times before a client will receive the call-back (due to the pre-emptive and non pre-emptive multitasking mechanisms used). The call-back will also be received if a setting was set to the same value. This means that the call-back is triggered more by a setting write (
Set()
,
ResetToDefault()
etc.) operation than by a real change to the value of the setting.
MLbsAdminObserver
Private Member Functions
|
|
CLbsAdmin
()
|
void
|
ConstructL
()
|
void
|
ConstructL
(
MLbsAdminObserver
&, const
TLbsAdminSettingGroup
&)
|
IMPORT_C
TInt
|
DoGet
(const
TLbsAdminSetting
&,
TSelfLocateService
&)
|
IMPORT_C
TInt
|
DoGet
(const
TLbsAdminSetting
&,
TExternalLocateService
&)
|
IMPORT_C
TInt
|
DoGet
(const
TLbsAdminSetting
&,
TTransmitLocateService
&)
|
IMPORT_C
TInt
|
DoGet
(const
TLbsAdminSetting
&,
TGpsMode
&)
|
IMPORT_C
TInt
|
DoGet
(const
TLbsAdminSetting
&,
TLbsSystemStartMode
&)
|
IMPORT_C
TInt
|
DoGet
(const
TLbsAdminSetting
&,
TLbsBehaviourMode
&)
|
IMPORT_C
TInt
|
DoGet
(const
TLbsAdminSetting
&,
TPrivacyTimeoutAction
&)
|
IMPORT_C
TInt
|
DoGet
(const
TLbsAdminSetting
&,
TUid
&)
|
IMPORT_C
TInt
|
DoGet
(const
TLbsAdminSetting
&,
TLbsQualityProfileId
&)
|
IMPORT_C
TInt
|
DoGet
(const
TLbsAdminSetting
&,
TPrivacyHandler
&)
|
IMPORT_C
TInt
|
DoGet
(const
TLbsAdminSetting
&,
TLogger
&)
|
IMPORT_C
TInt
|
DoGet
(const
TLbsAdminSetting
&,
TSpecialFeature
&)
|
IMPORT_C
TInt
|
DoGet
(const
TLbsAdminSetting
&,
TClockAdjust
&)
|
IMPORT_C
TInt
|
DoGet
(const
TLbsAdminSetting
&,
TUint
&)
|
IMPORT_C
TInt
|
DoGet
(const
TLbsAdminSetting
&,
TLbsAdminInfoBase
&)
|
IMPORT_C
TInt
|
DoSet
(const
TLbsAdminSetting
&, const
TSelfLocateService
&)
|
IMPORT_C
TInt
|
DoSet
(const
TLbsAdminSetting
&, const
TExternalLocateService
&)
|
IMPORT_C
TInt
|
DoSet
(const
TLbsAdminSetting
&, const
TTransmitLocateService
&)
|
IMPORT_C
TInt
|
DoSet
(const
TLbsAdminSetting
&, const
TGpsMode
&)
|
IMPORT_C
TInt
|
DoSet
(const
TLbsAdminSetting
&, const
TLbsSystemStartMode
&)
|
IMPORT_C
TInt
|
DoSet
(const
TLbsAdminSetting
&, const
TLbsBehaviourMode
&)
|
IMPORT_C
TInt
|
DoSet
(const
TLbsAdminSetting
&, const
TPrivacyTimeoutAction
&)
|
IMPORT_C
TInt
|
DoSet
(const
TLbsAdminSetting
&, const
TUid
&)
|
IMPORT_C
TInt
|
DoSet
(const
TLbsAdminSetting
&, const
TLbsQualityProfileId
&)
|
IMPORT_C
TInt
|
DoSet
(const
TLbsAdminSetting
&, const
TPrivacyHandler
&)
|
IMPORT_C
TInt
|
DoSet
(const
TLbsAdminSetting
&, const
TLogger
&)
|
IMPORT_C
TInt
|
DoSet
(const
TLbsAdminSetting
&, const
TClockAdjust
&)
|
IMPORT_C
TInt
|
DoSet
(const
TLbsAdminSetting
&, const
TUint
&)
|
IMPORT_C
TInt
|
DoSet
(const
TLbsAdminSetting
&, const
TLbsAdminInfoBase
&)
|
Public Member Enumerations
|
enum
|
TClockAdjust
{
EClockAdjustUnknown
= 0x00,
EClockAdjustOn
= 0x01,
EClockAdjustOff
= 0x02 }
|
enum
|
TExternalLocateService
{
EExternalLocateUnknown
= 0x00,
EExternalLocateOn
= 0x01,
EExternalLocateOnButAlwaysVerify
= 0x02,
EExternalLocateOff
= 0x03,
EExternalLocateOffButNotify
= 0x04 }
|
enum
|
TGpsMode
{
EGpsModeUnknown
= 0x00,
EGpsPreferTerminalBased
= 0x01,
EGpsAlwaysTerminalBased
= 0x02,
EGpsAutonomous
= 0x03,
EGpsPreferTerminalAssisted
= 0x04,
EGpsAlwaysTerminalAssisted
= 0x05
}
|
enum
|
TLbsBehaviourMode
{
ELbsBehaviourModeUnknown
= 0x00,
ELbsBehaviourModeOriginal
= 0x01,
ELbsBehaviourCustom1
= 0x02 }
|
enum
|
TLbsSystemStartMode
{
ELbsSystemStartModeUnknown
= 0x00,
ELbsSystemTransient
= 0x01,
ELbsSystemPersistent
= 0x02 }
|
enum
|
TLogger
{
ELoggerUnknown
= 0x00,
ELoggerOn
= 0x01,
ELoggerOff
= 0x02 }
|
enum
|
TPrivacyHandler
{
EPrivacyHandlerUnknown
= 0x00,
EPrivacyHandleByNotifier
= 0x01,
EPrivacyHandleByController
= 0x02,
EPrivacyHandleByAdvancedNotifier
= 0x03 }
|
enum
|
TPrivacyTimeoutAction
{
EPrivacyTimeoutActionUnknown
= 0x00,
EPrivacyTimeoutNetworkDefined
= 0x01,
EPrivacyTimeoutReject
= 0x02,
EPrivacyTimeoutIgnore
= 0x03 }
|
enum
|
TSelfLocateService
{
ESelfLocateUnknown
= 0x00,
ESelfLocateOn
= 0x01,
ESelfLocateOff
= 0x02 }
|
enum
|
TSpecialFeature
{
ESpecialFeatureUnknown
= 0x00,
ESpecialFeatureOn
= 0x01,
ESpecialFeatureOff
= 0x02 }
|
enum
|
TTransmitLocateService
{
ETransmitLocateUnknown
= 0x00,
ETransmitLocateOn
= 0x01,
ETransmitLocateOff
= 0x02 }
|
Constructor & Destructor Documentation
Member Functions Documentation
ClearNotificationMask()
IMPORT_C void
|
ClearNotificationMask
|
(
|
)
|
|
ConstructL()
void
|
ConstructL
|
(
|
)
|
[private]
|
Second phase constructor
-
capability
-
WriteDeviceData if the configuration settings need to be created/initialised, none otherwise
ConstructL(MLbsAdminObserver &, const TLbsAdminSettingGroup &)
Second phase constructor It is possible to change the bitmask using the RequestSettingUpdateEventL() method.
-
capability
-
WriteDeviceData if the configuration settings need to be created/initialised, none otherwise
Parameters
MLbsAdminObserver
& aObserver
|
A object that will be receiving the call-backs
|
const
TLbsAdminSettingGroup
& aSettingsMask
|
A bit mask containing all the Settings a user should be nitified about.
|
DoGet(const TLbsAdminSetting &, TSelfLocateService &)
Gets the KLbsSettingHomeSelfLocate or KLbsSettingRoamingSelfLocate settings.
TLbsAdminSetting
DoGet(const TLbsAdminSetting &, TExternalLocateService &)
Gets the KLbsSettingHomeExternalLocate, KLbsSettingRoamingExternalLocate, KLbsSettingHomeEmergencyLocate or KLbsSettingRoamingEmergencyLocate settings.
TLbsAdminSetting
DoGet(const TLbsAdminSetting &, TTransmitLocateService &)
Gets the KLbsSettingHomeTransmitLocate or KLbsSettingRoamingTransmitLocate settings.
TLbsAdminSetting
DoGet(const TLbsAdminSetting &, TGpsMode &)
Gets the KLbsSettingHomeGpsMode or KLbsSettingRoamingGpsMode settings.
TLbsAdminSetting
DoGet(const TLbsAdminSetting &, TLbsSystemStartMode &)
DoGet(const TLbsAdminSetting &, TLbsBehaviourMode &)
DoGet(const TLbsAdminSetting &, TPrivacyTimeoutAction &)
DoGet(const TLbsAdminSetting &, TUid &)
Gets the KLbsSettingHomeProtocolModule or KLbsSettingRoamingProtocolModule settings or KLbsSettingSetClockModule settings.
TLbsAdminSetting
Parameters
const
TLbsAdminSetting
& aSetting
|
The setting to be retrieved.
|
TUid
& aModule
|
The value of the setting.
|
DoGet(const TLbsAdminSetting &, TLbsQualityProfileId &)
Gets the KLbsSettingQualityProfileSelfLocate or KLbsSettingQualityProfileExternalLocate or KLbsSettingQualityProfileTransmitLocate settings.
TLbsAdminSetting
DoGet(const TLbsAdminSetting &, TPrivacyHandler &)
DoGet(const TLbsAdminSetting &, TLogger &)
DoGet(const TLbsAdminSetting &, TSpecialFeature &)
Gets the settings: KLbsSpecialFeatureAllowTBFinalNetPos KLbsSpecialFeatureIgnoreAccuracy KLbsSpecialFeatureWithholdDeliveryOfReferencePositions KLbsSpecialFeatureIntermediateFutileUpdate
TLbsAdminSetting
DoGet(const TLbsAdminSetting &, TClockAdjust &)
Gets the KLbsSettingClockAdjust or KLbsSettingAllowManualClockAdjust setting.
TLbsAdminSetting
DoGet(const TLbsAdminSetting &, TUint &)
Gets the settings: KLbsSettingClockAdjustThreshold KLbsSettingClockAdjustInterval KLbsSpecialFeatureMaximumRequestDelay KLbsSettingMaximumExternalLocateRequests KLbsSettingPrivacyShutdownDelay KLbsSettingPrivacyMaxNetworkSessions KLbsSettingPrivacyConnectionTimeout KLbsSettingPrivacyAppTimeout
TLbsAdminSetting
DoGet(const TLbsAdminSetting &, TLbsAdminInfoBase &)
Gets the extended KSettingHomeExternalLocate, KSettingRoamingExternalLocate, KSettingHomeProtocolModule, KSettingRoamingProtocolModule and KLbsProtocolModuleLoading settings. The extended settings derive from the
TLbsAdminInfoBase
class.
TLbsAdminSetting
TLbsAdminInfoBase
DoSet(const TLbsAdminSetting &, const TSelfLocateService &)
Sets the KLbsSettingHomeSelfLocate or KLbsSettingRoamingSelfLocate settings.
-
capability
-
WriteDeviceData
TLbsAdminSetting
DoSet(const TLbsAdminSetting &, const TExternalLocateService &)
Sets the KLbsSettingHomeExternalLocate, KLbsSettingRoamingExternalLocate, KLbsSettingHomeEmergencyLocate KLbsSettingRoamingEmergencyLocate settings.
-
capability
-
WriteDeviceData
TLbsAdminSetting
DoSet(const TLbsAdminSetting &, const TTransmitLocateService &)
Sets the KLbsSettingHomeTransmitLocate or KLbsSettingRoamingTransmitLocate setting.
-
capability
-
WriteDeviceData
TLbsAdminSetting
DoSet(const TLbsAdminSetting &, const TGpsMode &)
Sets the KLbsSettingHomeGpsMode or KLbsSettingRoamingGpsMode settings.
-
capability
-
WriteDeviceData
TLbsAdminSetting
DoSet(const TLbsAdminSetting &, const TLbsSystemStartMode &)
Sets the KLbsSettingLbsSystemStartMode setting.
-
capability
-
WriteDeviceData
TLbsAdminSetting
DoSet(const TLbsAdminSetting &, const TLbsBehaviourMode &)
Sets the KSettingLbsBehaviourMode setting.
-
capability
-
WriteDeviceData
TLbsAdminSetting
DoSet(const TLbsAdminSetting &, const TPrivacyTimeoutAction &)
Sets the KLbsSettingPrivacyTimeoutAction setting.
-
capability
-
WriteDeviceData
TLbsAdminSetting
DoSet(const TLbsAdminSetting &, const TUid &)
Sets the KLbsSettingHomeProtocolModule and KLbsSettingRoamingProtocolModule and KLbsSettingSetClockModule settings.
-
capability
-
WriteDeviceData
TLbsAdminSetting
Parameters
const
TLbsAdminSetting
& aSetting
|
The setting to be changed.
|
const
TUid
& aModuleId
|
The new value of the setting.
|
DoSet(const TLbsAdminSetting &, const TLbsQualityProfileId &)
Sets the KLbsSettingQualityProfileSelfLocate or KLbsSettingQualityProfileExternalLocate or KLbsSettingQualityProfileTransmitLocate settings.
-
capability
-
WriteDeviceData
TLbsAdminSetting
DoSet(const TLbsAdminSetting &, const TPrivacyHandler &)
Sets the KLbsSettingPrivacyHandler setting.
-
capability
-
WriteDeviceData
TLbsAdminSetting
DoSet(const TLbsAdminSetting &, const TLogger &)
DoSet(const TLbsAdminSetting &, const TClockAdjust &)
Sets the KLbsSettingClockAdjust or KLbsSettingAllowManualClockAdjust setting.
-
capability
-
WriteDeviceData
TLbsAdminSetting
DoSet(const TLbsAdminSetting &, const TUint &)
Sets the settings: KLbsSettingClockAdjustThreshold KLbsSettingClockAdjustInterval KLbsSettingMaximumExternalLocateRequests KLbsSettingPrivacyShutdownDelay KLbsSettingPrivacyMaxNetworkSessions KLbsSettingPrivacyConnectionTimeout KLbsSettingPrivacyAppTimeout
-
capability
-
WriteDeviceData
TLbsAdminSetting
Parameters
const
TLbsAdminSetting
& aSetting
|
The setting to be changed.
|
const
TUint
& aValue
|
The new value of the setting. The value should be smaller than KMaxTInt.
|
DoSet(const TLbsAdminSetting &, const TLbsAdminInfoBase &)
Sets the extended KSettingHomeExternalLocate, KSettingHomeExternalLocate, KSettingHomeProtocolModule, KSettingRoamingProtocolModule and KLbsProtocolModuleLoading settings. The extended settings derive from the
TLbsAdminInfoBase
class.
Get(const TLbsAdminSetting &, T &)
Parameters
const
TLbsAdminSetting
& aSetting
|
The setting to be retrieved.
|
T & aValue
|
The value of the setting.
|
NewL()
Static constructor.
-
capability
-
WriteDeviceData if the configuration settings need to be created/initialised, none otherwise
NewL(MLbsAdminObserver &, const TLbsAdminSettingGroup &)
Static constructor. It is possible to change the bitmask using the RequestSettingUpdateEventL() method.
-
capability
-
WriteDeviceData if the configuration settings need to be created/initialised, none otherwise
ResetToDefault()
IMPORT_C
TInt
|
ResetToDefault
|
(
|
)
|
|
Resets all the settings to their default states. A licensee may define own default values.
Set(const TLbsAdminSetting &, const T &)
Parameters
const
TLbsAdminSetting
& aSetting
|
The setting to be changed.
|
const T & aValue
|
The new value of the setting.
|
SetNotificationMaskL(const TLbsAdminSettingGroup &)
Requests a notification (callback) if the value of one or more of the given settings changes. It replaces a previous request, either passed through NewL(...) or RequestSettingUpdateEventL(...).
Events will continue to be delivered to the supplied observer until the
CLbsAdmin
object exists or CancelSettingEvent() is called.
-
leave
-
KErrorArgument, KErrNoMemory or one of the other system wide error codes
-
panic
-
EAdminObserverNotDefined If an observer has not been specified in the static constructor - NewL(...)
TLbsAdminSetting
MLbsAdminObserver
Parameters
const
TLbsAdminSettingGroup
& aSettingsMask
|
A bit mask containing all the Settings a user should be nitified about.
|
Member Enumerations Documentation
Enum TClockAdjust
Enumerators
EClockAdjustUnknown = 0x00
|
Unknown. May be used to initialise a variable before getting the value of the setting
|
EClockAdjustOn = 0x01
|
Adjust.
|
EClockAdjustOff = 0x02
|
Don't adjust.
|
Enum TExternalLocateService
Enumerators
EExternalLocateUnknown = 0x00
|
Unknown. May be used to initialise a variable before getting the value of the setting
|
EExternalLocateOn = 0x01
|
On
|
EExternalLocateOnButAlwaysVerify = 0x02
|
On, but forces verification even if a network stipulates notification only. e.g In a "lcs-LocationNotification" message the "notificationType" argument is "notifyLocationAllowed"
|
EExternalLocateOff = 0x03
|
External locate is Off, Do not notify user about any external attempts to get location
|
EExternalLocateOffButNotify = 0x04
|
External locate is Off, Notify user about any external attempts to get location
|
Enum TGpsMode
Enumerators
EGpsModeUnknown = 0x00
|
Unknown. May be used to initialise a variable before getting the value of the setting
|
EGpsPreferTerminalBased = 0x01
|
Get assistance data if possible/required, autonomous otherwise. Calculate location locally (at the mobile).
|
EGpsAlwaysTerminalBased = 0x02
|
Currently not supported. Always get assistance data. Calculate location locally (at the mobile).
|
EGpsAutonomous = 0x03
|
Never get assistance data
|
EGpsPreferTerminalAssisted = 0x04
|
Get assistance data if possible/required, autonomous otherwise. Send raw data from GPS to network. Network calculates position.
|
EGpsAlwaysTerminalAssisted = 0x05
|
Always get assistance data. Send raw data from GPS to network. Network calculates position.
|
Enum TLbsBehaviourMode
Lbs Behaviour Mode The behaviour of Lbs may be altered by changing the behavior mode KLbsBehaviourMode
Enumerators
ELbsBehaviourModeUnknown = 0x00
|
Unknown. May be used to initialise a variable before getting the value of the setting
|
ELbsBehaviourModeOriginal = 0x01
|
LBS original mode - behaves as per original Lbs specification
|
ELbsBehaviourCustom1 = 0x02
|
Alternative/custom mode of operation for LBS.
|
Enum TLbsSystemStartMode
Lbs System Startup Mode In the Persistent Mode all the sub-components required to perform an emergency call location are loaded and configured at boot time.
KLbsSettingLbsSystemStartMode
Enumerators
ELbsSystemStartModeUnknown = 0x00
|
Unknown. May be used to initialise a variable before getting the value of the setting
|
ELbsSystemTransient = 0x01
|
The LBS component is in memory only if one or more local clients are connected.
|
ELbsSystemPersistent = 0x02
|
The LBS component is in memory at all times. Used to support emergency calls and external location requests.
|
Enum TLogger
Logger state. When the logger is in the off state, any usage of the logging API will not result in an error
KLbsSettingLogger
Enumerators
ELoggerUnknown = 0x00
|
Unknown. May be used to initialise a variable before getting the value of the setting
|
ELoggerOn = 0x01
|
The logger is on
|
ELoggerOff = 0x02
|
The logger is off
|
Enum TPrivacyHandler
Enumerators
EPrivacyHandlerUnknown = 0x00
|
Unknown. May be used to initialise a variable before getting the value of the setting
|
EPrivacyHandleByNotifier = 0x01
|
Use the privacy Notifier
|
EPrivacyHandleByController = 0x02
|
Use the privacy Controller
|
EPrivacyHandleByAdvancedNotifier = 0x03
|
Use the advanced privacy Notifier
|
Enum TPrivacyTimeoutAction
The action if a user does not respond to a privacy verification request. This setting is ignored if LBS is configured to use a Privacy Q&N Notifier - if KLbsSettingPrivacyHandler is EPrivacyHandleByAdvancedNotifier. If using a Privacy Q&N Notifier, the timeout action is specified by the Notifier - a negative error code returned from the Notifier means that LBS should reject the privacy request.
KLbsSettingPrivacyTimeoutAction
TPrivacyHandler
Enumerators
EPrivacyTimeoutActionUnknown = 0x00
|
Unknown. May be used to initialise a variable before getting the value of the setting
|
EPrivacyTimeoutNetworkDefined = 0x01
|
Action defined by network. (The "notificationType" received in a "lcs-LocationNotification" message)
|
EPrivacyTimeoutReject = 0x02
|
Send Rejection
|
EPrivacyTimeoutIgnore = 0x03
|
Ignore request. Do not respond. (Not supported)
|
Enum TSelfLocateService
Enumerators
ESelfLocateUnknown = 0x00
|
Unknown. May be used to initialise a variable before getting the value of the setting
|
ESelfLocateOn = 0x01
|
Always On
|
ESelfLocateOff = 0x02
|
Always Off
|
Enum TSpecialFeature
Enumerators
ESpecialFeatureUnknown = 0x00
|
Unknown. May be used to initialise a variable before getting the value of the setting
|
ESpecialFeatureOn = 0x01
|
The special feature is on
|
ESpecialFeatureOff = 0x02
|
The special feature is off
|
Enum TTransmitLocateService
Enumerators
ETransmitLocateUnknown = 0x00
|
Unknown. May be used to initialise a variable before getting the value of the setting
|
ETransmitLocateOn = 0x01
|
Always On
|
ETransmitLocateOff = 0x02
|
Always Off
|
Member Data Documentation
CLbsAdminImpl * iImpl
pointer to the implementation
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.