Symbian3/PDK/Source/GUID-F25862A3-51E5-581A-9CC9-964791781E69.dita
author Graeme Price <GRAEME.PRICE@NOKIA.COM>
Fri, 15 Oct 2010 14:32:18 +0100
changeset 15 307f4279f433
parent 14 578be2adaf3e
permissions -rw-r--r--
Initial contribution of the Adaptation Documentation.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
14
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     1
<?xml version="1.0" encoding="utf-8"?>
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     2
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     3
<!-- This component and the accompanying materials are made available under the terms of the License 
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     4
"Eclipse Public License v1.0" which accompanies this distribution, 
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     5
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     6
<!-- Initial Contributors:
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     7
    Nokia Corporation - initial contribution.
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     8
Contributors: 
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     9
-->
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
    10
<!DOCTYPE concept
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
    11
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
1
25a17d01db0c Addition of the PDK content and example code for Documentation_content according to Feature bug 1607 and bug 1608
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
diff changeset
    12
<concept xml:lang="en" id="GUID-F25862A3-51E5-581A-9CC9-964791781E69"><title> Overview</title><prolog><metadata><keywords/></metadata></prolog><conbody><p>This document introduces you to the Camera Plugin Support API. </p> <section><title>Purpose</title> <p>This API is implemented as an Ecom plug-in. </p> <p><b>Camera Plugin Support Library Details</b> </p> <p>The DLL that provides the functionality and the library to which your code must link is identified below. </p> <table id="GUID-9A4C35C5-5665-5313-91C5-61F3D490F3FD"><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> <xref href="GUID-87544794-C402-3462-B1B2-D4D8324DA7B3.dita"><apiname>ecampluginsupport.dll</apiname></xref>  </p> </entry> <entry><p> <xref href="GUID-645E6782-2610-3E79-A6A8-66A65C325E5F.dita"><apiname>euser.lib </apiname></xref>  </p> <p> <xref href="GUID-84849911-AE12-3CCA-8C3C-3A0EDEFE9CAF.dita"><apiname> ecom.lib</apiname></xref>  </p> <p> <xref href="GUID-B03B32E5-C35F-34F6-9777-161E6956BDF0.dita"><apiname> mmcommonutils.lib </apiname></xref>  </p> <p> <xref href="GUID-B4E2E996-CFBE-3156-B02D-D0F2F634B3C7.dita"><apiname>ecam.lib</apiname></xref>  </p> </entry> <entry><p>These files are used for implementing the Camera Plug-in Support functionalities. </p> </entry> </row> </tbody> </tgroup> </table> </section> <section><title>Description</title> <p>When a new camera object is required, the Ecam library requests a camera plug-in from the Ecom framework. When more than one ROM based plug-ins have been registered on the platform, the one with the highest version defined in its resource file is selected. </p> <p>Symbian version of the plug-in is a stub intended for replacement by an alternate implementation. </p> <p>ECam implementation provides static information about camera support to the client, by deriving from <xref href="GUID-F3807F58-762D-3D28-9831-81FABE614FE2.dita"><apiname>CcameraInfoPlugin()</apiname></xref>. Method <xref href="GUID-4E8A5141-5E4A-322A-9892-8DC49D04986E.dita#GUID-4E8A5141-5E4A-322A-9892-8DC49D04986E/GUID-69ABA39B-E369-3CB6-AA07-6E8CE01C0D18"><apiname>Ccamera::CamerasAvailable()</apiname></xref> is implemented through concrete implementation of <xref href="GUID-94C787BB-4666-3D99-8FCF-53E58D7EFDD7.dita"><apiname>CcameraInfoPlugin</apiname></xref> virtual method. Implementers need to register support for the interface <xref href="GUID-D7036F17-3019-3ABB-8D99-3A67B908C2F0.dita"><apiname>KuidOnboardCameraPlugin</apiname></xref> in their resource file. </p> </section> <section><title> Camera Plugin Support Key Classes</title> <p>All cameras are Ecom plug-ins sub-classed from <xref href="GUID-7243A080-5D9D-3176-8A61-1018DD1A2D0E.dita"><apiname>CcameraPlugin</apiname></xref> class and register support for the interface <xref href="GUID-D7036F17-3019-3ABB-8D99-3A67B908C2F0.dita"><apiname>KuidOnboardCameraPlugin</apiname></xref> in their resource file. The key classes that make up the Camera Plug-in Support API is <xref href="GUID-7243A080-5D9D-3176-8A61-1018DD1A2D0E.dita"><apiname>CcameraPlugin</apiname></xref>. </p> </section> <section><title>Using Camera Plugin Support</title> <p>The current implementation of the camera expects cameras to be implemented as Ecom plug-ins. The ROM plug-in with the highest version is selected at instantiation phase. The plug-in implements <xref href="GUID-021C509B-C821-3401-B2F4-DE7F52BB16D4.dita"><apiname>CCamera</apiname></xref> interface, defined in <filepath>ECam.h</filepath>. </p> </section> <section><title>See also</title> <p><xref href="GUID-36C3A2FD-F4F9-5B8C-91B7-40C29B3D2224.dita">Overview</xref> of the Camera component </p> <p><xref href="GUID-93D08C5F-D864-59E3-963D-D836EBE88B4D.dita">Camera Plug-in Support Tutorial</xref>  </p> </section> </conbody></concept>