Adaptation/GUID-552530EB-1287-542D-AED3-125387B485C1.dita
changeset 15 307f4279f433
equal deleted inserted replaced
14:578be2adaf3e 15:307f4279f433
       
     1 <?xml version="1.0" encoding="utf-8"?>
       
     2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
       
     3 <!-- This component and the accompanying materials are made available under the terms of the License 
       
     4 "Eclipse Public License v1.0" which accompanies this distribution, 
       
     5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
       
     6 <!-- Initial Contributors:
       
     7     Nokia Corporation - initial contribution.
       
     8 Contributors: 
       
     9 -->
       
    10 <!DOCTYPE concept
       
    11   PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
       
    12 <concept id="GUID-552530EB-1287-542D-AED3-125387B485C1" xml:lang="en"><title>Architecture</title><shortdesc>Describes the architecture of the Digitizer Driver. </shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
       
    13 <p>The architecture has two layers: </p>
       
    14 <table id="GUID-66F9A575-14A6-5F98-9166-CF5F5B03BF67">
       
    15 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
       
    16 <tbody>
       
    17 <row>
       
    18 <entry><p>A platform-independent layer that: </p> </entry>
       
    19 <entry><ul>
       
    20 <li id="GUID-1F3AAAB4-181C-54EF-83AA-CEBE00590934"><p>processes digitiser
       
    21 samples </p> </li>
       
    22 <li id="GUID-F8D8BC65-0D80-5D5A-9F87-B8C34FEE70A2"><p>issues pen movement
       
    23 events to the kernel </p> </li>
       
    24 <li id="GUID-75A10183-BFCE-5D3D-B167-6D884EED335F"><p>maintains a buffer of
       
    25 digitiser readings </p> </li>
       
    26 </ul> <p>This layer implements behaviour that can be expected to be the same
       
    27 across all platforms. </p> <p> <i>Symbian provides this.</i>  </p> </entry>
       
    28 </row>
       
    29 <row>
       
    30 <entry><p>A platform specific layer that is responsible for: </p> </entry>
       
    31 <entry><ul>
       
    32 <li id="GUID-5D268750-7FF8-527F-B670-02A2605F610E"><p>the conversion between
       
    33 screen and digitiser coordinates </p> </li>
       
    34 <li id="GUID-65D85059-ED68-5AEF-BA1C-8255D5AAADC1"><p>the implementation of
       
    35 low level calibration </p> </li>
       
    36 <li id="GUID-98D55CC6-946B-5396-A518-65AF137684D3"><p>the gathering of raw
       
    37 digitiser data samples </p> </li>
       
    38 <li id="GUID-6E3D68AF-4EF8-50CA-90EA-814820C15ACA"><p>power management. </p> </li>
       
    39 </ul> <p>This layer implements behaviour that can vary between platforms and
       
    40 therefore needs to be implemented by the port. </p> <p>The bulk of the effort
       
    41 here is the definition and implementation of a class derived from the Symbian
       
    42 defined <xref href="GUID-2EDAF642-2399-3594-986A-5E8A5EEA01B9.dita"><apiname>DDigitiser</apiname></xref> class; the derived class implements
       
    43 the pure virtual functions defined by <codeph>DDigitiser</codeph>. </p> <p> <i>You
       
    44 provide this.</i>  </p> </entry>
       
    45 </row>
       
    46 </tbody>
       
    47 </tgroup>
       
    48 </table>
       
    49 <p>The template port provides a framework for implementing the platform specific
       
    50 part of the digitiser. The diagram below shows the overall relationship: </p>
       
    51 <fig id="GUID-25F301AD-9B05-51BF-A96B-C99AB5B2D2E4">
       
    52 <image href="GUID-904C9C5A-5FDB-5978-88CF-E30D6C0DBB61_d0e8869_href.png" placement="inline"/>
       
    53 </fig>
       
    54 <p>The standard Symbian platform ports all follow the same general pattern,
       
    55 including the H2. However, the H2 board implementation has two levels in its
       
    56 platform specific layer (an ASSP and a variant layer) and uses different source
       
    57 file names (e.g. <filepath>digitizer.cpp</filepath>), but, nevertheless, the
       
    58 same general pattern applies. </p>
       
    59 </conbody></concept>