Release 0.41.92
[vala-gnome.git] / vapi / cogl-1.0.vapi
blob0083631c6f2ecfba1c9ad9a9a4d40c355093eadc
1 /* cogl-1.0.vapi generated by vapigen, do not modify. */
3 [CCode (gir_namespace = "Cogl", gir_version = "1.0")]
4 namespace Cogl {
5         [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
6         [Compact]
7         public class Bitmap : Cogl.Handle {
8                 public static GLib.Type error_get_type ();
9                 public static GLib.Quark error_quark ();
10                 public static bool get_size_from_file (string filename, out int width, out int height);
11                 public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
12         }
13         [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
14         [Compact]
15         public class Buffer : Cogl.Handle {
16                 public static GLib.Type access_get_type ();
17                 public static GLib.Type bit_get_type ();
18                 public uint get_size ();
19                 public Cogl.BufferUpdateHint get_update_hint ();
20                 public uchar map (Cogl.BufferAccess access);
21                 public static GLib.Type map_hint_get_type ();
22                 public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
23                 public void set_update_hint (Cogl.BufferUpdateHint hint);
24                 public static GLib.Type target_get_type ();
25                 public void unmap ();
26                 public static GLib.Type update_hint_get_type ();
27         }
28         [CCode (cheader_filename = "cogl/cogl.h")]
29         [Compact]
30         public class Framebuffer {
31         }
32         [CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
33         [Compact]
34         public class Handle {
35                 [CCode (cname = "cogl_is_bitmap")]
36                 public bool is_bitmap ();
37                 [CCode (cname = "cogl_is_buffer")]
38                 public bool is_buffer ();
39                 [CCode (cname = "cogl_is_material")]
40                 public bool is_material ();
41                 [CCode (cname = "cogl_is_offscreen")]
42                 public bool is_offscreen ();
43                 [CCode (cname = "cogl_is_pixel_buffer")]
44                 public bool is_pixel_buffer ();
45                 [CCode (cname = "cogl_is_program")]
46                 public bool is_program ();
47                 [CCode (cname = "cogl_is_shader")]
48                 public bool is_shader ();
49                 [CCode (cname = "cogl_is_texture")]
50                 public bool is_texture ();
51                 [CCode (cname = "cogl_is_vertex_buffer")]
52                 public bool is_vertex_buffer ();
53         }
54         [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_material_ref", unref_function = "cogl_material_unref")]
55         [Compact]
56         public class Material : Cogl.Handle {
57                 [CCode (has_construct_function = false, type = "CoglHandle*")]
58                 public Material ();
59                 public static GLib.Type alpha_func_get_type ();
60                 public Cogl.Material copy ();
61                 public static GLib.Type filter_get_type ();
62                 public static void foreach_layer (Cogl.Material material, Cogl.MaterialLayerCallback callback);
63                 public void get_ambient (out Cogl.Color ambient);
64                 public void get_color (out Cogl.Color color);
65                 public static void get_depth_range (Cogl.Material material, float near_val, float far_val);
66                 public static bool get_depth_test_enabled (Cogl.Material material);
67                 public static Cogl.DepthTestFunction get_depth_test_function (Cogl.Material material);
68                 public static bool get_depth_writing_enabled (Cogl.Material material);
69                 public void get_diffuse (out Cogl.Color diffuse);
70                 public void get_emission (out Cogl.Color emission);
71                 public static bool get_layer_point_sprite_coords_enabled (Cogl.Material material, int layer_index);
72                 public unowned GLib.List<Cogl.MaterialLayer> get_layers ();
73                 public int get_n_layers ();
74                 public float get_point_size ();
75                 public float get_shininess ();
76                 public void get_specular (out Cogl.Color specular);
77                 public static unowned Cogl.Bitmap get_user_program (Cogl.Material material);
78                 public void remove_layer (int layer_index);
79                 public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
80                 public void set_ambient (Cogl.Color ambient);
81                 public void set_ambient_and_diffuse (Cogl.Color color);
82                 public bool set_blend (string blend_string) throws Cogl.BlendStringError;
83                 public void set_blend_constant (Cogl.Color constant_color);
84                 public void set_color (Cogl.Color color);
85                 public void set_color4f (float red, float green, float blue, float alpha);
86                 public void set_color4ub (uchar red, uchar green, uchar blue, uchar alpha);
87                 public static bool set_depth_range (Cogl.Material material, float near_val, float far_val) throws GLib.Error;
88                 public static void set_depth_test_enabled (Cogl.Material material, bool enable);
89                 public static void set_depth_test_function (Cogl.Material material, Cogl.DepthTestFunction function);
90                 public static void set_depth_writing_enabled (Cogl.Material material, bool enable);
91                 public void set_diffuse (Cogl.Color diffuse);
92                 public void set_emission (Cogl.Color emission);
93                 public void set_layer (int layer_index, Cogl.Texture texture);
94                 public bool set_layer_combine (int layer_index, string blend_string) throws Cogl.BlendStringError;
95                 public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
96                 public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
97                 public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
98                 public static bool set_layer_point_sprite_coords_enabled (Cogl.Material material, int layer_index, bool enable) throws GLib.Error;
99                 public static void set_layer_wrap_mode (Cogl.Material material, int layer_index, Cogl.MaterialWrapMode mode);
100                 public static void set_layer_wrap_mode_p (Cogl.Material material, int layer_index, Cogl.MaterialWrapMode mode);
101                 public static void set_layer_wrap_mode_s (Cogl.Material material, int layer_index, Cogl.MaterialWrapMode mode);
102                 public static void set_layer_wrap_mode_t (Cogl.Material material, int layer_index, Cogl.MaterialWrapMode mode);
103                 public void set_point_size (float point_size);
104                 public void set_shininess (float shininess);
105                 public void set_specular (Cogl.Color specular);
106                 public static void set_user_program (Cogl.Material material, Cogl.Bitmap program);
107                 public static GLib.Type wrap_mode_get_type ();
108         }
109         [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
110         [Compact]
111         public class MaterialLayer : Cogl.Handle {
112                 public Cogl.MaterialFilter get_mag_filter ();
113                 public Cogl.MaterialFilter get_min_filter ();
114                 public unowned Cogl.Texture? get_texture ();
115                 public Cogl.MaterialLayerType get_type ();
116                 public static Cogl.MaterialWrapMode get_wrap_mode_p (Cogl.MaterialLayer layer);
117                 public static Cogl.MaterialWrapMode get_wrap_mode_s (Cogl.MaterialLayer layer);
118                 public static Cogl.MaterialWrapMode get_wrap_mode_t (Cogl.MaterialLayer layer);
119                 public static GLib.Type type_get_type ();
120         }
121         [CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")]
122         [Compact]
123         public class Object {
124                 public void* get_user_data (Cogl.UserDataKey key);
125                 public void set_user_data (Cogl.UserDataKey key, Cogl.UserDataDestroyCallback destroy);
126         }
127         [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_offscreen_ref", unref_function = "cogl_offscreen_unref")]
128         [Compact]
129         public class Offscreen : Cogl.Handle {
130                 [CCode (cname = "cogl_pop_draw_buffer")]
131                 public static void pop_draw_buffer ();
132                 [CCode (cname = "cogl_push_draw_buffer")]
133                 public static void push_draw_buffer ();
134                 [CCode (instance_pos = -1)]
135                 public void set_draw_buffer (Cogl.BufferTarget target);
136                 [CCode (cname = "cogl_offscreen_new_to_texture", has_construct_function = false, type = "CoglHandle*")]
137                 public Offscreen.to_texture (Cogl.Texture handle);
138         }
139         [CCode (cheader_filename = "cogl-pango/cogl-pango.h")]
140         [Compact]
141         public class PangoFontMap {
142                 [CCode (has_construct_function = false, type = "PangoFontMap*")]
143                 public PangoFontMap ();
144                 public void clear_glyph_cache ();
145                 public unowned Pango.Context create_context ();
146                 public unowned Pango.Renderer get_renderer ();
147                 public bool get_use_mipmapping ();
148                 public void set_resolution (double dpi);
149                 public void set_use_mipmapping (bool value);
150         }
151         [CCode (cheader_filename = "cogl-pango/cogl-pango.h")]
152         [Compact]
153         public class PangoRenderer {
154         }
155         [CCode (cheader_filename = "cogl-pango/cogl-pango.h")]
156         [Compact]
157         public class PangoRendererClass {
158         }
159         [CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
160         [Compact]
161         public class Path {
162                 public static void arc (float center_x, float center_y, float radius_x, float radius_y, float angle_1, float angle_2);
163                 public static void close ();
164                 public unowned Cogl.Path copy ();
165                 public static void curve_to (float x_1, float y_1, float x_2, float y_2, float x_3, float y_3);
166                 public static void ellipse (float center_x, float center_y, float radius_x, float radius_y);
167                 public static void fill ();
168                 public static void fill_preserve ();
169                 public static GLib.Type fill_rule_get_type ();
170                 public static Cogl.PathFillRule get_fill_rule ();
171                 public static void line (float x_1, float y_1, float x_2, float y_2);
172                 public static void line_to (float x, float y);
173                 public static void move_to (float x, float y);
174                 public static void @new ();
175                 public static void polygon ([CCode (array_length = false)] float[] coords, int num_points);
176                 public static void polyline ([CCode (array_length = false)] float[] coords, int num_points);
177                 public static void rectangle (float x_1, float y_1, float x_2, float y_2);
178                 public static void rel_curve_to (float x_1, float y_1, float x_2, float y_2, float x_3, float y_3);
179                 public static void rel_line_to (float x, float y);
180                 public static void rel_move_to (float x, float y);
181                 public static void round_rectangle (float x_1, float y_1, float x_2, float y_2, float radius, float arc_step);
182                 public static void set_fill_rule (Cogl.PathFillRule fill_rule);
183                 public static void stroke ();
184                 public static void stroke_preserve ();
185         }
186         [CCode (cheader_filename = "cogl/cogl.h")]
187         [Compact]
188         public class PixelArray {
189         }
190         [CCode (cheader_filename = "cogl/cogl.h")]
191         [Compact]
192         public class PixelBuffer : Cogl.Handle {
193                 public PixelBuffer (uint size);
194                 public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
195         }
196         [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
197         [Compact]
198         public class Program : Cogl.Handle {
199                 [CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
200                 public Program ();
201                 public void attach_shader (Cogl.Shader shader_handle);
202                 public int get_uniform_location (string uniform_name);
203                 public void link ();
204                 public static void uniform_1f (int uniform_no, float value);
205                 public static void uniform_1i (int uniform_no, int value);
206                 public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
207                 public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
208                 public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
209                 public void use ();
210         }
211         [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
212         [Compact]
213         public class Shader : Cogl.Handle {
214                 [CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
215                 public Shader (Cogl.ShaderType shader_type);
216                 public void compile ();
217                 public string get_info_log ();
218                 public Cogl.ShaderType get_type ();
219                 public bool is_compiled ();
220                 public void source (string source);
221         }
222         [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_texture_ref", unref_function = "cogl_texture_unref")]
223         [Compact]
224         public class Texture : Cogl.Handle {
225                 public Texture.from_bitmap (Cogl.Bitmap bmp_handle, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
226                 public Texture.from_data (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, uint rowstride, [CCode (array_length = false)] uchar[] data);
227                 public Texture.from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
228                 public Texture.from_sub_texture (Cogl.Texture full_texture, int sub_x, int sub_y, int sub_width, int sub_height);
229                 public int get_data (Cogl.PixelFormat format, uint rowstride, [CCode (array_length = false)] uint8[] data);
230                 public Cogl.PixelFormat get_format ();
231                 public uint get_height ();
232                 public int get_max_waste ();
233                 public uint get_rowstride ();
234                 public uint get_width ();
235                 public bool is_sliced ();
236                 public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, [CCode (array_length = false)] uint8[] data);
237                 public Texture.with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
238         }
239         [CCode (cheader_filename = "cogl/cogl.h")]
240         [Compact]
241         public class UserDataKey {
242                 public int unused;
243         }
244         [CCode (cheader_filename = "cogl/cogl.h")]
245         [Compact]
246         public class Vector3 {
247                 public float x;
248                 public float y;
249                 public float z;
250         }
251         [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
252         [Compact]
253         public class VertexBuffer : Cogl.Handle {
254                 [CCode (has_construct_function = false, type = "CoglHandle*")]
255                 public VertexBuffer (uint n_vertices);
256                 public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
257                 public void @delete (string attribute_name);
258                 public void disable (string attribute_name);
259                 public void draw (Cogl.VerticesMode mode, int first, int count);
260                 public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
261                 public void enable (string attribute_name);
262                 public uint get_n_vertices ();
263                 public void submit ();
264         }
265         [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
266         [Compact]
267         public class VertexBufferIndices : Cogl.Handle {
268                 public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
269                 public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
270                 public Cogl.IndicesType get_type ();
271         }
272         [CCode (cheader_filename = "cogl/cogl.h")]
273         public struct Angle {
274                 public Cogl.Fixed cos ();
275                 public Cogl.Fixed sin ();
276                 public Cogl.Fixed tan ();
277         }
278         [BooleanType]
279         [CCode (cheader_filename = "cogl/cogl.h")]
280         [GIR (name = "Bool")]
281         [SimpleType]
282         public struct Bool : bool {
283         }
284         [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
285         public struct Color {
286                 public uchar red;
287                 public uchar green;
288                 public uchar blue;
289                 public uchar alpha;
290                 public uint32 padding0;
291                 public uint32 padding1;
292                 public uint32 padding2;
293                 public Cogl.Color copy ();
294                 public static bool equal (void* v1, void* v2);
295                 public Color.from_4f (float red, float green, float blue, float alpha);
296                 public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
297                 public float get_alpha ();
298                 public uint get_alpha_byte ();
299                 public float get_alpha_float ();
300                 public float get_blue ();
301                 public uint get_blue_byte ();
302                 public float get_blue_float ();
303                 public float get_green ();
304                 public uint get_green_byte ();
305                 public float get_green_float ();
306                 public float get_red ();
307                 public uint get_red_byte ();
308                 public float get_red_float ();
309                 public void init_from_4f (float red, float green, float blue, float alpha);
310                 public void init_from_4fv (float color_array);
311                 public void init_from_4ub (uchar red, uchar green, uchar blue, uchar alpha);
312                 public void premultiply ();
313                 public void set_alpha (float alpha);
314                 public void set_alpha_byte (uint alpha);
315                 public void set_alpha_float (float alpha);
316                 public void set_blue (float blue);
317                 public void set_blue_byte (uint blue);
318                 public void set_blue_float (float blue);
319                 public void set_from_4f (float red, float green, float blue, float alpha);
320                 public void set_from_4ub (uchar red, uchar green, uchar blue, uchar alpha);
321                 public void set_green (float green);
322                 public void set_green_byte (uint green);
323                 public void set_green_float (float green);
324                 public void set_red (float red);
325                 public void set_red_byte (uint red);
326                 public void set_red_float (float red);
327                 public void unpremultiply ();
328         }
329         [CCode (cheader_filename = "cogl/cogl.h")]
330         public struct Fixed {
331                 public Cogl.Fixed atan ();
332                 public Cogl.Fixed atan2 (Cogl.Fixed b);
333                 public Cogl.Fixed cos ();
334                 public Cogl.Fixed div (Cogl.Fixed b);
335                 public static Cogl.Fixed log2 (uint x);
336                 public Cogl.Fixed mul (Cogl.Fixed b);
337                 public Cogl.Fixed mul_div (Cogl.Fixed b, Cogl.Fixed c);
338                 public static uint pow (uint x, Cogl.Fixed y);
339                 public uint pow2 ();
340                 public Cogl.Fixed sin ();
341                 public Cogl.Fixed sqrt ();
342                 public Cogl.Fixed tan ();
343         }
344         [CCode (cheader_filename = "cogl/cogl.h", type_id = "COGL_TYPE_MATRIX")]
345         public struct Matrix {
346                 public float xx;
347                 public float yx;
348                 public float zx;
349                 public float wx;
350                 public float xy;
351                 public float yy;
352                 public float zy;
353                 public float wy;
354                 public float xz;
355                 public float yz;
356                 public float zz;
357                 public float wz;
358                 public float xw;
359                 public float yw;
360                 public float zw;
361                 public float ww;
362                 [CCode (array_length = false)]
363                 public weak float[] inv;
364                 public uint type;
365                 public uint flags;
366                 public static bool equal (void* v1, void* v2);
367                 [CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
368                 public Matrix.from_array ([CCode (array_length = false)] float[] array);
369                 public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
370                 [CCode (array_length = false)]
371                 public unowned float[] get_array ();
372                 public bool get_inverse (out Cogl.Matrix inverse);
373                 [CCode (cname = "cogl_matrix_init_identity")]
374                 public Matrix.identity ();
375                 [CCode (cname = "cogl_matrix_multiply")]
376                 public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
377                 public void ortho (float left, float right, float bottom, float top, float z_near, float z_far);
378                 public void perspective (float fov_y, float aspect, float z_near, float z_far);
379                 public void rotate (float angle, float x, float y, float z);
380                 public void scale (float sx, float sy, float sz);
381                 public void transform_point (ref float x, ref float y, ref float z, ref float w);
382                 public void translate (float x, float y, float z);
383         }
384         [CCode (cheader_filename = "cogl/cogl.h")]
385         public struct TextureVertex {
386                 public float x;
387                 public float y;
388                 public float z;
389                 public float tx;
390                 public float ty;
391                 public Cogl.Color color;
392         }
393         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
394         public enum AttributeType {
395                 BYTE,
396                 UNSIGNED_BYTE,
397                 SHORT,
398                 UNSIGNED_SHORT,
399                 FLOAT
400         }
401         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
402         public enum BitmapError {
403                 FAILED,
404                 UNKNOWN_TYPE,
405                 CORRUPT_IMAGE
406         }
407         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_ACCESS_", has_type_id = false)]
408         public enum BufferAccess {
409                 READ,
410                 WRITE,
411                 READ_WRITE
412         }
413         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
414         public enum BufferBit {
415                 COLOR,
416                 DEPTH,
417                 STENCIL
418         }
419         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_MAP_HINT_", has_type_id = false)]
420         public enum BufferMapHint {
421                 DISCARD
422         }
423         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
424         public enum BufferTarget {
425                 WINDOW_BUFFER,
426                 OFFSCREEN_BUFFER
427         }
428         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_UPDATE_HINT_", has_type_id = false)]
429         public enum BufferUpdateHint {
430                 STATIC,
431                 DYNAMIC,
432                 STREAM
433         }
434         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
435         public enum DepthTestFunction {
436                 NEVER,
437                 LESS,
438                 EQUAL,
439                 LEQUAL,
440                 GREATER,
441                 NOTEQUAL,
442                 GEQUAL,
443                 ALWAYS
444         }
445         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DRIVER_ERROR_", has_type_id = false)]
446         public enum DriverError {
447                 UNKNOWN_VERSION,
448                 INVALID_VERSION
449         }
450         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ERROR_", has_type_id = false)]
451         public enum Error {
452                 UNSUPPORTED
453         }
454         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_", has_type_id = false)]
455         public enum FeatureFlags {
456                 TEXTURE_RECTANGLE,
457                 TEXTURE_NPOT,
458                 TEXTURE_YUV,
459                 TEXTURE_READ_PIXELS,
460                 SHADERS_GLSL,
461                 OFFSCREEN,
462                 OFFSCREEN_MULTISAMPLE,
463                 OFFSCREEN_BLIT,
464                 FOUR_CLIP_PLANES,
465                 STENCIL_BUFFER,
466                 VBOS,
467                 PBOS,
468                 UNSIGNED_INT_INDICES,
469                 DEPTH_RANGE,
470                 TEXTURE_NPOT_BASIC,
471                 TEXTURE_NPOT_MIPMAP,
472                 TEXTURE_NPOT_REPEAT,
473                 POINT_SPRITE,
474                 TEXTURE_3D,
475                 SHADERS_ARBFP
476         }
477         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FOG_MODE_", has_type_id = false)]
478         public enum FogMode {
479                 LINEAR,
480                 EXPONENTIAL,
481                 EXPONENTIAL_SQUARED
482         }
483         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
484         public enum IndicesType {
485                 BYTE,
486                 SHORT,
487                 INT
488         }
489         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
490         public enum MaterialAlphaFunc {
491                 NEVER,
492                 LESS,
493                 EQUAL,
494                 LEQUAL,
495                 GREATER,
496                 NOTEQUAL,
497                 GEQUAL,
498                 ALWAYS
499         }
500         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
501         public enum MaterialFilter {
502                 NEAREST,
503                 LINEAR,
504                 NEAREST_MIPMAP_NEAREST,
505                 LINEAR_MIPMAP_NEAREST,
506                 NEAREST_MIPMAP_LINEAR,
507                 LINEAR_MIPMAP_LINEAR
508         }
509         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_LAYER_TYPE_", has_type_id = false)]
510         public enum MaterialLayerType {
511                 TEXTURE
512         }
513         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
514         public enum MaterialWrapMode {
515                 REPEAT,
516                 CLAMP_TO_EDGE,
517                 AUTOMATIC
518         }
519         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PATH_FILL_RULE_", has_type_id = false)]
520         public enum PathFillRule {
521                 NON_ZERO,
522                 EVEN_ODD
523         }
524         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
525         public enum PixelFormat {
526                 ANY,
527                 A_8,
528                 RGB_565,
529                 RGBA_4444,
530                 RGBA_5551,
531                 YUV,
532                 G_8,
533                 RGB_888,
534                 BGR_888,
535                 RGBA_8888,
536                 BGRA_8888,
537                 ARGB_8888,
538                 ABGR_8888,
539                 RGBA_8888_PRE,
540                 BGRA_8888_PRE,
541                 ARGB_8888_PRE,
542                 ABGR_8888_PRE,
543                 RGBA_4444_PRE,
544                 RGBA_5551_PRE
545         }
546         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
547         public enum ReadPixelsFlags {
548                 BUFFER
549         }
550         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
551         public enum ShaderType {
552                 VERTEX,
553                 FRAGMENT
554         }
555         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
556         public enum TextureFlags {
557                 NONE,
558                 NO_AUTO_MIPMAP,
559                 NO_SLICING,
560                 NO_ATLAS
561         }
562         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_PIXMAP_X11_DAMAGE_", has_type_id = false)]
563         public enum TexturePixmapX11ReportLevel {
564                 RAW_RECTANGLES,
565                 DELTA_RECTANGLES,
566                 BOUNDING_BOX,
567                 NON_EMPTY
568         }
569         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
570         public enum VerticesMode {
571                 POINTS,
572                 LINE_STRIP,
573                 LINE_LOOP,
574                 LINES,
575                 TRIANGLE_STRIP,
576                 TRIANGLE_FAN,
577                 TRIANGLES
578         }
579         [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_")]
580         public errordomain BlendStringError {
581                 PARSE_ERROR,
582                 ARGUMENT_PARSE_ERROR,
583                 INVALID_ERROR,
584                 GPU_UNSUPPORTED_ERROR
585         }
586         [CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
587         public delegate void FuncPtr ();
588         [CCode (cheader_filename = "cogl/cogl.h")]
589         public delegate bool MaterialLayerCallback (Cogl.Material material, int layer_index);
590         [CCode (cheader_filename = "cogl/cogl.h")]
591         public delegate void UserDataDestroyCallback ();
592         [CCode (cheader_filename = "cogl/cogl.h")]
593         public const int AFIRST_BIT;
594         [CCode (cheader_filename = "cogl/cogl.h")]
595         public const int A_BIT;
596         [CCode (cheader_filename = "cogl/cogl.h")]
597         public const int BGR_BIT;
598         [CCode (cheader_filename = "cogl/cogl.h")]
599         public const int CLUTTER_COGL_HAS_GL;
600         [CCode (cheader_filename = "cogl/cogl.h")]
601         public const int FIXED_0_5;
602         [CCode (cheader_filename = "cogl/cogl.h")]
603         public const int FIXED_1;
604         [CCode (cheader_filename = "cogl/cogl.h")]
605         public const int FIXED_2_PI;
606         [CCode (cheader_filename = "cogl/cogl.h")]
607         public const int FIXED_BITS;
608         [CCode (cheader_filename = "cogl/cogl.h")]
609         public const int FIXED_EPSILON;
610         [CCode (cheader_filename = "cogl/cogl.h")]
611         public const int FIXED_MAX;
612         [CCode (cheader_filename = "cogl/cogl.h")]
613         public const int FIXED_MIN;
614         [CCode (cheader_filename = "cogl/cogl.h")]
615         public const int FIXED_PI;
616         [CCode (cheader_filename = "cogl/cogl.h")]
617         public const int FIXED_PI_2;
618         [CCode (cheader_filename = "cogl/cogl.h")]
619         public const int FIXED_PI_4;
620         [CCode (cheader_filename = "cogl/cogl.h")]
621         public const int FIXED_Q;
622         [CCode (cheader_filename = "cogl/cogl.h")]
623         public const int HAS_GL;
624         [CCode (cheader_filename = "cogl/cogl.h")]
625         public const int HAS_X11;
626         [CCode (cheader_filename = "cogl/cogl.h")]
627         public const int HAS_XLIB;
628         [CCode (cheader_filename = "cogl/cogl.h")]
629         public const int PIXEL_FORMAT_24;
630         [CCode (cheader_filename = "cogl/cogl.h")]
631         public const int PIXEL_FORMAT_32;
632         [CCode (cheader_filename = "cogl/cogl.h")]
633         public const int PREMULT_BIT;
634         [CCode (cheader_filename = "cogl/cogl.h")]
635         public const int RADIANS_TO_DEGREES;
636         [CCode (cheader_filename = "cogl/cogl.h")]
637         public const int SQRTI_ARG_10_PERCENT;
638         [CCode (cheader_filename = "cogl/cogl.h")]
639         public const int SQRTI_ARG_5_PERCENT;
640         [CCode (cheader_filename = "cogl/cogl.h")]
641         public const int SQRTI_ARG_MAX;
642         [CCode (cheader_filename = "cogl/cogl.h")]
643         public const int TEXTURE_MAX_WASTE;
644         [CCode (cheader_filename = "cogl/cogl.h")]
645         public const int UNORDERED_MASK;
646         [CCode (cheader_filename = "cogl/cogl.h")]
647         public const int UNPREMULT_MASK;
648         [CCode (cheader_filename = "cogl/cogl.h")]
649         public static GLib.Type attribute_type_get_type ();
650         [CCode (cheader_filename = "cogl/cogl.h")]
651         public static void begin_gl ();
652         [CCode (cheader_filename = "cogl/cogl.h")]
653         public static GLib.Type blend_string_error_get_type ();
654         [CCode (cheader_filename = "cogl/cogl.h")]
655         public static bool check_extension (string name, string ext);
656         [CCode (cheader_filename = "cogl/cogl.h")]
657         public static void clear (Cogl.Color color, uint buffers);
658         [CCode (cheader_filename = "cogl/cogl.h")]
659         public static void clip_ensure ();
660         [CCode (cheader_filename = "cogl/cogl.h")]
661         public static void clip_pop ();
662         [CCode (cheader_filename = "cogl/cogl.h")]
663         public static void clip_push (float x_offset, float y_offset, float width, float height);
664         [CCode (cheader_filename = "cogl/cogl.h")]
665         public static void clip_push_from_path ();
666         [CCode (cheader_filename = "cogl/cogl.h")]
667         public static void clip_push_from_path_preserve ();
668         [CCode (cheader_filename = "cogl/cogl.h")]
669         public static void clip_push_rectangle (float x0, float y0, float x1, float y1);
670         [CCode (cheader_filename = "cogl/cogl.h")]
671         public static void clip_push_window_rect (float x_offset, float y_offset, float width, float height);
672         [CCode (cheader_filename = "cogl/cogl.h")]
673         public static void clip_push_window_rectangle (int x_offset, int y_offset, int width, int height);
674         [CCode (cheader_filename = "cogl/cogl.h")]
675         public static void clip_stack_restore ();
676         [CCode (cheader_filename = "cogl/cogl.h")]
677         public static void clip_stack_save ();
678         [CCode (cheader_filename = "cogl/cogl.h")]
679         public static GLib.Type depth_test_function_get_type ();
680         [CCode (cheader_filename = "cogl/cogl.h")]
681         public static void disable_fog ();
682         [CCode (cheader_filename = "cogl/cogl.h")]
683         public static Cogl.Fixed double_to_fixed (double value);
684         [CCode (cheader_filename = "cogl/cogl.h")]
685         public static int double_to_int (double value);
686         [CCode (cheader_filename = "cogl/cogl.h")]
687         public static uint double_to_uint (double value);
688         [CCode (cheader_filename = "cogl/cogl.h")]
689         public static GLib.Type driver_error_get_type ();
690         [CCode (cheader_filename = "cogl/cogl.h")]
691         public static void end_gl ();
692         [CCode (cheader_filename = "cogl/cogl.h")]
693         public static GLib.Type error_get_type ();
694         [CCode (cheader_filename = "cogl/cogl.h")]
695         public static GLib.Type feature_flags_get_type ();
696         [CCode (cheader_filename = "cogl/cogl.h")]
697         public static bool features_available (Cogl.FeatureFlags features);
698         [CCode (cheader_filename = "cogl/cogl.h")]
699         public static void flush ();
700         [CCode (cheader_filename = "cogl/cogl.h")]
701         public static GLib.Type fog_mode_get_type ();
702         [CCode (cheader_filename = "cogl/cogl.h")]
703         public static void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
704         [CCode (cheader_filename = "cogl/cogl.h")]
705         public static bool get_backface_culling_enabled ();
706         [CCode (cheader_filename = "cogl/cogl.h")]
707         public static void get_bitmasks (int red, int green, int blue, int alpha);
708         [CCode (cheader_filename = "cogl/cogl.h")]
709         public static bool get_depth_test_enabled ();
710         [CCode (cheader_filename = "cogl/cogl.h")]
711         public static Cogl.FeatureFlags get_features ();
712         [CCode (cheader_filename = "cogl/cogl.h")]
713         public static void get_modelview_matrix (Cogl.Matrix matrix);
714         [CCode (cheader_filename = "cogl/cogl.h")]
715         public static GLib.OptionGroup get_option_group ();
716         [CCode (cheader_filename = "cogl/cogl.h")]
717         public static unowned Cogl.Path get_path ();
718         [CCode (cheader_filename = "cogl/cogl.h")]
719         public static unowned Cogl.FuncPtr get_proc_address (string name);
720         [CCode (cheader_filename = "cogl/cogl.h")]
721         public static void get_projection_matrix (Cogl.Matrix matrix);
722         [CCode (cheader_filename = "cogl/cogl.h")]
723         public static void get_viewport ([CCode (array_length = false)] float[] v);
724         [CCode (cheader_filename = "cogl/cogl.h")]
725         public static GLib.Type indices_type_get_type ();
726         [CCode (cheader_filename = "cogl/cogl.h")]
727         public static bool is_path (Cogl.Bitmap handle);
728         [CCode (cheader_filename = "cogl/cogl.h")]
729         public static bool is_vertex_buffer_indices (Cogl.Bitmap handle);
730         [CCode (cheader_filename = "cogl/cogl.h")]
731         public static void ortho (float left, float right, float bottom, float top, float near, float far);
732         [CCode (cheader_filename = "cogl-pango/cogl-pango.h")]
733         public static void pango_ensure_glyph_cache_for_layout (Pango.Layout layout);
734         [CCode (cheader_filename = "cogl-pango/cogl-pango.h")]
735         public static void pango_render_layout (Pango.Layout layout, int x, int y, Cogl.Color color, int flags);
736         [CCode (cheader_filename = "cogl-pango/cogl-pango.h")]
737         public static void pango_render_layout_line (Pango.LayoutLine line, int x, int y, Cogl.Color color);
738         [CCode (cheader_filename = "cogl-pango/cogl-pango.h")]
739         public static void pango_render_layout_subpixel (Pango.Layout layout, int x, int y, Cogl.Color color, int flags);
740         [CCode (cheader_filename = "cogl/cogl.h")]
741         public static void perspective (float fovy, float aspect, float z_near, float z_far);
742         [CCode (cheader_filename = "cogl/cogl.h")]
743         public static GLib.Type pixel_format_get_type ();
744         [CCode (cheader_filename = "cogl/cogl.h")]
745         public static void polygon (Cogl.TextureVertex[] vertices, bool use_color);
746         [CCode (cheader_filename = "cogl/cogl.h")]
747         public static void pop_framebuffer ();
748         [CCode (cheader_filename = "cogl/cogl.h")]
749         public static void pop_matrix ();
750         [CCode (cheader_filename = "cogl/cogl.h")]
751         public static void push_framebuffer (Cogl.Framebuffer buffer);
752         [CCode (cheader_filename = "cogl/cogl.h")]
753         public static void push_matrix ();
754         [CCode (cheader_filename = "cogl/cogl.h")]
755         public static void read_pixels (int x, int y, int width, int height, Cogl.ReadPixelsFlags source, Cogl.PixelFormat format, [CCode (array_length = false)] uint8[] pixels);
756         [CCode (cheader_filename = "cogl/cogl.h")]
757         public static GLib.Type read_pixels_flags_get_type ();
758         [CCode (cheader_filename = "cogl/cogl.h")]
759         public static void rectangle (float x_1, float y_1, float x_2, float y_2);
760         [CCode (cheader_filename = "cogl/cogl.h")]
761         public static void rectangle_with_multitexture_coords (float x1, float y1, float x2, float y2, float tex_coords, int tex_coords_len);
762         [CCode (cheader_filename = "cogl/cogl.h")]
763         public static void rectangle_with_texture_coords (float x1, float y1, float x2, float y2, float tx1, float ty1, float tx2, float ty2);
764         [CCode (cheader_filename = "cogl/cogl.h")]
765         public static void rectangles ([CCode (array_length = false)] float[] verts, uint n_rects);
766         [CCode (cheader_filename = "cogl/cogl.h")]
767         public static void rectangles_with_texture_coords ([CCode (array_length = false)] float[] verts, uint n_rects);
768         [CCode (cheader_filename = "cogl/cogl.h")]
769         public static void rotate (float angle, float x, float y, float z);
770         [CCode (cheader_filename = "cogl/cogl.h")]
771         public static void scale (float x, float y, float z);
772         [CCode (cheader_filename = "cogl/cogl.h")]
773         public static void set_backface_culling_enabled (bool setting);
774         [CCode (cheader_filename = "cogl/cogl.h")]
775         public static void set_depth_test_enabled (bool setting);
776         [CCode (cheader_filename = "cogl/cogl.h")]
777         public static void set_fog (Cogl.Color fog_color, Cogl.FogMode mode, float density, float z_near, float z_far);
778         [CCode (cheader_filename = "cogl/cogl.h")]
779         public static void set_framebuffer (Cogl.Framebuffer buffer);
780         [CCode (cheader_filename = "cogl/cogl.h")]
781         public static void set_modelview_matrix (Cogl.Matrix matrix);
782         [CCode (cheader_filename = "cogl/cogl.h")]
783         public static void set_path (Cogl.Path path);
784         [CCode (cheader_filename = "cogl/cogl.h")]
785         public static void set_projection_matrix (Cogl.Matrix matrix);
786         [CCode (cheader_filename = "cogl/cogl.h")]
787         public static void set_source (Cogl.Material material);
788         [CCode (cheader_filename = "cogl/cogl.h")]
789         public static void set_source_color (Cogl.Color color);
790         [CCode (cheader_filename = "cogl/cogl.h")]
791         public static void set_source_color4f (float red, float green, float blue, float alpha);
792         [CCode (cheader_filename = "cogl/cogl.h")]
793         public static void set_source_color4ub (uchar red, uchar green, uchar blue, uchar alpha);
794         [CCode (cheader_filename = "cogl/cogl.h")]
795         public static void set_source_texture (Cogl.Texture texture_handle);
796         [CCode (cheader_filename = "cogl/cogl.h")]
797         public static void set_viewport (int x, int y, int width, int height);
798         [CCode (cheader_filename = "cogl/cogl.h")]
799         public static int sqrti (int x);
800         [CCode (cheader_filename = "cogl/cogl.h")]
801         public static void transform (Cogl.Matrix matrix);
802         [CCode (cheader_filename = "cogl/cogl.h")]
803         public static void translate (float x, float y, float z);
804         [CCode (cheader_filename = "cogl/cogl.h")]
805         public static GLib.Type vertices_mode_get_type ();
806         [CCode (cheader_filename = "cogl/cogl.h")]
807         public static void viewport (uint width, uint height);