ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
board_view_provider_internal.h File Reference

Internal immutable-fd CoreGraphics provider factory. More...

#include <stddef.h>
#include "ra8_attributes.h"
Include dependency graph for board_view_provider_internal.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef void * CGDataProviderRef
 Opaque provider handle for non-Apple parse and contract checking.

Functions

CGDataProviderRef priv_board_view_provider_create (int snapshot_fd, size_t provider_bytes)
 Transfer one sealed RGB565 descriptor into a lazy RGB888 provider.

Detailed Description

Internal immutable-fd CoreGraphics provider factory.

Declares the Apple provider seam that transfers ownership of a sealed presentation descriptor and exposes it as lazily expanded RGB888 bytes without copying the complete frame into memory.

Since
0.1.0

Definition in file board_view_provider_internal.h.

Typedef Documentation

◆ CGDataProviderRef

typedef void* CGDataProviderRef

Opaque provider handle for non-Apple parse and contract checking.

Definition at line 22 of file board_view_provider_internal.h.

Function Documentation

◆ priv_board_view_provider_create()

CGDataProviderRef priv_board_view_provider_create ( int snapshot_fd,
size_t provider_bytes )

Transfer one sealed RGB565 descriptor into a lazy RGB888 provider.

Parameters
[in]snapshot_fdOwned immutable descriptor; ownership always transfers.
[in]provider_bytesExact virtual 32-bit output length.
Returns
CoreGraphics provider, or NULL after closing snapshot_fd.
Postcondition
The provider release callback closes snapshot_fd exactly once.
Note
CoreGraphics supplies every destination byte buffer; no client allocation.
Since
0.1.0

Transfer one sealed rgb565 descriptor into a lazy rgb888 provider; this step is contained within the board view provider model and uses bounded caller or module-owned storage.

Return values
valueThe operation-specific board view provider create value.
Precondition
Arguments satisfy the ranges documented for board view provider create.
The call executes on the emulator's single owning thread.
Postcondition
Ownership of caller-supplied storage is unchanged.

Definition at line 94 of file board_view_provider.c.