1/* cogl-1.0.vapi generated by vapigen, do not modify. */
2
3[CCode (gir_namespace = "Cogl", gir_version = "1.0")]
4namespace 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 (out int red, out int green, out int blue, out 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 (out 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 (out 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);
808}
809