Symbian3/PDK/Source/GUID-2955A35E-1215-5C4A-9C24-0106FB75E295.dita
changeset 12 80ef3a206772
parent 9 59758314f811
equal deleted inserted replaced
11:5072524fcc79 12:80ef3a206772
     7     Nokia Corporation - initial contribution.
     7     Nokia Corporation - initial contribution.
     8 Contributors: 
     8 Contributors: 
     9 -->
     9 -->
    10 <!DOCTYPE task
    10 <!DOCTYPE task
    11   PUBLIC "-//OASIS//DTD DITA Task//EN" "task.dtd">
    11   PUBLIC "-//OASIS//DTD DITA Task//EN" "task.dtd">
    12 <task xml:lang="en" id="GUID-2955A35E-1215-5C4A-9C24-0106FB75E295"><title>Provide ECOM registry information for a PSY</title><shortdesc>This section describes how to package the PSY as an ECOM plug-in that can be loaded by the LBS subsystem. </shortdesc><prolog><metadata><keywords/></metadata></prolog><taskbody><context id="GUID-6D4EEEE5-BB39-53BD-8B41-62B6FEE7ADAF"><p>A PSY must provide the ECOM registry with information about itself. Registry information is used by the Location Framework to recognise a PSY implementation. This section describes how to create ECOM registry information for a PSY. </p> </context> <steps id="GUID-193095EC-B7F6-520B-8DD7-D200E7EF174F"><step id="GUID-3A17C6EA-BB68-5B06-A53B-D99C958618BA"><cmd/><info>Obtain two UIDs for the PSY from Symbian. </info> <substeps id="GUID-A9F4EAE2-F8FE-5645-A20B-AB7ABF7E057D"><substep id="GUID-C576657B-B83D-50E4-B23B-BC2555FB37F8"><cmd/><info>A PSY DLL UID is required for the DLL that packages the PSY. </info> </substep> <substep id="GUID-AC18D7DB-F9F1-5C3F-8E3A-7678BB6D8C89"><cmd/><info>A PSY implementation UID is required to identify the implementation of the PSY interface that is loaded by ECOM. </info> </substep> </substeps> </step> <step id="GUID-553B5668-AAA4-5E8D-AB3D-02CC37A11786"><cmd/><info>Create an ECOM resource file for the PSY. </info> <info>ECOM Registry information is stored in a resource file. The resource file must define a <codeph>REGISTRY_INFO</codeph> resource at the start of the file. The resource file must not contain anything else. </info> <info>The <codeph>REGISTRY_INFO</codeph> structure and some useful constant declarations are defined in <codeph>registryinfo.rh</codeph>. </info> <info>The registry information consists of the following: </info> <substeps id="GUID-1F3A7A38-70C0-5714-8147-10DA24647830"><substep id="GUID-AF7993CE-F547-5079-8E11-DDC7B1423150"><cmd/><info>PSY DLL UID. </info> </substep> <substep id="GUID-7E26BF57-9DE3-51F1-B93A-00D1DB69A1A5"><cmd/><info>PSY implementation UID. </info> </substep> <substep id="GUID-211E347E-6D89-5420-8DCE-7ABA5E14AC1A"><cmd/><info>PSY version. </info> </substep> <substep id="GUID-DB2589C4-14E9-5EE4-BD80-52723FADDE51"><cmd/><info>A display name for the PSY (this can be shown in a UI). </info> <info>The display name in the ECOM registration file cannot be localised. In order to provide a PSY name that can be localised, the PSY needs to create a separate localised resource file. The path to this localised resource file must be specified through the <xref href="GUID-DA2DC704-CE65-54FB-9049-4E1C73092EDF-GENID-1-12-1-18-1-1-10-1-5-1-5-1-8-1.dita">Positioning Plug-in Information API</xref>. </info> <info>If the localised resource file is not specified or cannot be found, the display name in the ECOM registry resource file is used. </info> </substep> </substeps> <info>An example resource file is shown below. Note that the <codeph>inteface_uid</codeph> must be <codeph>0x101F7A7C</codeph> as specified in this file. The <codeph>dll_uid</codeph> and <codeph>implementation_uid</codeph> will be different in your implementation. </info> <stepxmp><codeblock id="GUID-5091D78F-FF85-574A-BFA0-22EE74DD77B5" xml:space="preserve">#include &lt;registryinfo.rh&gt; 
    12 <task xml:lang="en" id="GUID-2955A35E-1215-5C4A-9C24-0106FB75E295"><title>Provide ECOM registry information for a PSY</title><shortdesc>This section describes how to package the PSY as an ECOM plug-in that can be loaded by the LBS subsystem. </shortdesc><prolog><metadata><keywords/></metadata></prolog><taskbody><context id="GUID-6D4EEEE5-BB39-53BD-8B41-62B6FEE7ADAF"><p>A PSY must provide the ECOM registry with information about itself. Registry information is used by the Location Framework to recognise a PSY implementation. This section describes how to create ECOM registry information for a PSY. </p> </context> <steps id="GUID-193095EC-B7F6-520B-8DD7-D200E7EF174F"><step id="GUID-3A17C6EA-BB68-5B06-A53B-D99C958618BA"><cmd/><info>Obtain two UIDs for the PSY from Symbian. </info> <substeps id="GUID-A9F4EAE2-F8FE-5645-A20B-AB7ABF7E057D"><substep id="GUID-C576657B-B83D-50E4-B23B-BC2555FB37F8"><cmd/><info>A PSY DLL UID is required for the DLL that packages the PSY. </info> </substep> <substep id="GUID-AC18D7DB-F9F1-5C3F-8E3A-7678BB6D8C89"><cmd/><info>A PSY implementation UID is required to identify the implementation of the PSY interface that is loaded by ECOM. </info> </substep> </substeps> </step> <step id="GUID-553B5668-AAA4-5E8D-AB3D-02CC37A11786"><cmd/><info>Create an ECOM resource file for the PSY. </info> <info>ECOM Registry information is stored in a resource file. The resource file must define a <codeph>REGISTRY_INFO</codeph> resource at the start of the file. The resource file must not contain anything else. </info> <info>The <codeph>REGISTRY_INFO</codeph> structure and some useful constant declarations are defined in <codeph>registryinfo.rh</codeph>. </info> <info>The registry information consists of the following: </info> <substeps id="GUID-1F3A7A38-70C0-5714-8147-10DA24647830"><substep id="GUID-AF7993CE-F547-5079-8E11-DDC7B1423150"><cmd/><info>PSY DLL UID. </info> </substep> <substep id="GUID-7E26BF57-9DE3-51F1-B93A-00D1DB69A1A5"><cmd/><info>PSY implementation UID. </info> </substep> <substep id="GUID-211E347E-6D89-5420-8DCE-7ABA5E14AC1A"><cmd/><info>PSY version. </info> </substep> <substep id="GUID-DB2589C4-14E9-5EE4-BD80-52723FADDE51"><cmd/><info>A display name for the PSY (this can be shown in a UI). </info> <info>The display name in the ECOM registration file cannot be localised. In order to provide a PSY name that can be localised, the PSY needs to create a separate localised resource file. The path to this localised resource file must be specified through the <xref href="GUID-DA2DC704-CE65-54FB-9049-4E1C73092EDF-GENID-1-12-1-19-1-1-10-1-5-1-5-1-8-1.dita">Positioning Plug-in Information API</xref>. </info> <info>If the localised resource file is not specified or cannot be found, the display name in the ECOM registry resource file is used. </info> </substep> </substeps> <info>An example resource file is shown below. Note that the <codeph>inteface_uid</codeph> must be <codeph>0x101F7A7C</codeph> as specified in this file. The <codeph>dll_uid</codeph> and <codeph>implementation_uid</codeph> will be different in your implementation. </info> <stepxmp><codeblock id="GUID-5091D78F-FF85-574A-BFA0-22EE74DD77B5" xml:space="preserve">#include &lt;registryinfo.rh&gt; 
    13 #include "ExamplePsy.hrh" // Defines KPosExamplePSYImplUid
    13 #include "ExamplePsy.hrh" // Defines KPosExamplePSYImplUid
    14 
    14 
    15 RESOURCE REGISTRY_INFO r_examplepsy_reginfo
    15 RESOURCE REGISTRY_INFO r_examplepsy_reginfo
    16 {
    16 {
    17 // This dll_uid needs to be allocated by the licensee from Symbian. 
    17 // This dll_uid needs to be allocated by the licensee from Symbian. 
    33                 }
    33                 }
    34             };
    34             };
    35         }
    35         }
    36     };
    36     };
    37 }
    37 }
    38 </codeblock> </stepxmp> </step> </steps> <postreq id="GUID-3413BBB4-9CDC-5FF7-AC92-CF069F88C9CE"><p> <xref href="GUID-DA2DC704-CE65-54FB-9049-4E1C73092EDF-GENID-1-12-1-18-1-1-10-1-5-1-5-1-8-1.dita">Define PSY attributes using the Positioning Plug-in Information API</xref>. </p> <p>Test the PSY using the <xref href="GUID-20D774EC-4993-55F5-979C-AF80A264F777.dita">PSY tester application</xref>. </p> </postreq> </taskbody><related-links><link href="GUID-86AD79A5-E18D-56C6-997A-5E2B24FEE80D.dita"><linktext>Positioning
    38 </codeblock> </stepxmp> </step> </steps> <postreq id="GUID-3413BBB4-9CDC-5FF7-AC92-CF069F88C9CE"><p> <xref href="GUID-DA2DC704-CE65-54FB-9049-4E1C73092EDF-GENID-1-12-1-19-1-1-10-1-5-1-5-1-8-1.dita">Define PSY attributes using the Positioning Plug-in Information API</xref>. </p> <p>Test the PSY using the <xref href="GUID-20D774EC-4993-55F5-979C-AF80A264F777.dita">PSY tester application</xref>. </p> </postreq> </taskbody><related-links><link href="GUID-86AD79A5-E18D-56C6-997A-5E2B24FEE80D.dita"><linktext>Positioning
    39                 Plug-in API Tutorial</linktext> </link> </related-links></task>
    39                 Plug-in API Tutorial</linktext> </link> </related-links></task>