Skip to main content

Crate ferroui_opengl

Crate ferroui_opengl 

Source
Expand description

The OpenGL platform contracts.

What a platform exposes so that a render backend can draw with OpenGL, OpenGL ES or WebGL: the context (IGlContext), the surfaces it renders to (surfaces) and the entry points the framework itself calls (GlInterface).

The entry point tables call into the platform’s OpenGL library through function pointers resolved by name. That is the one place of this crate with unsafe code; see GlInterface for the contract.

Modules§

composition
Drawing with OpenGL into the surfaces of the compositor.
controls
Drawing with OpenGL from a control.
egl
EGL: the constants, the error codes and the entry points, and the display, the contexts, the surfaces and the images that are built on them.
features
Features of an OpenGL context that are built on extensions of OpenGL itself.
gl_consts
The OpenGL constants used by the framework.
surfaces
The surfaces an OpenGL context renders to.

Structs§

GlBasicInfoInterface
The entry points needed to find out what a context is: its strings, its limits and its extensions.
GlContextInfo
What a context is: its version and its extensions.
GlExtensionEntryPoint
Resolves an entry point that an extension provides.
GlInterface
GlInterface only includes essential members and members necessary for the framework itself. It is not a general-purpose interface for OpenGL API.
GlMinVersionEntryPoint
Resolves an entry point that is part of the API from a given version on.
GlVersion
The version of the OpenGL API of a context.
OpenGlException
A failure reported by OpenGL or by the code driving it.

Enums§

GlErrors
The error codes glGetError reports.
GlProfileType
The flavour of the OpenGL API a context implements.

Statics§

ASSEMBLY
What this crate states about itself for markup: its assembly name. The upstream project maps no XML namespace; documents name the namespace of the control with using:.

Traits§

ICompositionImportableOpenGlSharedTexture
An OpenGL texture of a context of the share group of the compositor, which the compositor can import.
IGlContext
An OpenGL context.
IGlContextExternalObjectsFeature
The feature of an OpenGL context that imports and exports images and semaphores shared with other graphics APIs.
IGlExportableExternalImageTexture
A texture created by the context whose image another graphics API can import.
IGlExportableExternalSemaphore
A semaphore created by the context that another graphics API can import.
IGlExternalImageTexture
A texture backed by an image shared with another graphics API.
IGlExternalSemaphore
A semaphore shared with another graphics API.
IGlPlatformSurfaceRenderTargetFactory
Lets a context render to surfaces that are not OpenGL surfaces themselves.
IOpenGlTextureSharingRenderInterfaceContextFeature
The feature of a render interface context that shares OpenGL textures with other contexts of its share group.
IPlatformGraphicsOpenGlContextFactory
Creates OpenGL contexts for a platform.

Functions§

register_types
Registers the namespaces, the types and the assembly of this crate (and of the crates it is built on). Cheap and idempotent.

Type Aliases§

GetProcAddress
Resolves an OpenGL entry point by name; null when the platform does not have it.