Expand description
Frame transfer contracts shared by CPU, native OpenGL, and browser WebGL backends.
Graphics objects remain opaque and caller-owned unless explicitly marked otherwise. Backends
perform the actual GL/WebGL calls through GraphicsAdapter, after this module validates the
context identity, execution owner, current-context state, context-loss state, and transfer
policy.
Structs§
- Context
Identity - Stable identity supplied by a context adapter. It is never inferred from a GL object name.
- CpuFrame
Destination - A borrowed CPU destination. It does not take ownership of caller memory.
- CpuFrame
Source - A borrowed CPU source with explicit orientation. Plane strides live on
Plane. - CpuPlane
Destination - A borrowed mutable destination plane with an explicit row stride.
- Execution
Owner - Identity of the thread, worker, or executor allowed to use a context.
- Graphics
Resource - An opaque native GL or browser WebGL image resource.
- Transfer
Capability - Runtime support and the cost/stages of a proposed transfer.
- Transfer
Policy - Cost policy for a frame transfer.
requireis strict and never silently falls back.
Enums§
- Color
Conversion - Whether numeric color values must be converted.
- Frame
Destination - Frame
Source - Graphics
Api - The graphics API that created a resource.
- Orientation
- Location of the first logical row in memory or a graphics resource.
- Resource
Kind - Kind of caller- or library-supplied graphics object.
- Resource
Ownership - Determines whether zvidlib may ask the adapter to delete a resource.
- Scale
Filter - Scaling filter requested by a transfer.
- Transfer
Stage - An explicit, inspectable operation in a transfer plan.
Traits§
- Graphics
Adapter - Platform adapter that performs native GL or WebGL operations.
Functions§
- execute_
transfer - Validates, plans, and executes a CPU/GL/WebGL transfer.
- inspect_
transfer - Inspects a transfer without executing it.