Symbian3/PDK/Source/GUID-5CAF1B85-853F-5450-B79B-7E768DFA44EC.dita
author Dominic Pinkman <dominic.pinkman@nokia.com>
Fri, 16 Jul 2010 17:23:46 +0100
changeset 12 80ef3a206772
parent 9 59758314f811
child 14 578be2adaf3e
permissions -rw-r--r--
Week 28 contribution of PDK documentation content. See release notes for details. Fixes bugs Bug 1897, Bug 344, Bug 2681, Bug 463, Bug 1522.

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"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:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept xml:lang="en" id="GUID-5CAF1B85-853F-5450-B79B-7E768DFA44EC"><title>Bluetooth GPS PSY Configuration API Overview</title><shortdesc>This document describes the Bluetooth GPS PSY Configuration API and is aimed at application developers who want to create applications for managing a list of Bluetooth GPS devices. </shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody><section><title>Purpose</title> <p>A developer can use the Bluetooth GPS PSY Configuration API to write an application to manage a list of Bluetooth GPS devices. The list of devices is in order of preference. When GPS position information is required, the Bluetooth GPS PSY reads the list and attempts to connect to the first device address listed. If the connection is unsuccessful, then the Bluetooth GPS PSY tries each device in the list, in the order in which they are specified, until a connection is made. If the end of the list is reached, the Bluetooth GPS PSY requests for another device (not on the list) to be selected via the client application. </p> <p>The Bluetooth GPS PSY Configuration API stores the list in its own repository. </p> </section> <section><title>Library details</title> <p>The DLL that provides the functionality and the library to which your code must link is identified below. </p> <table id="GUID-663BCB64-5B5E-510E-95D3-8218CA45E3F6"><tgroup cols="3"><colspec colname="col0"/><colspec colname="col1"/><colspec colname="col2"/><thead><row><entry>DLL</entry> <entry>LIB</entry> <entry>Short description</entry> </row> </thead> <tbody><row><entry><p> <filepath>lbsbtgpsconfig.dll</filepath>  </p> </entry> <entry><p> <filepath>lbsbtgpsconfig.lib</filepath>  </p> </entry> <entry><p>The Configuration API for the Bluetooth GPS PSY. </p> </entry> </row> </tbody> </tgroup> </table> </section> <section><title>Architecture</title> <p>The following diagram shows the Bluetooth GPS PSY Configuration API class structure: </p> <fig id="GUID-E804C5A0-6F4E-5B96-AC66-AC8A28CBFEBE"><title>
             Figure 1. Bluetooth GPS PSY Configuration API Class Diagram 
          </title> <image href="GUID-9C82D039-A561-5F29-B9CB-450FAF89F254_d0e468612_href.png" placement="inline"/></fig> </section> <section><title>Description</title> <p>The Bluetooth GPS PSY Configuration API provides the following types of functions: </p> <p> <b>Querying</b>  </p> <p>The following functions return information about the preferred list: </p> <ul><li id="GUID-EDA1FDBF-4ACC-5AF0-8719-6FF225704289"><p> <xref href="GUID-2D92CE4A-3784-35E6-969F-504888DFA4FF.dita"><apiname>CLbsBtGpsConfig::GetDeviceListL(RPointerArray&lt;TLbsBtGpsDeviceInfo&gt;&amp;)</apiname></xref> - returns the list of devices. </p> </li> <li id="GUID-DC60465C-C845-5C5A-A9DA-7041AA95C168"><p> <xref href="GUID-2D92CE4A-3784-35E6-969F-504888DFA4FF.dita"><apiname>CLbsBtGpsConfig::GetDeviceCount(TInt&amp;)</apiname></xref> - returns the number of devices in the list. </p> </li> </ul> <p> <b>Configuring</b>  </p> <p>The following functions enable the preferred list to be configured: </p> <ul><li id="GUID-BA16501E-AAF6-5DE1-B845-99637FF9D071"><p> <xref href="GUID-2D92CE4A-3784-35E6-969F-504888DFA4FF.dita"><apiname> CLbsBtGpsConfig::AddDevice(const TBTDevAddr&amp;, TInt,
                TLbsBtGpsEntryKey&amp;)</apiname></xref> - adds a new device to the list, at a specified position. </p> </li> <li id="GUID-7782BDBF-C987-5A20-88E3-6AB4525503CB"><p> <xref href="GUID-2D92CE4A-3784-35E6-969F-504888DFA4FF.dita"><apiname>CLbsBtGpsConfig::ReorderDevice(TLbsBtGpsEntryKey,
                TInt)</apiname></xref> - moves a device to a new position in the list. </p> </li> <li id="GUID-5D7C39A5-1248-515E-B934-EFA1495F03C1"><p> <xref href="GUID-2D92CE4A-3784-35E6-969F-504888DFA4FF.dita"><apiname>
                CLbsBtGpsConfig::RemoveDevice(TLbsBtGpsEntryKey)</apiname></xref> - removes a device from the list. </p> </li> <li id="GUID-EA87912B-F6C4-5308-B6B0-312106D465A9"><p> <xref href="GUID-2D92CE4A-3784-35E6-969F-504888DFA4FF.dita"><apiname>CLbsBtGpsConfig::EmptyDeviceList()</apiname></xref> - removes all of the devices from the list. </p> </li> </ul> </section> <section><title>APIs</title> <p>The key classes of Bluetooth GPS PSY Configuration API are as follows: </p> <table id="GUID-8E10846E-FF2D-5A12-8F3C-2293FFF7E361"><tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/><thead><row><entry>Class Name</entry> <entry>Description</entry> </row> </thead> <tbody><row><entry><p> <xref href="GUID-2D92CE4A-3784-35E6-969F-504888DFA4FF.dita"><apiname>CLbsBtGpsConfig</apiname></xref>  </p> </entry> <entry><p>Enables client applications to manage the preferred list of Bluetooth GPS devices. </p> </entry> </row> <row><entry><p> <xref href="GUID-2D92CE4A-3784-35E6-969F-504888DFA4FF.dita"><apiname>MLbsBtGpsConfigObserver</apiname></xref>  </p> </entry> <entry><p>Observer class that client applications can implement to receive notifications about changes to the list. </p> </entry> </row> </tbody> </tgroup> </table> </section> <section><title>Using the Bluetooth GPS PSY Configuration API</title> <p>The following tutorials describe how to use the Bluetooth GPS PSY Configuration API: </p> <ul><li id="GUID-E942B878-0A81-55E2-A49A-FF084390DB42"><p><xref href="GUID-D9040B2E-C4C6-576C-A3B2-9F68E8FCE4A6.dita">Creating an Instance of the Bluetooth GPS PSY Configuration API</xref>  </p> </li> <li id="GUID-B77C6603-112F-568A-91C8-41D60BE9BF6B"><p><xref href="GUID-9619335F-7345-5C9B-BAF6-4C3D8172ECE6.dita">Adding a Device to the Start of the List</xref>  </p> </li> <li id="GUID-38395790-2E35-59C1-BAE7-DA1643202A85"><p><xref href="GUID-DEF5784C-FE4A-57FE-834D-3C4C0E179007.dita">Moving a Device to a New Position in the List</xref>  </p> </li> <li id="GUID-CBAF698E-BD3F-5A33-A40E-C500532D0918"><p><xref href="GUID-375CA8E2-DD7A-532A-88F0-004BFAB3F8DE.dita">Removing a Device from the List</xref>  </p> </li> <li id="GUID-8BCE828A-6541-5CD5-9917-43946DC406E7"><p><xref href="GUID-EE715BD5-3DCA-58A5-8A9E-9D29046749C4.dita">Retrieving the List of Devices</xref>  </p> </li> </ul> </section> </conbody><related-links><link href="GUID-F84E7419-7F31-5E18-8854-27CB1F9F890E.dita"><linktext>Bluetooth
                GPS PSY Settings Storage API</linktext> </link> <link href="GUID-5454AFE9-ADC2-5980-85FC-3FF457B638D0.dita"><linktext>Bluetooth
                GPS Positioning Module</linktext> </link> </related-links></concept>