Copyright (c) 2005-2010 Nokia Corporation and/or its subsidiary(-ies). All rights reserved.
This component and the accompanying materials are made available under the terms of "Eclipse Public License v1.0" which accompanies this distribution, and is available at the URL "http://www.eclipse.org/legal/epl-v10.html".
Initial Contributors:
Contributors:
Description:
API Version 0.5. Status: Draft.
The interface class CLbsLocator provides a simple but powerful means of obtaining location and movement information. Application should include <lbslocator.h> and link against the library lbslocator.lib
A location contains a latitude and longitude and may include altitude, speed and direction. Movement information provides a general indication of whether the device is stationary or moving. It may also indicate whether the user is walking.
Applications request location and movement information via CLbsLocator with updates being sent to observer classes. To receive Location information, the application must derive from MLbsLocationObserver. The data class TLbsLocation is supplied as the callback parameter and holds the location information.
Movement updates are sent to the application via the observer class MLbsMovementObserver. The movement details are passed as a callback parameter of type TLbsMovementEvent.
The CLbsLocator API supersedes the RPositionServer/RPositioner interface. However, those interfaces are still supported.
The API abstracts which technologies are used to provide location and movement information. Although the underlying technologies could include GPS, Network Cell, W-LAN positioning, accelerometer and compass, these are hidden from the application.
The application indicates its desired level of accuracy and performance by specifying the profile to use. Profiles are predefined by the API and encompass a set of rules and performance targets - for example, position accuracy and the distance between updates. Each profile is suited to a particular use case. The method CLbsLocator::SetLocatorProfile() is used to select the active profile.
This version of the API defines the following profiles:
See CLbsLocator::SetLocatorProfile() for more information.
The active profile can be dynamically changed by the application. This allows applications to easily switch to a different level of performance depending on the stage of their lifecycle.
Change History