Symbian3/SDK/Source/GUID-E4E656BF-E5F7-5125-AE88-60C3E9FCF0D2.dita
author Dominic Pinkman <dominic.pinkman@nokia.com>
Fri, 11 Jun 2010 12:39:03 +0100
changeset 8 ae94777fff8f
parent 0 89d6a7a84779
permissions -rw-r--r--
Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
8
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
     1
<?xml version="1.0" encoding="utf-8"?>
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
     2
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
     3
<!-- This component and the accompanying materials are made available under the terms of the License 
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
     4
"Eclipse Public License v1.0" which accompanies this distribution, 
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
     5
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
     6
<!-- Initial Contributors:
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
     7
    Nokia Corporation - initial contribution.
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
     8
Contributors: 
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
     9
-->
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    10
<!DOCTYPE concept
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    11
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    12
<concept id="GUID-E4E656BF-E5F7-5125-AE88-60C3E9FCF0D2" xml:lang="en"><title>InterfaceDefinition: ECom Interface Definition Example Code</title><prolog><metadata><keywords/></metadata></prolog><conbody>
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    13
<section id="GUID-B84E1E5E-7141-52D2-A589-35F334058DE5"><title>Download</title> <p>Click on the following link to download the example: <xref href="guid-6013a680-57f9-415b-8851-c4fa63356636/zips/guid-4d91db5b-1dd7-43ba-9ce8-1c2a1f08a120.zip" scope="external">Ecom.zip</xref></p>Download some additional files
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    14
required by the example: <xref href="guid-6013a680-57f9-415b-8851-c4fa63356636/zips/guid-89fa6105-e749-4e5f-a233-a000e3b9390b.zip" scope="external">CommonFramework</xref><p>Click: <xref href="guid-6013a680-57f9-415b-8851-c4fa63356636/guid-4d91db5b-1dd7-43ba-9ce8-1c2a1f08a120.html" scope="peer">browse</xref> to view the example code. </p>View the
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    15
additional files: <xref href="guid-6013a680-57f9-415b-8851-c4fa63356636/guid-89fa6105-e749-4e5f-a233-a000e3b9390b.html" scope="peer">browse</xref>.  </section>
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    16
<section id="GUID-F68E5509-F824-43CE-ADC1-EEFFEAAE2A84"><title>Description</title> <p> <filepath>InterfaceDefinition</filepath> provides an example
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    17
ECom interface definition. It declares a base class, <codeph>CExampleInterface</codeph>, from which implementations of the interface should derive. </p> <p> <codeph>CExampleInterface</codeph> provides three <codeph>NewL()</codeph> functions that allow clients to get respectively: </p> <ul>
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    18
<li id="GUID-C512F948-599C-5C46-AB2B-14348DFFD02A"><p>the default
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    19
implementation of the interface, using a specified custom resolver
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    20
to determine what is the default </p> </li>
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    21
<li id="GUID-2B3B6E81-296C-554C-BB18-BCF54121C26F"><p>an implementation
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    22
determined by the default resolver, using a specified string as a
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    23
resolution parameter </p> </li>
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    24
<li id="GUID-F0FD51DC-CC1D-5D27-ABFE-9381A168E996"><p>an implementation
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    25
determined by the default resolver, using a specified string as a
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    26
resolution parameter, and passing some data to the implementation </p> </li>
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    27
</ul> <p> <codeph>CExampleInterface</codeph> uses the overloads of <xref href="GUID-1344F049-81C4-3D17-AF46-8B5584680ADB.dita#GUID-1344F049-81C4-3D17-AF46-8B5584680ADB/GUID-ECFBCF8D-E372-36CD-8B60-0CFDBE01833E"><apiname>REComSession::CreateImplementation(TUid, TUid &amp;)</apiname></xref> to
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    28
implement these functions. </p> <p> <codeph>CExampleInterface</codeph> declares one pure virtual function, <codeph>DoMethodL()</codeph>, which supplies a service to the client. Implementations must implement
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    29
this function. </p> <p> <filepath>InterfaceDefinition</filepath> also provides an example of a custom resolver, called <codeph>CExampleResolver</codeph>. Its behaviour is the same as ECom's default resolver. Because a
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    30
resolver is an implementation of the ECom <codeph>CResolver</codeph> interface, it requires a registration resource file (<filepath>100098ea.rss</filepath>), and an exported factory table (<filepath>Proxy.cpp</filepath>). </p> </section>
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    31
<section id="GUID-17AD128E-AAF6-4AEB-B423-EE6B17AC843B"><title>Class
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    32
Summary</title><p><xref href="GUID-1344F049-81C4-3D17-AF46-8B5584680ADB.dita"><apiname>REComSession</apiname></xref></p><p><xref href="GUID-6E3118A3-4CE5-32AD-9C73-5CDD7B54D9EC.dita"><apiname>TEComResolverParams</apiname></xref></p><p><xref href="GUID-DABE7E22-BDF6-3A2E-99F1-3453706A694E.dita"><apiname>RImplInfoPtrArray</apiname></xref></p><p><xref href="GUID-38D97F70-383E-3950-B052-CB56965B0B48.dita"><apiname>CResolver</apiname></xref></p></section>
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    33
<section id="GUID-BDC71AA8-C20C-44CE-9D96-A79EED13E2BA"><title>Usage</title> <p>Building <filepath>InterfaceDefinition</filepath> exports the
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    34
files that contain the interface definition, <filepath>Interface.h</filepath> and <filepath>Interface.inl</filepath>, to <filepath>epoc32\include\</filepath>; produces a DLL <filepath>ExampleResolver.dll</filepath>; and compiles
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    35
a resource file <filepath>ExampleResolver.rsc</filepath> in the <filepath>\resource\plugins\</filepath> directory. </p> <p>Implementations
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    36
of the interface are provided in the <xref href="GUID-711C387D-E10C-5469-872A-5B2BDACC9B91.dita">Interface Implementation</xref> example. </p> <p>A client program that accesses the interface is
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 0
diff changeset
    37
provided in the <xref href="GUID-7B4A78D8-64BB-550E-ABC0-255312351215.dita">Interface Client</xref>example. </p> </section>
0
89d6a7a84779 Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
diff changeset
    38
</conbody></concept>