Symbian3/PDK/Source/GUID-A5510456-A5EB-59EC-B146-74D58A118875.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 id="GUID-A5510456-A5EB-59EC-B146-74D58A118875" xml:lang="en"><title>LBS
System Clock Synchronisation Overview</title><shortdesc>This topic describes how LBS synchronises the system clock with
time data received as part of the GPS signal. </shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
<section><title>Introduction</title> <p>The GPS signal contains accurate time
data. LBS can use this data to synchronise the system clock with GPS. The
system clock is synchronised with GPS at regular intervals if the difference
between GPS time and the system clock time exceeds a threshold time difference. </p> </section>
<section><title>Key concepts</title> <dl>
<dlentry>
<dt>System clock</dt>
<dd><p>The mobile device clock that keeps system time. </p> </dd>
</dlentry>
<dlentry>
<dt>Set clock plug-in DLL</dt>
<dd><p>An optional licensee ECom plug-in DLL used by LBS to set the system
clock. Symbian provides a default class that sets the system clock by calling <xref href="GUID-C197C9A7-EA05-3F24-9854-542E984C612D.dita#GUID-C197C9A7-EA05-3F24-9854-542E984C612D/GUID-145F52E6-2A29-3FF1-8AD1-7009BE0074D7"><apiname>User::SetUTCTime()</apiname></xref>. </p> <p>It
is only necessary to implement a set clock plug-in DLL if a licensee requires
to set the system clock by some means other than by calling <codeph>User::SetUTCTime()</codeph>. </p> <p>Whether
LBS uses a plug-in DLL or the Symbian default class is configured through
the <xref href="GUID-23BBC1D8-B3A0-5148-A4F1-22ECF3043E4E.dita">LBS administration
service</xref>. </p> </dd>
</dlentry>
<dlentry>
<dt>UTC</dt>
<dd><p>Co-ordinated Universal Time. A worldwide time standard. UTC is derived
from the GPS signal and is the time standard used to set the system clock. </p> </dd>
</dlentry>
</dl> </section>
<section><title>API Summary</title> <p>There are two separate APIs involved
with LBS system clock adjustment: </p> <ul>
<li id="GUID-C8F1C9F9-E1D8-5F93-B6EC-6FDA8D81D5E8"><p>The LBS Set Clock Plug-in
Interface </p> <p>Licensees can derive from the interface to create an implementation
class. The class is packaged as an ECom plug-in DLL which is loaded at startup
and used to set the system clock. </p> </li>
<li id="GUID-ED0758AB-DC45-5EE7-97D3-FFAA9CB1CE3E"><p>Automatic clock synchronisation </p> </li>
</ul> </section>
<section><title>The LBS Set Clock Plug-in Interface</title> <p>LBS defines
an interface class that is used to create a set clock plug-in DLL. </p> <p>The
interface <xref href="GUID-E5ED4ACA-5EC4-3AE2-862A-AC204DCA83B5.dita"><apiname>CGPSSetClockBase</apiname></xref> is shown in figure 2. </p> <fig id="GUID-EEA7FD08-77F2-563F-BD94-DC74DC1A96DE">
<title>              Figure 2. CGPSSetClockBase is the interface for LBS set
clock plug-in              classes.            </title>
<image href="GUID-9BA295BC-627C-5B82-B669-F4F7B55E3F82_d0e453482_href.png" placement="inline"/>
</fig> <p>To create a set clock plug-in, licensees create a class that derives
from <xref href="GUID-E5ED4ACA-5EC4-3AE2-862A-AC204DCA83B5.dita"><apiname>CGPSSetClockBase</apiname></xref> and package it as an ECom DLL. </p> <p>See <xref href="GUID-F0BDE1EC-5042-5328-9290-22BB2189F6B4.dita">How to implement a LBS set
clock plug-in DLL </xref> for more information. </p> </section>
<section><title> Automatic clock synchronisation</title> <p>LBS can perform
automatic synchronisation of the system clock. LBS administration settings
configure automatic clock synchronisation. The settings define the frequency
of automatic clock synchronisation and by how much the system clock and UTC
can differ before the clock is synchronised. </p> </section>
<section><title>LBS system clock settings</title> <p><xref href="GUID-23BBC1D8-B3A0-5148-A4F1-22ECF3043E4E.dita">LBS
administration</xref> describes how to configure LBS system clock synchronisation
settings using either the LBS Administration API or a repository initialisation
file. </p> </section>
</conbody><related-links>
<link href="GUID-F0BDE1EC-5042-5328-9290-22BB2189F6B4.dita"><linktext>How to Implement
an LBS Set Clock Plug-in DLL</linktext></link>
<link href="GUID-23BBC1D8-B3A0-5148-A4F1-22ECF3043E4E.dita"><linktext>LBS Administration</linktext>
</link>
</related-links></concept>