diff -r 48780e181b38 -r 578be2adaf3e Symbian3/PDK/Source/GUID-7EFBEEAD-3E74-5165-B305-313F7DE4BEB4.dita --- a/Symbian3/PDK/Source/GUID-7EFBEEAD-3E74-5165-B305-313F7DE4BEB4.dita Tue Jul 20 12:00:49 2010 +0100 +++ b/Symbian3/PDK/Source/GUID-7EFBEEAD-3E74-5165-B305-313F7DE4BEB4.dita Fri Aug 13 16:47:46 2010 +0100 @@ -1,158 +1,158 @@ - - - - - -OpenVG -Interface Component OverviewThe 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. -

Variant: ScreenPlay and non-ScreenPlay.

-
Supported APIs

The OpenVG specifications are defined -by the Khronos Group (www.khronos.org). -The following table provides links to the relevant specifications.

- - - -APIs -Specification - - - - -

OpenVG 1.0.1 and VGU 1.0

-

http://www.khronos.org/registry/vg/specs/openvg_1_0_1.pdf

-
- -

OpenVG 1.1 and VGU 1.1

-

http://www.khronos.org/registry/vg/specs/openvg-1.1.pdf

-
- - -

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).

-
Header files

The OpenVG Interface component includes -the Khronos-released header files openvg.h and vgu.h. -These header files incorporate minor changes such as Doxygen tags (/** comments) -and the Symbian-defined macro __SOFTFP, 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.

The header files -are provided for both OpenVG 1.0 and OpenVG 1.1. Stub openvg.h and vgu.h files -redirect to the OpenVG 1.0 headers by default. However a variability point -can be used to expose the OpenVG 1.1 headers.

The Symbian-defined -header file /epoc32/include/khronos_types.h maps the -Khronos-defined basic types to native Symbian types.

-
Floating point conventions

Within the Khronos-supplied -header files, the Symbian-defined macro __SOFTFP has been -added to the declaration of all functions that pass, or return, floating point -numbers by value. This means that:

    -
  • 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.

  • -
  • 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.

  • -
  • 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.

  • -
-
Library names

The OpenVG Interface component includes -the following LIB files:

- - - -Library -Name - - - - -

OpenVG

-

libOpenVG.lib

-
- -

VGU

-

libOpenVGU.lib

-
- - -

The corresponding DLL files must be delivered by the implementation.

-
DEF files

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.

DEF files for WINS and WINSCW

- - - -Library -Name - - - - -

OpenVG 1.0.1

-

\epoc32\include\platform\def\win32\libopenvg10u.def

-
- -

VGU 1.0.1

-

\epoc32\include\platform\def\win32\libopenvgu10u.def

-
- -

OpenVG 1.1

-

\epoc32\include\platform\def\win32\libopenvg11u.def

-
- -

VGU 1.1

-

\epoc32\include\platform\def\win32\libopenvgu11u.def

-
- - -

DEF files for ARM

- - - -Library -Name - - - - -

OpenVG 1.0.1

-

\epoc32\include\platform\def\eabi\libopenvg10u.def

-
- -

VGU 1.0.1

-

\epoc32\include\platform\def\eabi\libopenvgu10u.def

-
- -

OpenVG 1.1

-

\epoc32\include\platform\def\eabi\libopenvg11u.def

-
- -

VGU 1.1

-

\epoc32\include\platform\def\eabi\libopenvgu11u.def

-
- - -
-
-OpenVG Collection -Overview -OpenVG Interface -Component + + + + + +OpenVG +Interface Component OverviewThe 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. +

Variant: ScreenPlay and non-ScreenPlay.

+
Supported APIs

The OpenVG specifications are defined +by the Khronos Group (www.khronos.org). +The following table provides links to the relevant specifications.

+ + + +APIs +Specification + + + + +

OpenVG 1.0.1 and VGU 1.0

+

http://www.khronos.org/registry/vg/specs/openvg_1_0_1.pdf

+
+ +

OpenVG 1.1 and VGU 1.1

+

http://www.khronos.org/registry/vg/specs/openvg-1.1.pdf

+
+ + +

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).

+
Header files

The OpenVG Interface component includes +the Khronos-released header files openvg.h and vgu.h. +These header files incorporate minor changes such as Doxygen tags (/** comments) +and the Symbian-defined macro __SOFTFP, 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.

The header files +are provided for both OpenVG 1.0 and OpenVG 1.1. Stub openvg.h and vgu.h files +redirect to the OpenVG 1.0 headers by default. However a variability point +can be used to expose the OpenVG 1.1 headers.

The Symbian-defined +header file /epoc32/include/khronos_types.h maps the +Khronos-defined basic types to native Symbian types.

+
Floating point conventions

Within the Khronos-supplied +header files, the Symbian-defined macro __SOFTFP has been +added to the declaration of all functions that pass, or return, floating point +numbers by value. This means that:

    +
  • 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.

  • +
  • 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.

  • +
  • 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.

  • +
+
Library names

The OpenVG Interface component includes +the following LIB files:

+ + + +Library +Name + + + + +

OpenVG

+

libOpenVG.lib

+
+ +

VGU

+

libOpenVGU.lib

+
+ + +

The corresponding DLL files must be delivered by the implementation.

+
DEF files

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.

DEF files for WINS and WINSCW

+ + + +Library +Name + + + + +

OpenVG 1.0.1

+

\epoc32\include\platform\def\win32\libopenvg10u.def

+
+ +

VGU 1.0.1

+

\epoc32\include\platform\def\win32\libopenvgu10u.def

+
+ +

OpenVG 1.1

+

\epoc32\include\platform\def\win32\libopenvg11u.def

+
+ +

VGU 1.1

+

\epoc32\include\platform\def\win32\libopenvgu11u.def

+
+ + +

DEF files for ARM

+ + + +Library +Name + + + + +

OpenVG 1.0.1

+

\epoc32\include\platform\def\eabi\libopenvg10u.def

+
+ +

VGU 1.0.1

+

\epoc32\include\platform\def\eabi\libopenvgu10u.def

+
+ +

OpenVG 1.1

+

\epoc32\include\platform\def\eabi\libopenvg11u.def

+
+ +

VGU 1.1

+

\epoc32\include\platform\def\eabi\libopenvgu11u.def

+
+ + +
+
+OpenVG Collection +Overview +OpenVG Interface +Component
\ No newline at end of file