Skip to main content

Module transfer

Module transfer 

Source
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§

ContextIdentity
Stable identity supplied by a context adapter. It is never inferred from a GL object name.
CpuFrameDestination
A borrowed CPU destination. It does not take ownership of caller memory.
CpuFrameSource
A borrowed CPU source with explicit orientation. Plane strides live on Plane.
CpuPlaneDestination
A borrowed mutable destination plane with an explicit row stride.
ExecutionOwner
Identity of the thread, worker, or executor allowed to use a context.
GraphicsResource
An opaque native GL or browser WebGL image resource.
TransferCapability
Runtime support and the cost/stages of a proposed transfer.
TransferPolicy
Cost policy for a frame transfer. require is strict and never silently falls back.

Enums§

ColorConversion
Whether numeric color values must be converted.
FrameDestination
FrameSource
GraphicsApi
The graphics API that created a resource.
Orientation
Location of the first logical row in memory or a graphics resource.
ResourceKind
Kind of caller- or library-supplied graphics object.
ResourceOwnership
Determines whether zvidlib may ask the adapter to delete a resource.
ScaleFilter
Scaling filter requested by a transfer.
TransferStage
An explicit, inspectable operation in a transfer plan.

Traits§

GraphicsAdapter
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.