CodeWriter: Write [Diagnostics] attribute
[vala-lang.git] / vapi / cogl-1.0.vapi
blobeb7def3ae05f7347b3c97d14ee9223ce91b6a71b
1 /* cogl-1.0.vapi generated by vapigen, do not modify. */
3 [CCode (cprefix = "Cogl", lower_case_cprefix = "cogl_", gir_namespace = "Cogl", gir_version = "1.0")]
4 namespace Cogl {
5         [Compact]
6         [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h")]
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         [Compact]
14         [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h")]
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         [Compact]
29         [CCode (cheader_filename = "cogl/cogl.h")]
30         public class Framebuffer {
31         }
32         [Compact]
33         [CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref", cheader_filename = "cogl/cogl.h")]
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         [Compact]
55         [CCode (ref_function = "cogl_material_ref", unref_function = "cogl_material_unref", cname = "CoglHandle", cheader_filename = "cogl/cogl.h")]
56         public class Material : Cogl.Handle {
57                 [CCode (has_construct_function = false)]
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         [Compact]
110         [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h")]
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         [Compact]
122         [CCode (ref_function = "cogl_object_ref", unref_function = "cogl_object_unref", cheader_filename = "cogl/cogl.h")]
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         [Compact]
128         [CCode (ref_function = "cogl_offscreen_ref", unref_function = "cogl_offscreen_unref", cname = "CoglHandle", cheader_filename = "cogl/cogl.h")]
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 (has_construct_function = false)]
137                 public Offscreen.to_texture (Cogl.Texture handle);
138         }
139         [Compact]
140         [CCode (cheader_filename = "cogl/cogl.h")]
141         public class PangoFontMap {
142                 [CCode (type = "PangoFontMap*", has_construct_function = false)]
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         [Compact]
152         [CCode (cheader_filename = "cogl/cogl.h")]
153         public class PangoRenderer {
154         }
155         [Compact]
156         [CCode (cheader_filename = "cogl/cogl.h")]
157         public class PangoRendererClass {
158         }
159         [Compact]
160         [CCode (copy_function = "cogl_path_copy", cheader_filename = "cogl/cogl.h")]
161         public class Path {
162                 [CCode (type = "void", has_construct_function = false)]
163                 public Path ();
164                 public static void arc (float center_x, float center_y, float radius_x, float radius_y, float angle_1, float angle_2);
165                 public static void close ();
166                 public unowned Cogl.Path copy ();
167                 public static void curve_to (float x_1, float y_1, float x_2, float y_2, float x_3, float y_3);
168                 public static void ellipse (float center_x, float center_y, float radius_x, float radius_y);
169                 public static void fill ();
170                 public static void fill_preserve ();
171                 public static GLib.Type fill_rule_get_type ();
172                 public static Cogl.PathFillRule get_fill_rule ();
173                 public static void line (float x_1, float y_1, float x_2, float y_2);
174                 public static void line_to (float x, float y);
175                 public static void move_to (float x, float y);
176                 public static void polygon ([CCode (array_length = false)] float[] coords, int num_points);
177                 public static void polyline ([CCode (array_length = false)] float[] coords, int num_points);
178                 public static void rectangle (float x_1, float y_1, float x_2, float y_2);
179                 public static void rel_curve_to (float x_1, float y_1, float x_2, float y_2, float x_3, float y_3);
180                 public static void rel_line_to (float x, float y);
181                 public static void rel_move_to (float x, float y);
182                 public static void round_rectangle (float x_1, float y_1, float x_2, float y_2, float radius, float arc_step);
183                 public static void set_fill_rule (Cogl.PathFillRule fill_rule);
184                 public static void stroke ();
185                 public static void stroke_preserve ();
186         }
187         [Compact]
188         [CCode (cheader_filename = "cogl/cogl.h")]
189         public class PixelArray {
190         }
191         [Compact]
192         [CCode (cheader_filename = "cogl/cogl.h")]
193         public class PixelBuffer : Cogl.Handle {
194                 public PixelBuffer (uint size);
195                 public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
196         }
197         [Compact]
198         [CCode (ref_function = "cogl_program_ref", unref_function = "cogl_program_unref", cname = "CoglHandle", cheader_filename = "cogl/cogl.h")]
199         public class Program : Cogl.Handle {
200                 [CCode (cname = "cogl_create_program", has_construct_function = false)]
201                 public Program ();
202                 public void attach_shader (Cogl.Shader shader_handle);
203                 public int get_uniform_location (string uniform_name);
204                 public void link ();
205                 public static void uniform_1f (int uniform_no, float value);
206                 public static void uniform_1i (int uniform_no, int value);
207                 public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
208                 public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
209                 public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
210                 public void use ();
211         }
212         [Compact]
213         [CCode (ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref", cname = "CoglHandle", cheader_filename = "cogl/cogl.h")]
214         public class Shader : Cogl.Handle {
215                 [CCode (cname = "cogl_create_shader", has_construct_function = false)]
216                 public Shader (Cogl.ShaderType shader_type);
217                 public void compile ();
218                 public string get_info_log ();
219                 public Cogl.ShaderType get_type ();
220                 public bool is_compiled ();
221                 public void source (string source);
222         }
223         [Compact]
224         [CCode (ref_function = "cogl_texture_ref", unref_function = "cogl_texture_unref", cname = "CoglHandle", cheader_filename = "cogl/cogl.h")]
225         public class Texture : Cogl.Handle {
226                 public Texture.from_bitmap (Cogl.Bitmap bmp_handle, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
227                 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);
228                 public Texture.from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
229                 public int get_data (Cogl.PixelFormat format, uint rowstride, uchar[] 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, uchar[] data);
237                 public Texture.with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
238         }
239         [Compact]
240         [CCode (cheader_filename = "cogl/cogl.h")]
241         public class UserDataKey {
242                 public int unused;
243         }
244         [Compact]
245         [CCode (cheader_filename = "cogl/cogl.h")]
246         public class Vector3 {
247                 public float x;
248                 public float y;
249                 public float z;
250         }
251         [Compact]
252         [CCode (ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref", cname = "CoglHandle", cheader_filename = "cogl/cogl.h")]
253         public class VertexBuffer : Cogl.Handle {
254                 [CCode (has_construct_function = false)]
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         [Compact]
266         [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h")]
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 (type_id = "COGL_TYPE_ANGLE", 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         [CCode (has_type_id = false, cheader_filename = "cogl/cogl.h")]
279         public struct Color {
280                 public uchar red;
281                 public uchar green;
282                 public uchar blue;
283                 public uchar alpha;
284                 public uint32 padding0;
285                 public uint32 padding1;
286                 public uint32 padding2;
287                 public Cogl.Color copy ();
288                 public static bool equal (void* v1, void* v2);
289                 public float get_alpha ();
290                 public uint get_alpha_byte ();
291                 public float get_alpha_float ();
292                 public float get_blue ();
293                 public uint get_blue_byte ();
294                 public float get_blue_float ();
295                 public float get_green ();
296                 public uint get_green_byte ();
297                 public float get_green_float ();
298                 public float get_red ();
299                 public uint get_red_byte ();
300                 public float get_red_float ();
301                 public void init_from_4f (float red, float green, float blue, float alpha);
302                 public void init_from_4fv (float color_array);
303                 public void init_from_4ub (uchar red, uchar green, uchar blue, uchar alpha);
304                 public void premultiply ();
305                 public void set_alpha (float alpha);
306                 public void set_alpha_byte (uint alpha);
307                 public void set_alpha_float (float alpha);
308                 public void set_blue (float blue);
309                 public void set_blue_byte (uint blue);
310                 public void set_blue_float (float blue);
311                 public void set_from_4f (float red, float green, float blue, float alpha);
312                 public void set_from_4ub (uchar red, uchar green, uchar blue, uchar alpha);
313                 public void set_green (float green);
314                 public void set_green_byte (uint green);
315                 public void set_green_float (float green);
316                 public void set_red (float red);
317                 public void set_red_byte (uint red);
318                 public void set_red_float (float red);
319                 public void unpremultiply ();
320         }
321         [CCode (type_id = "COGL_TYPE_FIXED", cheader_filename = "cogl/cogl.h")]
322         public struct Fixed {
323                 public Cogl.Fixed atan ();
324                 public Cogl.Fixed atan2 (Cogl.Fixed b);
325                 public Cogl.Fixed cos ();
326                 public Cogl.Fixed div (Cogl.Fixed b);
327                 public static Cogl.Fixed log2 (uint x);
328                 public Cogl.Fixed mul (Cogl.Fixed b);
329                 public Cogl.Fixed mul_div (Cogl.Fixed b, Cogl.Fixed c);
330                 public static uint pow (uint x, Cogl.Fixed y);
331                 public uint pow2 ();
332                 public Cogl.Fixed sin ();
333                 public Cogl.Fixed sqrt ();
334                 public Cogl.Fixed tan ();
335         }
336         [CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
337         public struct Matrix {
338                 public float xx;
339                 public float yx;
340                 public float zx;
341                 public float wx;
342                 public float xy;
343                 public float yy;
344                 public float zy;
345                 public float wy;
346                 public float xz;
347                 public float yz;
348                 public float zz;
349                 public float wz;
350                 public float xw;
351                 public float yw;
352                 public float zw;
353                 public float ww;
354                 [CCode (array_length = false)]
355                 public weak float[] inv;
356                 public uint type;
357                 public uint flags;
358                 public static bool equal (void* v1, void* v2);
359                 public Matrix.from_array ([CCode (array_length = false)] float[] array);
360                 public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
361                 [CCode (array_length = false)]
362                 public unowned float[] get_array ();
363                 public bool get_inverse (out Cogl.Matrix inverse);
364                 public Matrix.identity ();
365                 [CCode (cname = "cogl_matrix_multiply")]
366                 public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
367                 public void ortho (float left, float right, float bottom, float top, float z_near, float z_far);
368                 public void perspective (float fov_y, float aspect, float z_near, float z_far);
369                 public void rotate (float angle, float x, float y, float z);
370                 public void scale (float sx, float sy, float sz);
371                 public void transform_point (ref float x, ref float y, ref float z, ref float w);
372                 public void translate (float x, float y, float z);
373         }
374         [CCode (type_id = "COGL_TYPE_TEXTURE_VERTEX", cheader_filename = "cogl/cogl.h")]
375         public struct TextureVertex {
376                 public float x;
377                 public float y;
378                 public float z;
379                 public float tx;
380                 public float ty;
381                 public Cogl.Color color;
382         }
383         [CCode (cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
384         public enum AttributeType {
385                 BYTE,
386                 UNSIGNED_BYTE,
387                 SHORT,
388                 UNSIGNED_SHORT,
389                 FLOAT
390         }
391         [CCode (cprefix = "COGL_BITMAP_ERROR_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
392         public enum BitmapError {
393                 FAILED,
394                 UNKNOWN_TYPE,
395                 CORRUPT_IMAGE
396         }
397         [CCode (cprefix = "COGL_BUFFER_ACCESS_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
398         public enum BufferAccess {
399                 READ,
400                 WRITE,
401                 READ_WRITE
402         }
403         [CCode (cprefix = "COGL_BUFFER_BIT_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
404         public enum BufferBit {
405                 COLOR,
406                 DEPTH,
407                 STENCIL
408         }
409         [CCode (cprefix = "COGL_BUFFER_MAP_HINT_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
410         public enum BufferMapHint {
411                 DISCARD
412         }
413         [CCode (cprefix = "COGL_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
414         public enum BufferTarget {
415                 WINDOW_BUFFER,
416                 OFFSCREEN_BUFFER
417         }
418         [CCode (cprefix = "COGL_BUFFER_UPDATE_HINT_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
419         public enum BufferUpdateHint {
420                 STATIC,
421                 DYNAMIC,
422                 STREAM
423         }
424         [CCode (cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
425         public enum DepthTestFunction {
426                 NEVER,
427                 LESS,
428                 EQUAL,
429                 LEQUAL,
430                 GREATER,
431                 NOTEQUAL,
432                 GEQUAL,
433                 ALWAYS
434         }
435         [CCode (cprefix = "COGL_DRIVER_ERROR_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
436         public enum DriverError {
437                 UNKNOWN_VERSION,
438                 INVALID_VERSION
439         }
440         [CCode (cprefix = "COGL_ERROR_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
441         public enum Error {
442                 UNSUPPORTED
443         }
444         [CCode (cprefix = "COGL_FEATURE_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
445         public enum FeatureFlags {
446                 TEXTURE_RECTANGLE,
447                 TEXTURE_NPOT,
448                 TEXTURE_YUV,
449                 TEXTURE_READ_PIXELS,
450                 SHADERS_GLSL,
451                 OFFSCREEN,
452                 OFFSCREEN_MULTISAMPLE,
453                 OFFSCREEN_BLIT,
454                 FOUR_CLIP_PLANES,
455                 STENCIL_BUFFER,
456                 VBOS,
457                 PBOS,
458                 UNSIGNED_INT_INDICES,
459                 DEPTH_RANGE,
460                 TEXTURE_NPOT_BASIC,
461                 TEXTURE_NPOT_MIPMAP,
462                 TEXTURE_NPOT_REPEAT,
463                 POINT_SPRITE,
464                 TEXTURE_3D,
465                 SHADERS_ARBFP
466         }
467         [CCode (cprefix = "COGL_FOG_MODE_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
468         public enum FogMode {
469                 LINEAR,
470                 EXPONENTIAL,
471                 EXPONENTIAL_SQUARED
472         }
473         [CCode (cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
474         public enum IndicesType {
475                 BYTE,
476                 SHORT,
477                 INT
478         }
479         [CCode (cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
480         public enum MaterialAlphaFunc {
481                 NEVER,
482                 LESS,
483                 EQUAL,
484                 LEQUAL,
485                 GREATER,
486                 NOTEQUAL,
487                 GEQUAL,
488                 ALWAYS
489         }
490         [CCode (cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
491         public enum MaterialFilter {
492                 NEAREST,
493                 LINEAR,
494                 NEAREST_MIPMAP_NEAREST,
495                 LINEAR_MIPMAP_NEAREST,
496                 NEAREST_MIPMAP_LINEAR,
497                 LINEAR_MIPMAP_LINEAR
498         }
499         [CCode (cprefix = "COGL_MATERIAL_LAYER_TYPE_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
500         public enum MaterialLayerType {
501                 TEXTURE
502         }
503         [CCode (cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
504         public enum MaterialWrapMode {
505                 REPEAT,
506                 CLAMP_TO_EDGE,
507                 AUTOMATIC
508         }
509         [CCode (cprefix = "COGL_PATH_FILL_RULE_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
510         public enum PathFillRule {
511                 NON_ZERO,
512                 EVEN_ODD
513         }
514         [CCode (cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
515         public enum PixelFormat {
516                 ANY,
517                 A_8,
518                 RGB_565,
519                 RGBA_4444,
520                 RGBA_5551,
521                 YUV,
522                 G_8,
523                 RGB_888,
524                 BGR_888,
525                 RGBA_8888,
526                 BGRA_8888,
527                 ARGB_8888,
528                 ABGR_8888,
529                 RGBA_8888_PRE,
530                 BGRA_8888_PRE,
531                 ARGB_8888_PRE,
532                 ABGR_8888_PRE,
533                 RGBA_4444_PRE,
534                 RGBA_5551_PRE
535         }
536         [CCode (cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
537         public enum ReadPixelsFlags {
538                 BUFFER
539         }
540         [CCode (cprefix = "COGL_SHADER_TYPE_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
541         public enum ShaderType {
542                 VERTEX,
543                 FRAGMENT
544         }
545         [CCode (cprefix = "COGL_TEXTURE_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
546         public enum TextureFlags {
547                 NONE,
548                 NO_AUTO_MIPMAP,
549                 NO_SLICING,
550                 NO_ATLAS
551         }
552         [CCode (cprefix = "COGL_TEXTURE_PIXMAP_X11_DAMAGE_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
553         public enum TexturePixmapX11ReportLevel {
554                 RAW_RECTANGLES,
555                 DELTA_RECTANGLES,
556                 BOUNDING_BOX,
557                 NON_EMPTY
558         }
559         [CCode (cprefix = "COGL_VERTICES_MODE_", has_type_id = false, cheader_filename = "cogl/cogl.h")]
560         public enum VerticesMode {
561                 POINTS,
562                 LINE_STRIP,
563                 LINE_LOOP,
564                 LINES,
565                 TRIANGLE_STRIP,
566                 TRIANGLE_FAN,
567                 TRIANGLES
568         }
569         [CCode (cprefix = "COGL_BLEND_STRING_ERROR_", cheader_filename = "cogl/cogl.h")]
570         public errordomain BlendStringError {
571                 PARSE_ERROR,
572                 ARGUMENT_PARSE_ERROR,
573                 INVALID_ERROR,
574                 GPU_UNSUPPORTED_ERROR,
575         }
576         [CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
577         public delegate void FuncPtr ();
578         [CCode (cheader_filename = "cogl/cogl.h")]
579         public delegate bool MaterialLayerCallback (Cogl.Material material, int layer_index);
580         [CCode (cheader_filename = "cogl/cogl.h")]
581         public delegate void UserDataDestroyCallback ();
582         [CCode (cheader_filename = "cogl/cogl.h")]
583         public const int AFIRST_BIT;
584         [CCode (cheader_filename = "cogl/cogl.h")]
585         public const int A_BIT;
586         [CCode (cheader_filename = "cogl/cogl.h")]
587         public const int BGR_BIT;
588         [CCode (cheader_filename = "cogl/cogl.h")]
589         public const int CLUTTER_COGL_HAS_GL;
590         [CCode (cheader_filename = "cogl/cogl.h")]
591         public const int FIXED_0_5;
592         [CCode (cheader_filename = "cogl/cogl.h")]
593         public const int FIXED_1;
594         [CCode (cheader_filename = "cogl/cogl.h")]
595         public const int FIXED_2_PI;
596         [CCode (cheader_filename = "cogl/cogl.h")]
597         public const int FIXED_BITS;
598         [CCode (cheader_filename = "cogl/cogl.h")]
599         public const int FIXED_EPSILON;
600         [CCode (cheader_filename = "cogl/cogl.h")]
601         public const int FIXED_MAX;
602         [CCode (cheader_filename = "cogl/cogl.h")]
603         public const int FIXED_MIN;
604         [CCode (cheader_filename = "cogl/cogl.h")]
605         public const int FIXED_PI;
606         [CCode (cheader_filename = "cogl/cogl.h")]
607         public const int FIXED_PI_2;
608         [CCode (cheader_filename = "cogl/cogl.h")]
609         public const int FIXED_PI_4;
610         [CCode (cheader_filename = "cogl/cogl.h")]
611         public const int FIXED_Q;
612         [CCode (cheader_filename = "cogl/cogl.h")]
613         public const int HAS_GL;
614         [CCode (cheader_filename = "cogl/cogl.h")]
615         public const int HAS_X11;
616         [CCode (cheader_filename = "cogl/cogl.h")]
617         public const int HAS_XLIB;
618         [CCode (cheader_filename = "cogl/cogl.h")]
619         public const int PIXEL_FORMAT_24;
620         [CCode (cheader_filename = "cogl/cogl.h")]
621         public const int PIXEL_FORMAT_32;
622         [CCode (cheader_filename = "cogl/cogl.h")]
623         public const int PREMULT_BIT;
624         [CCode (cheader_filename = "cogl/cogl.h")]
625         public const int RADIANS_TO_DEGREES;
626         [CCode (cheader_filename = "cogl/cogl.h")]
627         public const int SQRTI_ARG_10_PERCENT;
628         [CCode (cheader_filename = "cogl/cogl.h")]
629         public const int SQRTI_ARG_5_PERCENT;
630         [CCode (cheader_filename = "cogl/cogl.h")]
631         public const int SQRTI_ARG_MAX;
632         [CCode (cheader_filename = "cogl/cogl.h")]
633         public const int TEXTURE_MAX_WASTE;
634         [CCode (cheader_filename = "cogl/cogl.h")]
635         public const int UNORDERED_MASK;
636         [CCode (cheader_filename = "cogl/cogl.h")]
637         public const int UNPREMULT_MASK;
638         [CCode (cheader_filename = "cogl/cogl.h")]
639         public static GLib.Type attribute_type_get_type ();
640         [CCode (cheader_filename = "cogl/cogl.h")]
641         public static void begin_gl ();
642         [CCode (cheader_filename = "cogl/cogl.h")]
643         public static GLib.Type blend_string_error_get_type ();
644         [CCode (cheader_filename = "cogl/cogl.h")]
645         public static bool check_extension (string name, string ext);
646         [CCode (cheader_filename = "cogl/cogl.h")]
647         public static void clear (Cogl.Color color, uint buffers);
648         [CCode (cheader_filename = "cogl/cogl.h")]
649         public static void clip_ensure ();
650         [CCode (cheader_filename = "cogl/cogl.h")]
651         public static void clip_pop ();
652         [CCode (cheader_filename = "cogl/cogl.h")]
653         public static void clip_push (float x_offset, float y_offset, float width, float height);
654         [CCode (cheader_filename = "cogl/cogl.h")]
655         public static void clip_push_from_path ();
656         [CCode (cheader_filename = "cogl/cogl.h")]
657         public static void clip_push_from_path_preserve ();
658         [CCode (cheader_filename = "cogl/cogl.h")]
659         public static void clip_push_rectangle (float x0, float y0, float x1, float y1);
660         [CCode (cheader_filename = "cogl/cogl.h")]
661         public static void clip_push_window_rect (float x_offset, float y_offset, float width, float height);
662         [CCode (cheader_filename = "cogl/cogl.h")]
663         public static void clip_push_window_rectangle (int x_offset, int y_offset, int width, int height);
664         [CCode (cheader_filename = "cogl/cogl.h")]
665         public static void clip_stack_restore ();
666         [CCode (cheader_filename = "cogl/cogl.h")]
667         public static void clip_stack_save ();
668         [CCode (cheader_filename = "cogl/cogl.h")]
669         public static GLib.Type depth_test_function_get_type ();
670         [CCode (cheader_filename = "cogl/cogl.h")]
671         public static void disable_fog ();
672         [CCode (cheader_filename = "cogl/cogl.h")]
673         public static Cogl.Fixed double_to_fixed (double value);
674         [CCode (cheader_filename = "cogl/cogl.h")]
675         public static int double_to_int (double value);
676         [CCode (cheader_filename = "cogl/cogl.h")]
677         public static uint double_to_uint (double value);
678         [CCode (cheader_filename = "cogl/cogl.h")]
679         public static GLib.Type driver_error_get_type ();
680         [CCode (cheader_filename = "cogl/cogl.h")]
681         public static void end_gl ();
682         [CCode (cheader_filename = "cogl/cogl.h")]
683         public static GLib.Type error_get_type ();
684         [CCode (cheader_filename = "cogl/cogl.h")]
685         public static GLib.Type feature_flags_get_type ();
686         [CCode (cheader_filename = "cogl/cogl.h")]
687         public static bool features_available (Cogl.FeatureFlags features);
688         [CCode (cheader_filename = "cogl/cogl.h")]
689         public static void flush ();
690         [CCode (cheader_filename = "cogl/cogl.h")]
691         public static GLib.Type fog_mode_get_type ();
692         [CCode (cheader_filename = "cogl/cogl.h")]
693         public static void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
694         [CCode (cheader_filename = "cogl/cogl.h")]
695         public static bool get_backface_culling_enabled ();
696         [CCode (cheader_filename = "cogl/cogl.h")]
697         public static void get_bitmasks (int red, int green, int blue, int alpha);
698         [CCode (cheader_filename = "cogl/cogl.h")]
699         public static bool get_depth_test_enabled ();
700         [CCode (cheader_filename = "cogl/cogl.h")]
701         public static Cogl.FeatureFlags get_features ();
702         [CCode (cheader_filename = "cogl/cogl.h")]
703         public static void get_modelview_matrix (Cogl.Matrix matrix);
704         [CCode (cheader_filename = "cogl/cogl.h")]
705         public static unowned GLib.OptionGroup get_option_group ();
706         [CCode (cheader_filename = "cogl/cogl.h")]
707         public static unowned Cogl.Path get_path ();
708         [CCode (cheader_filename = "cogl/cogl.h")]
709         public static unowned Cogl.FuncPtr get_proc_address (string name);
710         [CCode (cheader_filename = "cogl/cogl.h")]
711         public static void get_projection_matrix (Cogl.Matrix matrix);
712         [CCode (cheader_filename = "cogl/cogl.h")]
713         public static void get_viewport (float[] v);
714         [CCode (cheader_filename = "cogl/cogl.h")]
715         public static GLib.Type indices_type_get_type ();
716         [CCode (cheader_filename = "cogl/cogl.h")]
717         public static bool is_path (Cogl.Bitmap handle);
718         [CCode (cheader_filename = "cogl/cogl.h")]
719         public static bool is_vertex_buffer_indices (Cogl.Bitmap handle);
720         [CCode (cheader_filename = "cogl/cogl.h")]
721         public static void ortho (float left, float right, float bottom, float top, float near, float far);
722         [CCode (cheader_filename = "cogl/cogl.h")]
723         public static void pango_ensure_glyph_cache_for_layout (Pango.Layout layout);
724         [CCode (cheader_filename = "cogl/cogl.h")]
725         public static void pango_render_layout (Pango.Layout layout, int x, int y, Cogl.Color color, int flags);
726         [CCode (cheader_filename = "cogl/cogl.h")]
727         public static void pango_render_layout_line (Pango.LayoutLine line, int x, int y, Cogl.Color color);
728         [CCode (cheader_filename = "cogl/cogl.h")]
729         public static void pango_render_layout_subpixel (Pango.Layout layout, int x, int y, Cogl.Color color, int flags);
730         [CCode (cheader_filename = "cogl/cogl.h")]
731         public static void perspective (float fovy, float aspect, float z_near, float z_far);
732         [CCode (cheader_filename = "cogl/cogl.h")]
733         public static GLib.Type pixel_format_get_type ();
734         [CCode (cheader_filename = "cogl/cogl.h")]
735         public static void polygon (Cogl.TextureVertex[] vertices, bool use_color);
736         [CCode (cheader_filename = "cogl/cogl.h")]
737         public static void pop_framebuffer ();
738         [CCode (cheader_filename = "cogl/cogl.h")]
739         public static void pop_matrix ();
740         [CCode (cheader_filename = "cogl/cogl.h")]
741         public static void push_framebuffer (Cogl.Framebuffer buffer);
742         [CCode (cheader_filename = "cogl/cogl.h")]
743         public static void push_matrix ();
744         [CCode (cheader_filename = "cogl/cogl.h")]
745         public static void read_pixels (int x, int y, int width, int height, Cogl.ReadPixelsFlags source, Cogl.PixelFormat format, uchar pixels);
746         [CCode (cheader_filename = "cogl/cogl.h")]
747         public static GLib.Type read_pixels_flags_get_type ();
748         [CCode (cheader_filename = "cogl/cogl.h")]
749         public static void rectangle (float x_1, float y_1, float x_2, float y_2);
750         [CCode (cheader_filename = "cogl/cogl.h")]
751         public static void rectangle_with_multitexture_coords (float x1, float y1, float x2, float y2, float tex_coords, int tex_coords_len);
752         [CCode (cheader_filename = "cogl/cogl.h")]
753         public static void rectangle_with_texture_coords (float x1, float y1, float x2, float y2, float tx1, float ty1, float tx2, float ty2);
754         [CCode (cheader_filename = "cogl/cogl.h")]
755         public static void rectangles ([CCode (array_length = false)] float[] verts, uint n_rects);
756         [CCode (cheader_filename = "cogl/cogl.h")]
757         public static void rectangles_with_texture_coords ([CCode (array_length = false)] float[] verts, uint n_rects);
758         [CCode (cheader_filename = "cogl/cogl.h")]
759         public static void rotate (float angle, float x, float y, float z);
760         [CCode (cheader_filename = "cogl/cogl.h")]
761         public static void scale (float x, float y, float z);
762         [CCode (cheader_filename = "cogl/cogl.h")]
763         public static void set_backface_culling_enabled (bool setting);
764         [CCode (cheader_filename = "cogl/cogl.h")]
765         public static void set_depth_test_enabled (bool setting);
766         [CCode (cheader_filename = "cogl/cogl.h")]
767         public static void set_fog (Cogl.Color fog_color, Cogl.FogMode mode, float density, float z_near, float z_far);
768         [CCode (cheader_filename = "cogl/cogl.h")]
769         public static void set_framebuffer (Cogl.Framebuffer buffer);
770         [CCode (cheader_filename = "cogl/cogl.h")]
771         public static void set_modelview_matrix (Cogl.Matrix matrix);
772         [CCode (cheader_filename = "cogl/cogl.h")]
773         public static void set_path (Cogl.Path path);
774         [CCode (cheader_filename = "cogl/cogl.h")]
775         public static void set_projection_matrix (Cogl.Matrix matrix);
776         [CCode (cheader_filename = "cogl/cogl.h")]
777         public static void set_source (Cogl.Material material);
778         [CCode (cheader_filename = "cogl/cogl.h")]
779         public static void set_source_color (Cogl.Color color);
780         [CCode (cheader_filename = "cogl/cogl.h")]
781         public static void set_source_color4f (float red, float green, float blue, float alpha);
782         [CCode (cheader_filename = "cogl/cogl.h")]
783         public static void set_source_color4ub (uchar red, uchar green, uchar blue, uchar alpha);
784         [CCode (cheader_filename = "cogl/cogl.h")]
785         public static void set_source_texture (Cogl.Texture texture_handle);
786         [CCode (cheader_filename = "cogl/cogl.h")]
787         public static void set_viewport (int x, int y, int width, int height);
788         [CCode (cheader_filename = "cogl/cogl.h")]
789         public static int sqrti (int x);
790         [CCode (cheader_filename = "cogl/cogl.h")]
791         public static void transform (Cogl.Matrix matrix);
792         [CCode (cheader_filename = "cogl/cogl.h")]
793         public static void translate (float x, float y, float z);
794         [CCode (cheader_filename = "cogl/cogl.h")]
795         public static GLib.Type vertices_mode_get_type ();
796         [CCode (cheader_filename = "cogl/cogl.h")]
797         public static void viewport (uint width, uint height);