author | Dominic Pinkman <Dominic.Pinkman@Nokia.com> |
Fri, 22 Jan 2010 18:26:19 +0000 | |
changeset 1 | 25a17d01db0c |
child 3 | 46218c8b8afa |
permissions | -rw-r--r-- |
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
|
1 |
<?xml version="1.0" encoding="utf-8"?> |
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
|
2 |
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. --> |
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
|
3 |
<!-- This component and the accompanying materials are made available under the terms of the License |
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
|
4 |
"Eclipse Public License v1.0" which accompanies this distribution, |
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
|
5 |
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". --> |
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
|
6 |
<!-- Initial Contributors: |
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
|
7 |
Nokia Corporation - initial contribution. |
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
|
8 |
Contributors: |
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
|
9 |
--> |
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
|
10 |
<!DOCTYPE concept |
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
|
11 |
PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"> |
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-7EFBEEAD-3E74-5165-B305-313F7DE4BEB4"><title>OpenVG Interface Component Overview</title><prolog><metadata><keywords/></metadata></prolog><conbody><p>The OpenVG Interface component defines the interface to OpenVG on the Symbian platform. The component standardizes the source and binary interfaces in order to encourage both source and binary compatibility between Symbian-based OpenVG implementations. </p> <p> <b>Variant</b>: <xref href="GUID-D93978BE-11A3-5CE3-B110-1DEAA5AD566C.dita">ScreenPlay</xref> and <xref href="GUID-F64E6551-670E-5E12-8103-DE504D3EC94F.dita">non-ScreenPlay</xref>. </p> <section><title>Supported APIs</title> <p>The OpenVG specifications are defined by the Khronos Group (<xref scope="external" href="http://www.khronos.org">www.khronos.org</xref>). The following table provides links to the relevant specifications. </p> <table id="GUID-5B734E4C-E838-5478-990F-817F4D0971FB"><tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/><thead><row><entry>APIs</entry> <entry>Specification</entry> </row> </thead> <tbody><row><entry><p>OpenVG 1.0.1 and VGU 1.0 </p> </entry> <entry><p> <xref scope="external" href="http://www.khronos.org/registry/vg/specs/openvg_1_0_1.pdf">http://www.khronos.org/registry/vg/specs/openvg_1_0_1.pdf </xref> </p> </entry> </row> <row><entry><p>OpenVG 1.1 and VGU 1.1 </p> </entry> <entry><p> <xref scope="external" href="http://www.khronos.org/registry/vg/specs/openvg-1.1.pdf">http://www.khronos.org/registry/vg/specs/openvg-1.1.pdf </xref> </p> </entry> </row> </tbody> </tgroup> </table> <p>VGU provides some handy functions that can be used by OpenVG applications. For example, it provides functions for drawing primitives (such as lines, polygons, rectangles and arcs) and for computing warp matrixes. The latter transform the drawing surface from one shape to another (for example, from a square to an arbitrary quadrilateral defined by points). </p> </section> <section><title>Header files</title> <p>The OpenVG Interface component includes the Khronos-released header files <filepath>openvg.h</filepath> and <filepath>vgu.h</filepath>. These header files incorporate minor changes such as Doxygen tags (<codeph>/**</codeph> comments) and the Symbian-defined macro <xref href="GUID-95CD96CA-70FD-325A-9D97-0E2BCB4C92FF.dita"><apiname>__SOFTFP</apiname></xref>, which is described below. Use of these standard header files helps to ensure binary compatibility for applications across different Symbian platforms. It also provides source compatibility between different operating systems. </p> <p>The header files are provided for both OpenVG 1.0 and OpenVG 1.1. Stub <filepath>openvg.h</filepath> and <filepath>vgu.h</filepath> files redirect to the OpenVG 1.0 headers by default. However a variability point can be used to expose the OpenVG 1.1 headers. </p> <p>The Symbian-defined header file <filepath>/epoc32/include/khronos_types.h</filepath> maps the Khronos-defined basic types to native Symbian types. </p> </section> <section><title>Floating point conventions</title> <p>Within the Khronos-supplied header files, the Symbian-defined macro <xref href="GUID-95CD96CA-70FD-325A-9D97-0E2BCB4C92FF.dita"><apiname>__SOFTFP</apiname></xref> has been added to the declaration of all functions that pass, or return, floating point numbers by value. This means that: </p> <ul><li id="GUID-85D70C88-01C9-5ACF-A39E-F2DC74158FD8"><p>When using the API both clients and the OpenVG implementation must use software floating point calling conventions, regardless whether hardware or software floating point compiler options are actually used. </p> </li> <li id="GUID-C755520B-8CC8-55E0-A47F-584A7C3A19C5"><p>If suitable hardware is available, the OpenVG implementation can use hardware-accelerated floating point features internally without a risk of binary incompatibility with client programs. </p> </li> <li id="GUID-6C5F4FDE-7C69-5C47-9D10-4CB6A43EB0B8"><p>If suitable hardware is available, OpenVG client programs can use hardware-accelerated floating point features internally without a risk of binary incompatibility with the OpenVG implementation. </p> </li> </ul> </section> <section><title>Library names</title> <p>The OpenVG Interface component includes the following LIB files: </p> <table id="GUID-DB65C429-5A67-5D4B-A42D-D48883BEB94F"><tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/><thead><row><entry>Library</entry> <entry>Name</entry> </row> </thead> <tbody><row><entry><p>OpenVG </p> </entry> <entry><p> <filepath>libOpenVG.lib</filepath> </p> </entry> </row> <row><entry><p>VGU </p> </entry> <entry><p> <filepath> libOpenVGU.lib</filepath> </p> </entry> </row> </tbody> </tgroup> </table> <p>The corresponding DLL files must be delivered by the implementation. </p> </section> <section><title>DEF files</title> <p>The OpenVG Interface component supplies DEF files to further ensure binary compatibility between different platforms. These files exist for the WINS and WINSCW emulator and ARM hardware platforms as shown in the following tables. Although the names have a trailing "u", this is not specified in the MMP file because it is appended automatically. </p> <p><b>DEF files for WINS and WINSCW </b> </p> <table id="GUID-2F4052FB-DEB3-5849-954A-8D6A333E3916"><tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/><thead><row><entry>Library</entry> <entry>Name</entry> </row> </thead> <tbody><row><entry><p>OpenVG 1.0.1 </p> </entry> <entry><p> <filepath>\epoc32\include\platform\def\win32\libopenvg10u.def</filepath> </p> </entry> </row> <row><entry><p>VGU 1.0.1 </p> </entry> <entry><p> <filepath>\epoc32\include\platform\def\win32\libopenvgu10u.def</filepath> </p> </entry> </row> <row><entry><p>OpenVG 1.1 </p> </entry> <entry><p> <filepath>\epoc32\include\platform\def\win32\libopenvg11u.def</filepath> </p> </entry> </row> <row><entry><p>VGU 1.1 </p> </entry> <entry><p> <filepath>\epoc32\include\platform\def\win32\libopenvgu11u.def</filepath> </p> </entry> </row> </tbody> </tgroup> </table> <p><b>DEF files for ARM </b> </p> <table id="GUID-B067511D-B957-5BC1-9967-04FADE5EF079"><tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/><thead><row><entry>Library</entry> <entry>Name</entry> </row> </thead> <tbody><row><entry><p>OpenVG 1.0.1 </p> </entry> <entry><p> <filepath>\epoc32\include\platform\def\eabi\libopenvg10u.def</filepath> </p> </entry> </row> <row><entry><p>VGU 1.0.1 </p> </entry> <entry><p> <filepath> \epoc32\include\platform\def\eabi\libopenvgu10u.def</filepath> </p> </entry> </row> <row><entry><p>OpenVG 1.1 </p> </entry> <entry><p> <filepath>\epoc32\include\platform\def\eabi\libopenvg11u.def</filepath> </p> </entry> </row> <row><entry><p>VGU 1.1 </p> </entry> <entry><p> <filepath> \epoc32\include\platform\def\eabi\libopenvgu11u.def</filepath> </p> </entry> </row> </tbody> </tgroup> </table> </section> </conbody><related-links><link href="GUID-1A8ED0EB-B3B7-553F-95E3-2120D877966B.dita"><linktext>OpenVG Collection Overview</linktext> </link> <link href="GUID-C2E24953-3D83-59FB-8B7A-C850474406DB.dita"><linktext>OpenVG Interface Component</linktext> </link> </related-links></concept> |