Attachment 'glu.vapi'
Download 1 /* glu.vapi
2 *
3 * Copyright (C) 2008 Matias De la Puente
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
9
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
14
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18 *
19 * Author:
20 * Matias De la Puente <mfpuente.ar@gmail.com>
21 */
22
23 [CCode (lower_case_cprefix ="", cheader_filename="GL/glu.h")]
24 namespace GLU
25 {
26 // Extensions
27 public const GL.GLenum GLU_EXT_object_space_tess;
28 public const GL.GLenum GLU_EXT_nurbs_tessellator;
29
30 // Version
31 public const GL.GLenum GLU_VERSION_1_1;
32 public const GL.GLenum GLU_VERSION_1_2;
33 public const GL.GLenum GLU_VERSION_1_3;
34
35 // StringName
36 public const GL.GLenum GLU_VERSION;
37 public const GL.GLenum GLU_EXTENSIONS;
38
39 // ErrorCode
40 public const GL.GLenum GLU_INVALID_ENUM;
41 public const GL.GLenum GLU_INVALID_VALUE;
42 public const GL.GLenum GLU_OUT_OF_MEMORY;
43 public const GL.GLenum GLU_INCOMPATIBLE_GL_VERSION;
44 public const GL.GLenum GLU_INVALID_OPERATION;
45
46 // NurbsDisplay
47 public const GL.GLenum GLU_OUTLINE_POLYGON;
48 public const GL.GLenum GLU_OUTLINE_PATCH;
49
50 // NurbsCallback
51 public const GL.GLenum GLU_NURBS_ERROR;
52 public const GL.GLenum GLU_ERROR;
53 public const GL.GLenum GLU_NURBS_BEGIN;
54 public const GL.GLenum GLU_NURBS_BEGIN_EXT;
55 public const GL.GLenum GLU_NURBS_VERTEX;
56 public const GL.GLenum GLU_NURBS_VERTEX_EXT;
57 public const GL.GLenum GLU_NURBS_NORMAL;
58 public const GL.GLenum GLU_NURBS_NORMAL_EXT;
59 public const GL.GLenum GLU_NURBS_COLOR;
60 public const GL.GLenum GLU_NURBS_COLOR_EXT;
61 public const GL.GLenum GLU_NURBS_TEXTURE_COORD;
62 public const GL.GLenum GLU_NURBS_TEX_COORD_EXT;
63 public const GL.GLenum GLU_NURBS_END;
64 public const GL.GLenum GLU_NURBS_END_EXT;
65 public const GL.GLenum GLU_NURBS_BEGIN_DATA;
66 public const GL.GLenum GLU_NURBS_BEGIN_DATA_EXT;
67 public const GL.GLenum GLU_NURBS_VERTEX_DATA;
68 public const GL.GLenum GLU_NURBS_VERTEX_DATA_EXT;
69 public const GL.GLenum GLU_NURBS_NORMAL_DATA;
70 public const GL.GLenum GLU_NURBS_NORMAL_DATA_EXT;
71 public const GL.GLenum GLU_NURBS_COLOR_DATA;
72 public const GL.GLenum GLU_NURBS_COLOR_DATA_EXT;
73 public const GL.GLenum GLU_NURBS_TEXTURE_COORD_DATA;
74 public const GL.GLenum GLU_NURBS_TEX_COORD_DATA_EXT;
75 public const GL.GLenum GLU_NURBS_END_DATA;
76 public const GL.GLenum GLU_NURBS_END_DATA_EXT;
77
78 // NurbsError
79 public const GL.GLenum GLU_NURBS_ERROR1;
80 public const GL.GLenum GLU_NURBS_ERROR2;
81 public const GL.GLenum GLU_NURBS_ERROR3;
82 public const GL.GLenum GLU_NURBS_ERROR4;
83 public const GL.GLenum GLU_NURBS_ERROR5;
84 public const GL.GLenum GLU_NURBS_ERROR6;
85 public const GL.GLenum GLU_NURBS_ERROR7;
86 public const GL.GLenum GLU_NURBS_ERROR8;
87 public const GL.GLenum GLU_NURBS_ERROR9;
88 public const GL.GLenum GLU_NURBS_ERROR10;
89 public const GL.GLenum GLU_NURBS_ERROR11;
90 public const GL.GLenum GLU_NURBS_ERROR12;
91 public const GL.GLenum GLU_NURBS_ERROR13;
92 public const GL.GLenum GLU_NURBS_ERROR14;
93 public const GL.GLenum GLU_NURBS_ERROR15;
94 public const GL.GLenum GLU_NURBS_ERROR16;
95 public const GL.GLenum GLU_NURBS_ERROR17;
96 public const GL.GLenum GLU_NURBS_ERROR18;
97 public const GL.GLenum GLU_NURBS_ERROR19;
98 public const GL.GLenum GLU_NURBS_ERROR20;
99 public const GL.GLenum GLU_NURBS_ERROR21;
100 public const GL.GLenum GLU_NURBS_ERROR22;
101 public const GL.GLenum GLU_NURBS_ERROR23;
102 public const GL.GLenum GLU_NURBS_ERROR24;
103 public const GL.GLenum GLU_NURBS_ERROR25;
104 public const GL.GLenum GLU_NURBS_ERROR26;
105 public const GL.GLenum GLU_NURBS_ERROR27;
106 public const GL.GLenum GLU_NURBS_ERROR28;
107 public const GL.GLenum GLU_NURBS_ERROR29;
108 public const GL.GLenum GLU_NURBS_ERROR30;
109 public const GL.GLenum GLU_NURBS_ERROR31;
110 public const GL.GLenum GLU_NURBS_ERROR32;
111 public const GL.GLenum GLU_NURBS_ERROR33;
112 public const GL.GLenum GLU_NURBS_ERROR34;
113 public const GL.GLenum GLU_NURBS_ERROR35;
114 public const GL.GLenum GLU_NURBS_ERROR36;
115 public const GL.GLenum GLU_NURBS_ERROR37;
116
117 // NurbsProperty
118 public const GL.GLenum GLU_AUTO_LOAD_MATRIX;
119 public const GL.GLenum GLU_CULLING;
120 public const GL.GLenum GLU_SAMPLING_TOLERANCE;
121 public const GL.GLenum GLU_DISPLAY_MODE;
122 public const GL.GLenum GLU_PARAMETRIC_TOLERANCE;
123 public const GL.GLenum GLU_SAMPLING_METHOD;
124 public const GL.GLenum GLU_U_STEP;
125 public const GL.GLenum GLU_V_STEP;
126 public const GL.GLenum GLU_NURBS_MODE;
127 public const GL.GLenum GLU_NURBS_MODE_EXT;
128 public const GL.GLenum GLU_NURBS_TESSELLATOR;
129 public const GL.GLenum GLU_NURBS_TESSELLATOR_EXT;
130 public const GL.GLenum GLU_NURBS_RENDERER;
131 public const GL.GLenum GLU_NURBS_RENDERER_EXT;
132
133 // NurbsSampling
134 public const GL.GLenum GLU_OBJECT_PARAMETRIC_ERROR;
135 public const GL.GLenum GLU_OBJECT_PARAMETRIC_ERROR_EXT;
136 public const GL.GLenum GLU_OBJECT_PATH_LENGTH;
137 public const GL.GLenum GLU_OBJECT_PATH_LENGTH_EXT;
138 public const GL.GLenum GLU_PATH_LENGTH;
139 public const GL.GLenum GLU_PARAMETRIC_ERROR;
140 public const GL.GLenum GLU_DOMAIN_DISTANCE;
141
142 // NurbsTrim
143 public const GL.GLenum GLU_MAP1_TRIM_2;
144 public const GL.GLenum GLU_MAP1_TRIM_3;
145
146 // QuadricDrawStyle
147 public const GL.GLenum GLU_POINT;
148 public const GL.GLenum GLU_LINE;
149 public const GL.GLenum GLU_FILL;
150 public const GL.GLenum GLU_SILHOUETTE;
151
152 // QuadricNormal
153 public const GL.GLenum GLU_SMOOTH;
154 public const GL.GLenum GLU_FLAT;
155 public const GL.GLenum GLU_NONE;
156
157 // QuadricOrientation
158 public const GL.GLenum GLU_OUTSIDE;
159 public const GL.GLenum GLU_INSIDE;
160
161 // TessCallback
162 public const GL.GLenum GLU_TESS_BEGIN;
163 public const GL.GLenum GLU_BEGIN;
164 public const GL.GLenum GLU_TESS_VERTEX;
165 public const GL.GLenum GLU_VERTEX;
166 public const GL.GLenum GLU_TESS_END;
167 public const GL.GLenum GLU_END;
168 public const GL.GLenum GLU_TESS_ERROR;
169 public const GL.GLenum GLU_TESS_EDGE_FLAG;
170 public const GL.GLenum GLU_EDGE_FLAG;
171 public const GL.GLenum GLU_TESS_COMBINE;
172 public const GL.GLenum GLU_TESS_BEGIN_DATA;
173 public const GL.GLenum GLU_TESS_VERTEX_DATA;
174 public const GL.GLenum GLU_TESS_END_DATA;
175 public const GL.GLenum GLU_TESS_ERROR_DATA;
176 public const GL.GLenum GLU_TESS_EDGE_FLAG_DATA;
177 public const GL.GLenum GLU_TESS_COMBINE_DATA;
178
179 // TessContour
180 public const GL.GLenum GLU_CW;
181 public const GL.GLenum GLU_CCW;
182 public const GL.GLenum GLU_INTERIOR;
183 public const GL.GLenum GLU_EXTERIOR;
184 public const GL.GLenum GLU_UNKNOWN;
185
186 // TessProperty
187 public const GL.GLenum GLU_TESS_WINDING_RULE;
188 public const GL.GLenum GLU_TESS_BOUNDARY_ONLY;
189 public const GL.GLenum GLU_TESS_TOLERANCE;
190
191 // TessError
192 public const GL.GLenum GLU_TESS_ERROR1;
193 public const GL.GLenum GLU_TESS_ERROR2;
194 public const GL.GLenum GLU_TESS_ERROR3;
195 public const GL.GLenum GLU_TESS_ERROR4;
196 public const GL.GLenum GLU_TESS_ERROR5;
197 public const GL.GLenum GLU_TESS_ERROR6;
198 public const GL.GLenum GLU_TESS_ERROR7;
199 public const GL.GLenum GLU_TESS_ERROR8;
200 public const GL.GLenum GLU_TESS_MISSING_BEGIN_POLYGON;
201 public const GL.GLenum GLU_TESS_MISSING_BEGIN_CONTOUR;
202 public const GL.GLenum GLU_TESS_MISSING_END_POLYGON;
203 public const GL.GLenum GLU_TESS_MISSING_END_CONTOUR;
204 public const GL.GLenum GLU_TESS_COORD_TOO_LARGE;
205 public const GL.GLenum GLU_TESS_NEED_COMBINE_CALLBACK;
206
207 // TessWinding
208 public const GL.GLenum GLU_TESS_WINDING_ODD;
209 public const GL.GLenum GLU_TESS_WINDING_NONZERO;
210 public const GL.GLenum GLU_TESS_WINDING_POSITIVE;
211 public const GL.GLenum GLU_TESS_WINDING_NEGATIVE;
212 public const GL.GLenum GLU_TESS_WINDING_ABS_GEQ_TWO;
213 public const GL.GLenum GLU_TESS_MAX_COORD;
214
215 [CCode (cname="_GLUfuncptr", has_target = false)]
216 public delegate void GLUfuncptr ();
217
218 [Compact]
219 [CCode (cname="GLUnurbsObj", cprefix="glu", free_function="gluDeleteNurbsRenderer")]
220 public class Nurbs
221 {
222 [CCode (cname="gluNewNurbsRenderer")]
223 public Nurbs ();
224
225 public void BeginCurve ();
226 public void BeginSurface ();
227 public void BeginTrim ();
228 public void EndCurve ();
229 public void EndSurface ();
230 public void EndTrim ();
231 public void GetNurbsProperty (GL.GLenum property, out GL.GLfloat data);
232 public void LoadSamplingMatrices ([CCode (array_length = false)] GL.GLfloat[] model, [CCode (array_length = false)] GL.GLfloat[] perspective, [CCode (array_length = false)] GL.GLint[] view);
233 public void NurbsCallback (GL.GLenum which, GLUfuncptr CallBackFunc);
234 public void NurbsCallbackData (GL.GLvoid* userData);
235 public void NurbsCallbackDataEXT (GL.GLvoid* userData);
236 public void NurbsCurve (GL.GLint knotCount, [CCode (array_length = false)] GL.GLfloat[] knots, [CCode (array_length = false)] GL.GLint stride, [CCode (array_length = false)] GL.GLfloat[] control, GL.GLint order, GL.GLenum type);
237 public void NurbsProperty (GL.GLenum property, GL.GLfloat @value);
238 public void NurbsSurface (GL.GLint sKnotCount, [CCode (array_length = false)] GL.GLfloat[] sKnots, GL.GLint tKnotCount, [CCode (array_length = false)] GL.GLfloat[] tKnots, GL.GLint sStride, GL.GLint tStride, [CCode (array_length = false)] GL.GLfloat[] control, GL.GLint sOrder, GL.GLint tOrder, GL.GLenum type);
239 public void PwlCurve (GL.GLint count, [CCode (array_length = false)] GL.GLfloat[] data, GL.GLint stride, GL.GLenum type);
240 }
241
242 [Compact]
243 [CCode (cname="GLUquadricObj", cprefix="glu", free_function="gluDeleteQuadric")]
244 public class Quadric
245 {
246 [CCode (cname="gluNewQuadric")]
247 public Quadric ();
248
249 public void Cylinder (GL.GLdouble @base, GL.GLdouble top, GL.GLdouble height, GL.GLint slices, GL.GLint stacks);
250 public void Disk (GL.GLdouble inner, GL.GLdouble outer, GL.GLint slices, GL.GLint loops);
251 public void PartialDisk (GL.GLdouble inner, GL.GLdouble outer, GL.GLint slices, GL.GLint loops, GL.GLdouble start, GL.GLdouble sweep);
252 public void Sphere (GL.GLdouble radius, GL.GLint slices, GL.GLint stacks);
253 public void QuadricCallback (GL.GLenum which, GLUfuncptr CallBackFunc);
254 public void QuadricDrawStyle (GL.GLenum draw);
255 public void QuadricNormals (GL.GLenum normal);
256 public void QuadricOrientation (GL.GLenum orientation);
257 public void QuadricTexture (GL.GLboolean texture);
258 }
259
260 [Compact]
261 [CCode (cname="GLUtesselatorObj", cprefix="glu", free_function="gluDeleteTess")]
262 public class Tesselator
263 {
264 [CCode (cname="gluNewTess")]
265 public Tesselator ();
266
267 public void BeginPolygon ();
268 public void EndPolygon ();
269 public void GetTessProperty (GL.GLenum which, out GL.GLdouble data);
270 public void NextContour (GL.GLenum type);
271 public void TessBeginContour ();
272 public void TessBeginPolygon (GL.GLvoid* data);
273 public void TessCallback (GL.GLenum which, GLUfuncptr CallBackFunc);
274 public void TessEndContour ();
275 public void TessEndPolygon ();
276 public void TessNormal (GL.GLdouble valueX, GL.GLdouble valueY, GL.GLdouble valueZ);
277 public void TessProperty (GL.GLenum which, GL.GLdouble data);
278 public void TessVertex ([CCode (array_length = false)] GL.GLdouble[] location, GL.GLvoid* data);
279 }
280
281
282 public static GL.GLint gluBuild1DMipmapLevels (GL.GLenum target, GL.GLint internalFormat, GL.GLsizei width, GL.GLenum format, GL.GLenum type, GL.GLint level, GL.GLint @base, GL.GLint max, void* data);
283 public static GL.GLint gluBuild1DMipmaps (GL.GLenum target, GL.GLint internalFormat, GL.GLsizei width, GL.GLenum format, GL.GLenum type, void* data);
284 public static GL.GLint gluBuild2DMipmapLevels (GL.GLenum target, GL.GLint internalFormat, GL.GLsizei width, GL.GLsizei height, GL.GLenum format, GL.GLenum type, GL.GLint level, GL.GLint @base, GL.GLint max, void* data);
285 public static GL.GLint gluBuild2DMipmaps (GL.GLenum target, GL.GLint internalFormat, GL.GLsizei width, GL.GLsizei height, GL.GLenum format, GL.GLenum type, void* data);
286 public static GL.GLint gluBuild3DMipmapLevels (GL.GLenum target, GL.GLint internalFormat, GL.GLsizei width, GL.GLsizei height, GL.GLsizei depth, GL.GLenum format, GL.GLenum type, GL.GLint level, GL.GLint @base, GL.GLint max, void* data);
287 public static GL.GLint gluBuild3DMipmaps (GL.GLenum target, GL.GLint internalFormat, GL.GLsizei width, GL.GLsizei height, GL.GLsizei depth, GL.GLenum format, GL.GLenum type, void* data);
288 public static GL.GLboolean gluCheckExtension (string extName, string extString);
289 public static unowned string gluErrorString (GL.GLenum error);
290 public static unowned string gluGetString (GL.GLenum name);
291 public static void gluLookAt (GL.GLdouble eyeX, GL.GLdouble eyeY, GL.GLdouble eyeZ, GL.GLdouble centerX, GL.GLdouble centerY, GL.GLdouble centerZ, GL.GLdouble upX, GL.GLdouble upY, GL.GLdouble upZ);
292 public static void gluOrtho2D (GL.GLdouble left, GL.GLdouble right, GL.GLdouble bottom, GL.GLdouble top);
293 public static void gluPerspective (GL.GLdouble fovy, GL.GLdouble aspect, GL.GLdouble zNear, GL.GLdouble zFar);
294 public static void gluPickMatrix (GL.GLdouble x, GL.GLdouble y, GL.GLdouble delX, GL.GLdouble delY, [CCode (array_length = false)] GL.GLint[] viewport);
295 public static GL.GLint gluProject (GL.GLdouble objX, GL.GLdouble objY, GL.GLdouble objZ, [CCode (array_length = false)] GL.GLdouble[] model, [CCode (array_length = false)] GL.GLdouble[] proj, [CCode (array_length = false)] GL.GLint[] view, out GL.GLdouble winX, out GL.GLdouble winY, out GL.GLdouble winZ);
296 public static GL.GLint gluScaleImage (GL.GLenum format, GL.GLsizei wIn, GL.GLsizei hIn, GL.GLenum typeIn, void* dataIn, GL.GLsizei wOut, GL.GLsizei hOut, GL.GLenum typeOut, GL.GLvoid* dataOut);
297 public static GL.GLint gluUnProject (GL.GLdouble winX, GL.GLdouble winY, GL.GLdouble winZ, [CCode (array_length = false)] GL.GLdouble[] model, [CCode (array_length = false)] GL.GLdouble[] proj, [CCode (array_length = false)] GL.GLint[] view, out GL.GLdouble objX, out GL.GLdouble objY, out GL.GLdouble objZ);
298 public static GL.GLint gluUnProject4 (GL.GLdouble winX, GL.GLdouble winY, GL.GLdouble winZ, GL.GLdouble clipW, [CCode (array_length = false)] GL.GLdouble[] model, [CCode (array_length = false)] GL.GLdouble[] proj, [CCode (array_length = false)] GL.GLint[] view, GL.GLdouble nearVal, GL.GLdouble farVal, out GL.GLdouble objX, out GL.GLdouble objY, out GL.GLdouble objZ, out GL.GLdouble objW);
299
300 }
Attached Files
To refer to attachments on a page, use attachment:filename, as shown below in the list of files. Do NOT use the URL of the [get] link, since this is subject to change and can break easily.You are not allowed to attach a file to this page.