Symbian3/PDK/Source/GUID-F97ABEDE-C318-5EA2-B8CB-6510725413A0.dita
changeset 1 25a17d01db0c
child 3 46218c8b8afa
equal deleted inserted replaced
0:89d6a7a84779 1:25a17d01db0c
       
     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-F97ABEDE-C318-5EA2-B8CB-6510725413A0" xml:lang="en"><title>OpenMAX
       
    13 IL Loader Interface Overview </title><prolog><metadata><keywords/></metadata></prolog><conbody>
       
    14 <p>This document introduces you to the Symbian way of using OpenMAX IL Loader
       
    15 interface. </p>
       
    16 <section><title>Purpose</title> <p>The OpenMAX IL Loader interface is installed
       
    17 as an ECom plug-in between OpenMAX IL Core and OpenMAX IL Components on the
       
    18 Symbian platform. This ECom plug-in is loaded by OpenMAX IL Core to access
       
    19 OpenMAX IL Loader. </p> <p>The OpenMAX IL Loader interface (entry point) is
       
    20 provided as a static library, and the ECom implementation is defined as a
       
    21 macro to allow OpenMAX IL Loader to be built as an ECom plug-in with very
       
    22 little overhead. </p> </section>
       
    23 <section><title>API name library details</title><p>You can choose either the
       
    24 Symbian OpenMAX IL Loader or a third-party OpenMAX IL Loader to load and unload
       
    25 OpenMAX IL Components. For Symbian OpenMAX IL Loader functionality you must
       
    26 adapt the following static library file. </p> <table id="GUID-F42DE580-E72B-58EB-8FFA-21E8068621F7">
       
    27 <tgroup cols="3"><colspec colname="col0"/><colspec colname="col1"/><colspec colname="col2"/>
       
    28 <thead>
       
    29 <row>
       
    30 <entry>DLL</entry>
       
    31 <entry>LIB</entry>
       
    32 <entry>Short Description</entry>
       
    33 </row>
       
    34 </thead>
       
    35 <tbody>
       
    36 <row>
       
    37 <entry><p>You must create your own <b>*.dll</b>  </p> </entry>
       
    38 <entry><p> <b> omxilsymbianloaderif.lib</b>  </p> </entry>
       
    39 <entry><p>These files are used for implementing the OpenMAX IL Loader interface. </p> </entry>
       
    40 </row>
       
    41 </tbody>
       
    42 </tgroup>
       
    43 </table></section>
       
    44 <section><title>Architectural relationship</title> <p>The OpenMAX IL Loader
       
    45 interface interacts with OpenMAX IL Component: it is an ECom plug-in that
       
    46 loads and unloads OpenMAX IL Component. </p> <p> <xref href="GUID-DBC308FC-FF91-314D-B633-6AE020917511.dita"><apiname>KUidOmxILLoaderInterface</apiname></xref> is
       
    47 an identifier for the OpenMAX IL Loader interface. </p> </section>
       
    48 <section><title>Description</title> <p>The OpenMAX IL Loader interface has
       
    49 the following two features: </p> <ul>
       
    50 <li id="GUID-AA107FB6-A38D-58A5-B352-FAA0ECAF3A01"><p>The <xref href="GUID-D03963AB-F746-3446-8BBB-AFFBD710515E.dita"><apiname>OMX_LOADERTYPE</apiname></xref> structure </p> </li>
       
    51 <li id="GUID-20CD2664-A815-50E2-B545-F5C9E645AFE5"><p>The static library <filepath>omxilsymbianloaderif.lib</filepath>. </p> </li>
       
    52 </ul> <p><b>The OMX_LOADERTYPE structure </b> </p> <p>The functionality of the <xref href="GUID-D03963AB-F746-3446-8BBB-AFFBD710515E.dita"><apiname>OMX_LOADERTYPE</apiname></xref> structure
       
    53 is to </p> <ul>
       
    54 <li id="GUID-CF40F008-A691-50CE-9C70-2415E4C8FA7C"><p>initialize OpenMAX IL
       
    55 Loader </p> </li>
       
    56 <li id="GUID-6027DA92-5467-5024-9C21-EBAB61D9666C"><p>uninitialize OpenMAX
       
    57 IL Loader </p> </li>
       
    58 <li id="GUID-68298652-62A9-5B4E-B17E-563A7C13FCB0"><p>load OpenMAX IL Component </p> </li>
       
    59 <li id="GUID-4DC1020F-9251-5C8A-94DD-5823AE5D5B22"><p>unload OpenMAX IL Component </p> </li>
       
    60 <li id="GUID-84A72B98-6E71-52A3-90CB-93004B163C3A"><p>detect a valid OpenMAX
       
    61 IL Component </p> </li>
       
    62 <li id="GUID-0E0D82CA-B8C8-5D6D-918A-FDF21F91D00A"><p>list the number of roles
       
    63 supported by OpenMAX IL Components </p> </li>
       
    64 <li id="GUID-EEAE0F0D-C56C-513C-A13B-61501C644D13"><p>list the number of OpenMAX
       
    65 IL Components that support a specific role. </p> </li>
       
    66 </ul> <p> <b>Note:</b> The <xref href="GUID-D03963AB-F746-3446-8BBB-AFFBD710515E.dita"><apiname>OMX_LOADERTYPE</apiname></xref> structure is
       
    67 not a part of <xref href="http://www.khronos.org/files/openmax_il_spec_1_1_1.pdf" scope="external">OpenMAX IL Specification 1.1.1</xref>, but follows its naming
       
    68 style to suggest the definition to <xref href="http://www.khronos.org/openmax/" scope="external">The Khronos group</xref> for inclusion in <xref href="http://www.khronos.org/files/openmax_il_spec_1_1_1.pdf" scope="external">OpenMAX IL Specification 1.1.1</xref>. </p> <p><b>The static library omxilsymbianloaderif.lib </b> </p> <p>The static library <filepath>omxilsymbianloaderif.lib</filepath> has
       
    69 the following functionality: </p> <ul>
       
    70 <li id="GUID-42E53C51-9A33-51D0-B2F5-74F085E79C61"><p>The library is installed
       
    71 as an ECom plug-in that implements the <xref href="GUID-54B6422B-3FED-3A17-A44E-C0977FFD0186.dita"><apiname>COmxComponentLoaderIf</apiname></xref> to
       
    72 run under OpenMAX IL Core. More detailed information is available in the <xref href="GUID-148B1188-8007-5077-A813-50F728CAC5D5.dita#GUID-148B1188-8007-5077-A813-50F728CAC5D5/GUID-782B851D-CACF-55F8-9F5B-A839C5A3ABAA">OpenMAX
       
    73 IL Core Overview Architectural Relationship</xref> section. </p> </li>
       
    74 <li id="GUID-0E7FE6A9-D18D-50BF-8446-493F2595193C"><p> <xref href="GUID-54B6422B-3FED-3A17-A44E-C0977FFD0186.dita"><apiname>COmxComponentLoaderIf</apiname></xref> instantiates
       
    75 the OpenMAX IL Loader interface and gets the valid handle to the already populated <xref href="GUID-D03963AB-F746-3446-8BBB-AFFBD710515E.dita"><apiname>OMX_LOADERTYPE</apiname></xref> structure
       
    76 during the load operation. </p> </li>
       
    77 <li id="GUID-FD194AAF-D907-5A07-94C8-F2E64C596266"><p> <xref href="GUID-54B6422B-3FED-3A17-A44E-C0977FFD0186.dita"><apiname>COmxComponentLoaderIf</apiname></xref> deletes
       
    78 the OpenMAX IL Loader interface during the unload operation. </p> </li>
       
    79 </ul> </section>
       
    80 <section><title>Key OpenMAX IL Loader interface classes</title> <p>The key
       
    81 classes of the OpenMAX IL Loader interface are </p> <ul>
       
    82 <li id="GUID-A6F01CE7-A9F2-5FEA-8CF5-0D23FE5C28A8"><p> <xref href="GUID-54B6422B-3FED-3A17-A44E-C0977FFD0186.dita"><apiname>COmxComponentLoaderIf</apiname></xref>,
       
    83 which is an interface installed as an ECom plug-in to run under Symbian OpenMAX
       
    84 IL Core </p> </li>
       
    85 <li id="GUID-F00E15FA-DAD3-5F7F-AEF8-DE6041187C10"><p> <xref href="GUID-C05B4F55-E4D3-3C1D-9332-70805950E856.dita"><apiname>COmxSymbianLoaderIf</apiname></xref>,
       
    86 which is a Symbian implementation of OpenMAX IL Loader. </p> </li>
       
    87 </ul> </section>
       
    88 <section><title>Using OpenMAX IL Loader interface</title> <p>The OpenMAX IL
       
    89 Loader interface is mainly used to </p> <ul>
       
    90 <li id="GUID-DEC38843-0867-5937-9208-A808AC52BCED"><p>load OpenMAX IL Component </p> </li>
       
    91 <li id="GUID-EB36342E-3B01-511F-94F0-FDA0AAD254C0"><p>unload OpenMAX IL Component </p> </li>
       
    92 <li id="GUID-843A143B-4DE5-590A-AEDE-A68E3962FB26"><p>list the number of roles
       
    93 supported by OpenMAX IL Component </p> </li>
       
    94 <li id="GUID-10DC5DFB-DBEF-5BE3-8C1F-2E4E5D698631"><p>list the number of OpenMAX
       
    95 IL Components that support a specific role. </p> </li>
       
    96 </ul> </section>
       
    97 </conbody><related-links>
       
    98 <link href="GUID-148B1188-8007-5077-A813-50F728CAC5D5.dita"><linktext>OpenMAX IL
       
    99 Core Overview</linktext></link>
       
   100 <link href="GUID-89CFD892-16B0-5B70-AE46-D4BFB8412BC4.dita"><linktext>OpenMAX IL
       
   101 Content Pipe Overview</linktext></link>
       
   102 <link href="GUID-24D99069-438E-5CC4-90B6-5609A2E50953.dita"><linktext>OpenMAX IL
       
   103 Component Overview</linktext></link>
       
   104 </related-links></concept>