mutter/doc/reference/cogl-2.0-experimental/cogl-2.0-experimental-sections.txt

751 lines
16 KiB
Plaintext
Raw Normal View History

<SECTION>
<FILE>cogl-object</FILE>
<TITLE>The Object Interface</TITLE>
CoglObject
cogl_object_ref
cogl_object_unref
CoglUserDataKey
cogl_object_get_user_data
cogl_object_set_user_data
</SECTION>
<SECTION>
<FILE>cogl-renderer</FILE>
<TITLE>CoglRenderer: Connect to a backend renderer</TITLE>
cogl_renderer_new
cogl_renderer_get_n_fragment_texture_units
cogl_renderer_connect
<SUBSECTION>
cogl_xlib_renderer_set_foreign_display
cogl_xlib_renderer_get_foreign_display
<SUBSECTION>
CoglXlibFilterFunc
cogl_xlib_renderer_add_native_filter
cogl_xlib_renderer_remove_native_filter
cogl_xlib_renderer_handle_native_event
<SUBSECTION>
CoglWin32FilterFunc
cogl_win32_renderer_add_native_filter
cogl_win32_renderer_remove_native_filter
cogl_win32_renderer_handle_native_event
<SUBSECTION>
cogl_wayland_renderer_set_foreign_display
cogl_wayland_renderer_get_display
cogl_wayland_renderer_set_foreign_compositor
cogl_wayland_renderer_get_compositor
</SECTION>
<SECTION>
<FILE>cogl-swap-chain</FILE>
<TITLE>CoglSwapChain: Describe a set of back buffers for flipping between</TITLE>
cogl_swap_chain_new
cogl_swap_chain_set_has_alpha
cogl_swap_chain_set_length
</SECTION>
<SECTION>
<FILE>cogl-onscreen-template</FILE>
<TITLE>CoglOnscreenTemplate: Describe a template for onscreen framebuffers</TITLE>
cogl_onscreen_template_new
</SECTION>
<SECTION>
<FILE>cogl-display</FILE>
<TITLE>CoglDisplay: Setup a display pipeline</TITLE>
cogl_display_new
cogl_display_get_renderer
cogl_display_setup
<SUBSECTION>
cogl_gdl_display_set_plane
<SUBSECTION>
cogl_wayland_display_set_compositor_display
</SECTION>
<SECTION>
<FILE>cogl-context</FILE>
<TITLE>The Top-Level Context</TITLE>
<SUBSECTION>
cogl_context_new
cogl_is_context
cogl_context_get_display
<SUBSECTION>
CoglFeatureID
cogl_has_feature
cogl_has_features
CoglFeatureCallback
cogl_foreach_feature
<SUBSECTION>
cogl_push_matrix
cogl_pop_matrix
cogl_scale
cogl_translate
cogl_rotate
cogl_transform
cogl_frustum
cogl_perspective
cogl_ortho
<SUBSECTION>
cogl_get_modelview_matrix
cogl_set_modelview_matrix
cogl_get_projection_matrix
cogl_set_projection_matrix
cogl_set_viewport
cogl_get_viewport
<SUBSECTION>
cogl_set_source
cogl_set_source_color
cogl_set_source_color4ub
cogl_set_source_color4f
cogl_set_source_texture
cogl_get_source
cogl_push_source
cogl_pop_source
<SUBSECTION>
COGL_TYPE_BUFFER_BIT
cogl_clear
<SUBSECTION>
CoglReadPixelsFlags
cogl_read_pixels
<SUBSECTION>
cogl_flush
<SUBSECTION Standard>
COGL_TYPE_ATTRIBUTE_TYPE
COGL_TYPE_BLEND_STRING_ERROR
COGL_TYPE_BUFFER_ACCESS
COGL_TYPE_BUFFER_TARGET
COGL_TYPE_BUFFER_UPDATE_HINT
COGL_TYPE_BUFFER_USAGE_HINT
COGL_TYPE_DEBUG_FLAGS
COGL_TYPE_DRIVER_ERROR
COGL_TYPE_FEATURE_FLAGS
COGL_TYPE_INDICES_TYPE
COGL_TYPE_PIXEL_FORMAT
COGL_TYPE_READ_PIXELS_FLAGS
COGL_TYPE_TEXTURE_FLAGS
COGL_TYPE_VERTICES_MODE
<SUBSECTION Private>
COGL_DRIVER_ERROR
CoglDriverError
cogl_attribute_type_get_type
cogl_buffer_bit_get_type
cogl_buffer_target_get_type
cogl_debug_flags_get_type
cogl_driver_error_get_type
cogl_feature_flags_get_type
cogl_fixed_get_type
cogl_fog_mode_get_type
cogl_indices_type_get_type
cogl_pixel_format_get_type
cogl_read_pixels_flags_get_type
cogl_shader_type_get_type
cogl_texture_flags_get_type
cogl_vertices_mode_get_type
COGL_AFIRST_BIT
COGL_A_BIT
COGL_BGR_BIT
COGL_PIXEL_FORMAT_24
COGL_PIXEL_FORMAT_32
COGL_PREMULT_BIT
COGL_UNORDERED_MASK
COGL_UNPREMULT_MASK
</SECTION>
<SECTION>
<FILE>cogl-poll</FILE>
<TITLE>Main loop integeration</TITLE>
CoglPollFDEvent
CoglPollFD
cogl_poll_get_info
cogl_poll_dispatch
cogl_glib_source_new
</SECTION>
<SECTION>
<FILE>cogl-clipping</FILE>
<TITLE>Clipping</TITLE>
cogl_clip_push_rectangle
cogl_clip_push_window_rectangle
cogl_clip_push_from_path
cogl_clip_push_from_path_preserve
cogl_clip_push_primitive
cogl_clip_pop
</SECTION>
<SECTION>
<FILE>cogl-index-array</FILE>
<TITLE>Index Arrays</TITLE>
cogl_index_array_new
cogl_is_index_array
</SECTION>
<SECTION>
<FILE>cogl-attribute</FILE>
<TITLE>Vertex Attributes</TITLE>
cogl_attribute_new
cogl_is_attribute
cogl_attribute_set_normalized
cogl_attribute_get_normalized
cogl_attribute_get_buffer
cogl_attribute_set_buffer
</SECTION>
<SECTION>
<FILE>cogl-indices</FILE>
<TITLE>Indices</TITLE>
cogl_indices_new
cogl_is_indices
</SECTION>
<SECTION>
<FILE>cogl-primitive</FILE>
<TITLE>Primitives</TITLE>
CoglPrimitive
cogl_primitive_new
cogl_primitive_new_with_attributes
cogl_primitive_new_p2
cogl_primitive_new_p3
cogl_primitive_new_p2c4
cogl_primitive_new_p3c4
cogl_primitive_new_p2t2
cogl_primitive_new_p3t2
cogl_primitive_new_p2t2c4
cogl_primitive_new_p3t2c4
cogl_is_primitive
cogl_primitive_get_first_vertex
cogl_primitive_set_first_vertex
cogl_primitive_get_n_vertices
cogl_primitive_set_n_vertices
cogl_primitive_get_mode
cogl_primitive_set_mode
cogl_primitive_set_attributes
cogl_primitive_get_indices
cogl_primitive_set_indices
cogl_primitive_draw
cogl_primitive_copy
CoglPrimitiveAttributeCallback
cogl_primitive_foreach_attribute
</SECTION>
<SECTION>
<FILE>cogl-rectangle</FILE>
<TITLE>Rectangles</TITLE>
cogl_rectangle
cogl_rectangles
cogl_rectangle_with_texture_coords
cogl_rectangles_with_texture_coords
cogl_rectangle_with_multitexture_coords
</SECTION>
<SECTION>
<FILE>cogl-snippet</FILE>
<TITLE>Shader snippets</TITLE>
CoglSnippet
CoglSnippetHook
cogl_snippet_new
cogl_snippet_get_hook
cogl_is_snippet
cogl_snippet_set_declarations
cogl_snippet_get_declarations
cogl_snippet_set_pre
cogl_snippet_get_pre
cogl_snippet_set_replace
cogl_snippet_get_replace
cogl_snippet_set_post
cogl_snippet_get_post
</SECTION>
<SECTION>
<FILE>cogl-primitives-deprecated</FILE>
<TITLE>Primitives (Deprecated)</TITLE>
cogl_polygon
</SECTION>
<SECTION>
<FILE>cogl-paths</FILE>
<TITLE>Path Primitives</TITLE>
cogl_is_path
cogl_path_new
cogl_path_copy
cogl_path_move_to
cogl_path_close
cogl_path_line_to
cogl_path_curve_to
cogl_path_arc
cogl_path_rel_move_to
cogl_path_rel_line_to
cogl_path_rel_curve_to
cogl_path_line
cogl_path_polyline
cogl_path_polygon
cogl_path_rectangle
cogl_path_round_rectangle
cogl_path_ellipse
<SUBSECTION>
CoglPathFillRule
cogl_path_set_fill_rule
cogl_path_get_fill_rule
cogl_path_fill
cogl_path_stroke
</SECTION>
<SECTION>
<FILE>cogl-drawing</FILE>
<TITLE>Draw Vertex Attributes</TITLE>
cogl_draw_vertex_attributes
cogl_draw_vertex_attributes_array
cogl_draw_indexed_vertex_attributes
cogl_draw_indexed_vertex_attributes_array
</SECTION>
<SECTION>
<FILE>cogl-texture</FILE>
<TITLE>The Texture Interface</TITLE>
CoglTexture
cogl_is_texture
<SUBSECTION>
cogl_texture_get_width
cogl_texture_get_height
cogl_texture_get_format
cogl_texture_is_sliced
cogl_texture_get_data
cogl_texture_set_region
<SUBSECTION Private>
COGL_TEXTURE_MAX_WASTE
</SECTION>
<SECTION>
<FILE>cogl-texture-2d</FILE>
<TITLE>2D textures</TITLE>
CoglTexture2D
cogl_texture_2d_new_with_size
cogl_texture_2d_new_from_data
cogl_texture_2d_new_from_foreign
cogl_is_texture_rectangle
</SECTION>
<SECTION>
<FILE>cogl-texture-rectangle</FILE>
<TITLE>Rectangle textures (non-normalized coordinates)</TITLE>
CoglTextureRectangle
cogl_texture_rectangle_new_with_size
cogl_is_texture_rectangle
</SECTION>
<SECTION>
<FILE>cogl-texture-3d</FILE>
<TITLE>3D textures</TITLE>
CoglTexture3D
cogl_texture_3d_new_with_size
cogl_texture_3d_new_from_data
cogl_is_texture_3d
</SECTION>
<SECTION>
<FILE>cogl-meta-texture</FILE>
<TITLE>High Level Meta Textures</TITLE>
CoglMetaTexture
CoglMetaTextureCallback
cogl_meta_texture_foreach_in_region
</SECTION>
<SECTION>
<FILE>cogl-sub-texture</FILE>
<TITLE>Sub Textures</TITLE>
CoglSubTexture
cogl_sub_texture_new
cogl_is_sub_texture
</SECTION>
<SECTION>
<FILE>cogl-texture-2d-sliced</FILE>
<TITLE>Sliced Textures</TITLE>
CoglTexture2DSliced
cogl_texture_2d_sliced_new_with_size
cogl_is_texture_2d_sliced
</SECTION>
<SECTION>
<FILE>cogl-texture-pixmap-x11</FILE>
<TITLE>X11 Texture From Pixmap</TITLE>
cogl_texture_pixmap_x11_new
cogl_texture_pixmap_x11_update_area
cogl_texture_pixmap_x11_is_using_tfp_extension
cogl_texture_pixmap_x11_set_damage_object
cogl_is_texture_pixmap_x11
</SECTION>
<SECTION>
<FILE>cogl-framebuffer</FILE>
<TITLE>CoglFramebuffer: The Framebuffer Interface</TITLE>
CoglFramebuffer
COGL_FRAMEBUFFER
cogl_framebuffer_allocate
cogl_framebuffer_get_width
cogl_framebuffer_get_height
cogl_framebuffer_set_viewport
cogl_framebuffer_get_viewport_x
cogl_framebuffer_get_viewport_y
cogl_framebuffer_get_viewport_width
cogl_framebuffer_get_viewport_height
cogl_framebuffer_get_viewport4fv
cogl_framebuffer_get_red_bits
cogl_framebuffer_get_green_bits
cogl_framebuffer_get_blue_bits
cogl_framebuffer_get_blue_bits
cogl_framebuffer_get_color_mask
cogl_framebuffer_set_color_mask
cogl_framebuffer_get_point_samples_per_pixel
cogl_framebuffer_set_point_samples_per_pixel
cogl_framebuffer_get_context
cogl_framebuffer_clear
cogl_framebuffer_clear4f
cogl_framebuffer_swap_buffers
cogl_framebuffer_swap_region
cogl_framebuffer_add_swap_buffers_callback
cogl_framebuffer_remove_swap_buffers_callback
cogl_framebuffer_finish
<SUBSECTION>
cogl_get_draw_framebuffer
cogl_set_framebuffer
cogl_push_framebuffer
cogl_pop_framebuffer
</SECTION>
<SECTION>
<FILE>cogl-onscreen</FILE>
<TITLE>CoglOnscreen: The Onscreen Framebuffer Interface</TITLE>
CoglOnscreen
COGL_ONSCREEN
cogl_onscreen_new
cogl_x11_onscreen_set_foreign_window_xid
cogl_x11_onscreen_get_window_xid
cogl_x11_onscreen_get_visual_xid
cogl_win32_onscreen_set_foreign_window
cogl_win32_onscreen_get_window
cogl_onscreen_set_swap_throttled
cogl_onscreen_show
cogl_onscreen_hide
</SECTION>
<SECTION>
<FILE>cogl-offscreen</FILE>
<TITLE>Offscreen Framebuffers</TITLE>
cogl_offscreen_new_to_texture
cogl_is_offscreen
</SECTION>
<SECTION>
<FILE>cogl-color</FILE>
<TITLE>Color Type</TITLE>
CoglColor
cogl_color_new
cogl_color_copy
cogl_color_free
cogl_color_set_from_4ub
cogl_color_set_from_4f
<SUBSECTION>
cogl_color_get_red
cogl_color_get_green
cogl_color_get_blue
cogl_color_get_alpha
<SUBSECTION>
cogl_color_get_red_byte
cogl_color_get_green_byte
cogl_color_get_blue_byte
cogl_color_get_alpha_byte
<SUBSECTION>
cogl_color_get_red_float
cogl_color_get_green_float
cogl_color_get_blue_float
cogl_color_get_alpha_float
<SUBSECTION>
cogl_color_set_red
cogl_color_set_green
cogl_color_set_blue
cogl_color_set_alpha
<SUBSECTION>
cogl_color_set_red_byte
cogl_color_set_green_byte
cogl_color_set_blue_byte
cogl_color_set_alpha_byte
<SUBSECTION>
cogl_color_set_red_float
cogl_color_set_green_float
cogl_color_set_blue_float
cogl_color_set_alpha_float
<SUBSECTION>
cogl_color_premultiply
cogl_color_unpremultiply
cogl_color_equal
</SECTION>
<SECTION>
<FILE>cogl-matrix</FILE>
<TITLE>Matrices</TITLE>
CoglMatrix
cogl_matrix_init_identity
cogl_matrix_init_from_array
cogl_matrix_copy
cogl_matrix_equal
cogl_matrix_free
cogl_matrix_frustum
cogl_matrix_orthographic
cogl_matrix_perspective
cogl_matrix_look_at
cogl_matrix_multiply
cogl_matrix_rotate
cogl_matrix_translate
cogl_matrix_scale
cogl_matrix_transpose
cogl_matrix_get_array
cogl_matrix_get_inverse
cogl_matrix_transform_point
cogl_matrix_transform_points
cogl_matrix_project_points
cogl_matrix_is_identity
</SECTION>
<FILE>cogl-euler</FILE>
<TITLE>Eulers (Rotations)</TITLE>
CoglEuler
cogl_euler_init
cogl_euler_init_from_matrix
cogl_euler_init_from_quaternion
cogl_euler_equal
cogl_euler_copy
cogl_euler_free
</SECTION>
<SECTION>
<FILE>cogl-quaternion</FILE>
<TITLE>Quaternions (Rotations)</TITLE>
CoglQuaternion
cogl_quaternion_init_identity
cogl_quaternion_init
cogl_quaternion_init_from_angle_vector
cogl_quaternion_init_from_array
cogl_quaternion_init_from_x_rotation
cogl_quaternion_init_from_y_rotation
cogl_quaternion_init_from_z_rotation
cogl_quaternion_equal
cogl_quaternion_copy
cogl_quaternion_free
cogl_quaternion_get_rotation_angle
cogl_quaternion_get_rotation_axis
cogl_quaternion_normalize
cogl_quaternion_dot_product
cogl_quaternion_invert
cogl_quaternion_multiply
cogl_quaternion_pow
cogl_quaternion_slerp
cogl_quaternion_nlerp
cogl_quaternion_squad
cogl_get_static_identity_quaternion
cogl_get_static_zero_quaternion
</SECTION>
<SECTION>
<FILE>cogl-pipeline</FILE>
<TITLE>Pipeline</TITLE>
cogl_pipeline_new
cogl_pipeline_copy
cogl_is_pipeline
cogl_pipeline_set_color
cogl_pipeline_set_color4ub
cogl_pipeline_set_color4f
cogl_pipeline_get_color
cogl_pipeline_set_ambient
cogl_pipeline_get_ambient
cogl_pipeline_set_diffuse
cogl_pipeline_get_diffuse
cogl_pipeline_set_ambient_and_diffuse
cogl_pipeline_set_emission
cogl_pipeline_get_emission
cogl_pipeline_set_specular
cogl_pipeline_get_specular
cogl_pipeline_set_shininess
cogl_pipeline_get_shininess
CoglMaterialAlphaFunc
cogl_pipeline_set_alpha_test_function
COGL_BLEND_STRING_ERROR
CoglBlendStringError
cogl_pipeline_set_blend
cogl_pipeline_set_blend_constant
cogl_pipeline_set_point_size
cogl_pipeline_get_point_size
cogl_pipeline_get_color_mask
cogl_pipeline_set_color_mask
CoglPipelineCullFaceMode
cogl_pipeline_set_cull_face_mode
CoglWinding
cogl_pipeline_set_front_face_winding
cogl_pipeline_set_layer_texture
cogl_pipeline_get_layer_texture
CoglMaterialFilter
cogl_pipeline_set_layer_filters
cogl_pipeline_get_layer_min_filter
cogl_pipeline_get_layer_mag_filter
CoglMaterialWrapMode
cogl_pipeline_set_layer_wrap_mode
cogl_pipeline_set_layer_wrap_mode_s
cogl_pipeline_set_layer_wrap_mode_t
cogl_pipeline_set_layer_wrap_mode_p
cogl_pipeline_set_layer_combine
cogl_pipeline_set_layer_combine_constant
cogl_pipeline_set_layer_matrix
cogl_pipeline_set_layer_point_sprite_coords_enabled
cogl_pipeline_get_layer_point_sprite_coords_enabled
cogl_pipeline_remove_layer
cogl_pipeline_get_n_layers
cogl_pipeline_foreach_layer
cogl-pipeline: Add support for setting uniform values This adds the following new public experimental functions to set uniform values on a CoglPipeline: void cogl_pipeline_set_uniform_1f (CoglPipeline *pipeline, int uniform_location, float value); void cogl_pipeline_set_uniform_1i (CoglPipeline *pipeline, int uniform_location, int value); void cogl_pipeline_set_uniform_float (CoglPipeline *pipeline, int uniform_location, int n_components, int count, const float *value); void cogl_pipeline_set_uniform_int (CoglPipeline *pipeline, int uniform_location, int n_components, int count, const int *value); void cogl_pipeline_set_uniform_matrix (CoglPipeline *pipeline, int uniform_location, int dimensions, int count, gboolean transpose, const float *value); These are similar to the old functions used to set uniforms on a CoglProgram. To get a value to pass in as the uniform_location there is also: int cogl_pipeline_get_uniform_location (CoglPipeline *pipeline, const char *uniform_name); Conceptually the uniform locations are tied to the pipeline so that whenever setting a value for a new pipeline the application is expected to call this function. However in practice the uniform locations are global to the CoglContext. The names are stored in a linked list where the position in the list is the uniform location. The global indices are used so that each pipeline can store a mask of which uniforms it overrides. That way it is quicker to detect which uniforms are different from the last pipeline that used the same CoglProgramState so it can avoid flushing uniforms that haven't changed. Currently the values are not actually compared which means that it will only avoid flushing a uniform if there is a common ancestor that sets the value (or if the same pipeline is being flushed again - in which case the pipeline and its common ancestor are the same thing). The uniform values are stored in the big state of the pipeline as a sparse linked list. A bitmask stores which values have been overridden and only overridden values are stored in the linked list. Reviewed-by: Robert Bragg <robert@linux.intel.com>
2011-11-03 13:20:43 -04:00
cogl_pipeline_get_uniform_location
cogl_pipeline_set_uniform_1f
cogl_pipeline_set_uniform_1i
cogl_pipeline_set_uniform_float
cogl_pipeline_set_uniform_int
cogl_pipeline_set_uniform_matrix
cogl_pipeline_add_snippet
cogl_pipeline_add_layer_snippet
<SUBSECTION Private>
cogl_blend_string_error_get_type
cogl_blend_string_error_quark
</SECTION>
<SECTION>
<FILE>cogl-depth-state</FILE>
CoglDepthState
cogl_depth_state_init
cogl_depth_state_set_test_enabled
cogl_depth_state_get_test_enabled
cogl_depth_state_set_test_function
cogl_depth_state_get_test_function
cogl_depth_state_set_writing_enabled
cogl_depth_state_get_writing_enabled
cogl_depth_state_set_range
cogl_depth_state_get_range
</SECTION>
<SECTION>
<FILE>cogl-buffer</FILE>
<TITLE>CoglBuffer: The Buffer Interface</TITLE>
cogl_is_buffer
cogl_buffer_get_size
CoglBufferUsageHint
cogl_buffer_set_usage_hint
cogl_buffer_get_usage_hint
CoglBufferUpdateHint
cogl_buffer_set_update_hint
cogl_buffer_get_update_hint
CoglBufferAccess
cogl_buffer_map
cogl_buffer_unmap
cogl_buffer_set_data
<SUBSECTION>
cogl_pixel_buffer_new
cogl_pixel_buffer_new_for_size
cogl_is_pixel_buffer
<SUBSECTION>
cogl_texture_new_from_buffer
<SUBSECTION Private>
cogl_buffer_access_get_type
cogl_buffer_update_hint_get_type
cogl_buffer_usage_hint_get_type
</SECTION>
<SECTION>
<FILE>cogl-attribute-buffer</FILE>
<TITLE>CoglAttributeBuffer: Buffers of vertex attributes</TITLE>
CoglAttributeBuffer
cogl_attribute_buffer_new
cogl_is_attribute_buffer
</SECTION>
<SECTION>
<FILE>cogl-index-buffer</FILE>
<TITLE>CoglIndexBuffer: Buffers of vertex indices</TITLE>
CoglIndexBuffer
cogl_index_buffer_new
cogl_is_index_buffer
</SECTION>
<SECTION>
<FILE>cogl-vector</FILE>
<TITLE>3 Component Vectors</TITLE>
cogl_vector3_init
cogl_vector3_init_zero
cogl_vector3_equal
cogl_vector3_equal_with_epsilon
cogl_vector3_copy
cogl_vector3_free
cogl_vector3_invert
cogl_vector3_add
cogl_vector3_subtract
cogl_vector3_multiply_scalar
cogl_vector3_divide_scalar
cogl_vector3_normalize
cogl_vector3_magnitude
cogl_vector3_cross_product
cogl_vector3_dot_product
cogl_vector3_distance
</SECTION>
<SECTION>
<FILE>cogl-types</FILE>
<TITLE>Common Types</TITLE>
CoglFuncPtr
CoglPixelFormat
CoglBufferTarget
CoglBufferBit
CoglAttributeType
CoglColorMask
</SECTION>
<SECTION>
<FILE>cogl-gtype</FILE>
<TITLE>GType Integration API</TITLE>
cogl_gtype_matrix_get_type
</SECTION>