1 /* $Revision: 6810 $ on $Date:: 2008-10-29 10:31:37 -0400 #$ */
3 /*------------------------------------------------------------------------
5 * VGU 1.0.1 Reference Implementation
6 * -------------------------------------
8 * Copyright (c) 2008 The Khronos Group Inc.
10 * Permission is hereby granted, free of charge, to any person obtaining a
11 * copy of this software and /or associated documentation files
12 * (the "Materials "), to deal in the Materials without restriction,
13 * including without limitation the rights to use, copy, modify, merge,
14 * publish, distribute, sublicense, and/or sell copies of the Materials,
15 * and to permit persons to whom the Materials are furnished to do so,
16 * subject to the following conditions:
18 * The above copyright notice and this permission notice shall be included
19 * in all copies or substantial portions of the Materials.
21 * THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
22 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
23 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
24 * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
25 * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
26 * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE MATERIALS OR
27 * THE USE OR OTHER DEALINGS IN THE MATERIALS.
31 * \brief VGU 1.0.1 API.
32 *//*-------------------------------------------------------------------*/
41 #include <VG/openvg.h>
43 #define VGU_VERSION_1_0 1
46 # error VGU_API_CALL must be defined
50 # error VGU_API_ENTRY must be defined
54 # error VGU_API_EXIT must be defined
60 VGU_BAD_HANDLE_ERROR
= 0xF000,
61 VGU_ILLEGAL_ARGUMENT_ERROR
= 0xF001,
62 VGU_OUT_OF_MEMORY_ERROR
= 0xF002,
63 VGU_PATH_CAPABILITY_ERROR
= 0xF003,
64 VGU_BAD_WARP_ERROR
= 0xF004,
66 VGU_ERROR_CODE_FORCE_SIZE
= VG_MAX_ENUM
70 VGU_ARC_OPEN
= 0xF100,
71 VGU_ARC_CHORD
= 0xF101,
74 VGU_ARC_TYPE_FORCE_SIZE
= VG_MAX_ENUM
77 VGU_API_CALL VGUErrorCode VGU_API_ENTRY
vguLine(VGPath path
,
78 VGfloat x0
, VGfloat y0
,
79 VGfloat x1
, VGfloat y1
) VGU_API_EXIT
;
81 VGU_API_CALL VGUErrorCode VGU_API_ENTRY
vguPolygon(VGPath path
,
82 const VGfloat
* points
, VGint count
,
83 VGboolean closed
) VGU_API_EXIT
;
85 VGU_API_CALL VGUErrorCode VGU_API_ENTRY
vguRect(VGPath path
,
87 VGfloat width
, VGfloat height
) VGU_API_EXIT
;
89 VGU_API_CALL VGUErrorCode VGU_API_ENTRY
vguRoundRect(VGPath path
,
91 VGfloat width
, VGfloat height
,
92 VGfloat arcWidth
, VGfloat arcHeight
) VGU_API_EXIT
;
94 VGU_API_CALL VGUErrorCode VGU_API_ENTRY
vguEllipse(VGPath path
,
95 VGfloat cx
, VGfloat cy
,
96 VGfloat width
, VGfloat height
) VGU_API_EXIT
;
98 VGU_API_CALL VGUErrorCode VGU_API_ENTRY
vguArc(VGPath path
,
100 VGfloat width
, VGfloat height
,
101 VGfloat startAngle
, VGfloat angleExtent
,
102 VGUArcType arcType
) VGU_API_EXIT
;
104 VGU_API_CALL VGUErrorCode VGU_API_ENTRY
vguComputeWarpQuadToSquare(VGfloat sx0
, VGfloat sy0
,
105 VGfloat sx1
, VGfloat sy1
,
106 VGfloat sx2
, VGfloat sy2
,
107 VGfloat sx3
, VGfloat sy3
,
108 VGfloat
* matrix
) VGU_API_EXIT
;
110 VGU_API_CALL VGUErrorCode VGU_API_ENTRY
vguComputeWarpSquareToQuad(VGfloat dx0
, VGfloat dy0
,
111 VGfloat dx1
, VGfloat dy1
,
112 VGfloat dx2
, VGfloat dy2
,
113 VGfloat dx3
, VGfloat dy3
,
114 VGfloat
* matrix
) VGU_API_EXIT
;
116 VGU_API_CALL VGUErrorCode VGU_API_ENTRY
vguComputeWarpQuadToQuad(VGfloat dx0
, VGfloat dy0
,
117 VGfloat dx1
, VGfloat dy1
,
118 VGfloat dx2
, VGfloat dy2
,
119 VGfloat dx3
, VGfloat dy3
,
120 VGfloat sx0
, VGfloat sy0
,
121 VGfloat sx1
, VGfloat sy1
,
122 VGfloat sx2
, VGfloat sy2
,
123 VGfloat sx3
, VGfloat sy3
,
124 VGfloat
* matrix
) VGU_API_EXIT
;
130 #endif /* #ifndef _VGU_H */