Namespace

Cogl – 14

A Low Level GPU Graphics and Utilities API

Version14
AuthorsMutter Development Team
LicenseGPL-2.0-or-later
Websitehttps://blogs.gnome.org/shell-dev/
Sourcehttps://gitlab.gnome.org/GNOME/mutter/

Build

C headerscogl/cogl.h
pkg-config filesmutter-cogl-14

Dependencies

GObject—2.0 The base type system library
Browse documentation
Graphene—1.0 A thin layer of mathematical types for 3D libraries
Browse documentation

Additional documentation

Classes

Bitmap

Functions for loading images.

since: 14

Buffer

Common buffer functions, including data upload APIs.

since: 14

Context

The top level application context.

since: 14

Framebuffer

since: 14

FrameInfo

Frame information.

since: 14

Offscreen

Functions for creating and manipulating offscreen framebuffers.

since: 14

Onscreen

since: 14

Pipeline

Functions for creating and manipulating the GPU pipeline.

since: 14

Program

since: 14

Shader

Functions for accessing the programmable GL pipeline.

since: 14

Snippet

Functions for creating and manipulating shader snippets.

since: 14

Texture

Functions for creating and manipulating textures.

since: 14

Texture2D

Functions for creating and manipulating 2D textures.

since: 14

Texture2DSliced

Functions for creating and manipulating 2D meta textures that may internally be comprised of multiple 2D textures with power-of-two sizes.

since: 14

Structs

Color

A generic color definition.

since: 14

DmaBufHandle

An opaque type that tracks the lifetime of a DMA buffer fd. Release with cogl_dma_buf_handle_free().

since: 14

FramebufferDriverConfig

since: 14

FrameClosure

An opaque type that tracks a CoglFrameCallback and associated user data. A CoglFrameClosure pointer will be returned from cogl_onscreen_add_frame_callback() and it allows you to remove a callback later using cogl_onscreen_remove_frame_callback().

since: 14

OnscreenDirtyClosure

An opaque type that tracks a CoglOnscreenDirtyCallback and associated user data. A CoglOnscreenDirtyClosure pointer will be returned from cogl_onscreen_add_dirty_callback() and it allows you to remove a callback later using cogl_onscreen_remove_dirty_callback().

since: 14

OnscreenDirtyInfo

A structure passed to callbacks registered using cogl_onscreen_add_dirty_callback(). The members describe a rectangle within the onscreen buffer that should be redrawn.

since: 14

Scanout

since: 14

ScanoutBuffer

since: 14

TextureVertex

Used to specify vertex information when calling cogl_polygon()

since: 14

TimestampQuery

since: 14

TraceContext

since: 14

TraceHead

since: 14

Aliases

PipelineKey

since: 14

Enumerations

AttributeType

Data types for the components of a vertex attribute.

since: 14

BitmapError

Error codes that can be thrown when performing bitmap operations.

since: 14

BlendStringError

Error enumeration for the blend strings parser.

since: 14

BufferBindTarget

since: 14

BufferError

Error enumeration for CoglBuffer.

since: 14

BufferUpdateHint

The update hint on a buffer allows the user to give some detail on how often the buffer data is going to be updated.

since: 14

DepthTestFunction

When using depth testing one of these functions is used to compare the depth of an incoming fragment against the depth value currently stored in the depth buffer. The function is changed using cogl_depth_state_set_test_function().

since: 14

FeatureID

All the capabilities that can vary between different GPUs supported by Cogl. Applications that depend on any of these features should explicitly check for them using cogl_has_feature() or cogl_has_features().

since: 14

FilterReturn

Return values for the CoglXlibFilterFunc and CoglWin32FilterFunc functions.

since: 14

FramebufferError

since: 14

FrameEvent

Identifiers that are passed to CoglFrameCallback functions (registered using cogl_onscreen_add_frame_callback()) that mark the progression of a frame in some way which usually means that new information will have been accumulated in the frame’s corresponding CoglFrameInfo object.

since: 14

GraphicsResetStatus

All the error values that might be returned by cogl_get_graphics_reset_status(). Each value’s meaning corresponds to the similarly named value defined in the ARB_robustness and NV_robustness_video_memory_purge extensions.

since: 14

IndicesType

You should aim to use the smallest data type that gives you enough range, since it reduces the size of your index array and can help reduce the demand on memory bandwidth.

since: 14

PipelineAlphaFunc

Alpha testing happens before blending primitives with the framebuffer and gives an opportunity to discard fragments based on a comparison with the incoming alpha value and a reference alpha value. The CoglPipelineAlphaFunc determines how the comparison is done.

since: 14

PipelineCullFaceMode

Specifies which faces should be culled. This can be set on a pipeline using cogl_pipeline_set_cull_face_mode().

since: 14

PipelineFilter

Texture filtering is used whenever the current pixel maps either to more than one texture element (texel) or less than one. These filter enums correspond to different strategies used to come up with a pixel color, by possibly referring to multiple neighbouring texels and taking a weighted average or simply using the nearest texel.

since: 14

PipelineWrapMode

The wrap mode specifies what happens when texture coordinates outside the range 0→1 are used. Note that if the filter mode is anything but COGL_PIPELINE_FILTER_NEAREST then texels outside the range 0→1 might be used even when the coordinate is exactly 0 or 1 because OpenGL will try to sample neighbouring pixels. For example if you are trying to render the full texture then you may get artifacts around the edges when the pixels from the other side are merged in if the wrap mode is set to repeat.

since: 14

PixelFormat

Pixel formats used by Cogl. For the formats with a byte per component, the order of the components specify the order in increasing memory addresses. So for example COGL_PIXEL_FORMAT_RGB_888 would have the red component in the lowest address, green in the next address and blue after that regardless of the endianness of the system.

since: 14

RendererError

since: 14

ShaderType

Types of shaders.

since: 14

SnippetHook

CoglSnippetHook is used to specify a location within a CoglPipeline where the code of the snippet should be used when it is attached to a pipeline.

since: 14

StereoMode

Represents how draw should affect the two buffers of a stereo framebuffer. See cogl_framebuffer_set_stereo_mode().

since: 14

SystemError

Error enumeration for Cogl.

since: 14

TextureComponents

See cogl_texture_set_components().

since: 14

TextureError

Error codes that can be thrown when allocating textures.

since: 14

VerticesMode

Different ways of interpreting vertices when drawing.

since: 14

Winding

Enum used to represent the two directions of rotation. This can be used to set the front face for culling by calling cogl_pipeline_set_front_face_winding().

since: 14

WinsysFeature

since: 14

Bitfields

BufferAccess

The access hints for cogl_buffer_set_update_hint()

since: 14

BufferBit

Types of auxiliary buffers.

since: 14

BufferMapHint

Hints to Cogl about how you are planning to modify the data once it is mapped.

since: 14

BufferTarget

Target flags for FBOs.

since: 14

EglImageFlags

since: 14

ReadPixelsFlags

Flags for cogl_framebuffer_read_pixels_into_bitmap()

since: 14

Error Domains

ScanoutError

since: 14

Callbacks

FeatureCallback

A callback used with cogl_foreach_feature() for enumerating all context level features supported by Cogl.

since: 14

FrameCallback

Is a callback that can be registered via cogl_onscreen_add_frame_callback() to be called when a frame progresses in some notable way.

since: 14

OnscreenDirtyCallback

Is a callback that can be registered via cogl_onscreen_add_dirty_callback() to be called when the windowing system determines that a region of the onscreen window has been lost and the application should redraw it.

since: 14

PipelineLayerCallback

The callback prototype used with cogl_pipeline_foreach_layer() for iterating all the layers of a pipeline.

since: 14

Texture2DEGLImageExternalAlloc

since: 14

XlibFilterFunc

since: 14

Functions

blend_string_error_quark

since: 14

blit_framebuffer

return FALSE for an immediately detected error, TRUE otherwise.

since: 14

clutter_winsys_has_feature

since: 14

create_program

Create a new cogl program object that can be used to replace parts of the GL rendering pipeline with custom code.

deprecated: 1.16 since: 14

create_shader

Create a new shader handle, use cogl_shader_source() to set the source code to be used on it.

deprecated: 1.16 since: 14

egl_texture_2d_new_from_image

since: 14

flush

This function should only need to be called in exceptional circumstances.

since: 14

foreach_feature

Iterates through all the context level features currently supported for a given context and for each feature callback is called.

since: 14

get_graphics_reset_status

Returns the graphics reset status as reported by GetGraphicsResetStatusARB defined in the ARB_robustness extension.

since: 14

get_proc_address

Gets a pointer to a given GL or GL ES extension function. This acts as a wrapper around glXGetProcAddress() or whatever is the appropriate function for the current backend.

since: 14

has_feature

Checks if a given feature is currently available.

since: 14

has_features

Checks if a list of features are all currently available.

since: 14

is_framebuffer

Gets whether the given object references a CoglFramebuffer.

since: 14

set_tracing_disabled_on_thread

since: 14

set_tracing_enabled_on_thread

since: 14

start_tracing_with_fd

since: 14

start_tracing_with_path

since: 14

stop_tracing

since: 14

trace_describe

since: 14

trace_end

since: 14

trace_mark

since: 14

xlib_renderer_add_filter

Adds a callback function that will receive all native events. The function can stop further processing of the event by return COGL_FILTER_REMOVE.

since: 14

xlib_renderer_get_display

since: 14

xlib_renderer_get_foreign_display

since: 14

xlib_renderer_handle_event

This function processes a single event; it can be used to hook into external event retrieval (for example that done by Clutter or GDK).

since: 14

xlib_renderer_remove_filter

Removes a callback that was previously added with cogl_xlib_renderer_add_filter().

since: 14

xlib_renderer_request_reset_on_video_memory_purge

Sets whether Cogl should make use of the NV_robustness_video_memory_purge extension, if exposed by the driver, by initializing the GLX context appropriately.

since: 14

xlib_renderer_set_foreign_display

Sets a foreign Xlib display that Cogl will use for and Xlib based winsys backend.

since: 14

Function Macros

BUFFER_CONST

since: 14

PIPELINE_CONST

since: 14

PIXEL_FORMAT_CAN_HAVE_PREMULT

since: 14

PRIVATE

since: 14

STRUCT_SIZE_ASSERT

since: 14

TEXTURE_2D_CONST

since: 14

TEXTURE_2D_SLICED_CONST

since: 14

TEXTURE_CONST

since: 14

TRACE_BEGIN_ANCHORED

since: 14

TRACE_BEGIN_SCOPED

since: 14

TRACE_DESCRIBE

since: 14

TRACE_END

since: 14

TRACE_MESSAGE

since: 14

TRACE_SCOPED_ANCHOR

since: 14

Constants

A_BIT

since: 14

AFIRST_BIT

since: 14

BGR_BIT

since: 14

DEPTH_BIT

since: 14

PIXEL_FORMAT_MAX_PLANES

The maximum number of planes of a pixel format (see also cogl_pixel_format_get_planes()).

since: 14

PREMULT_BIT

since: 14

STENCIL_BIT

since: 14

TEXTURE_MAX_WASTE

since: 14