Common pixel types and structures.
void * buf
Raw buffer holding pixel data.
pix_point_t offset
Offset (in pixels) to the origin within the buffer.
struct pix_frame_t pix_frame_t
Frame structure containing pixel data and drawing operations.
size_t(* get_rect)(struct pix_frame_t *frame, pix_color_t *dst, pix_point_t origin, pix_size_t size)
Get a rectangular region of pixels.
uint32_t pix_color_t
Color value type for pixel operations.
void(* clear_rect)(struct pix_frame_t *frame, pix_color_t color, pix_point_t origin, pix_size_t size)
Clear a rectangular region to a solid color.
pix_size_t size
Size of the buffer in pixels.
pix_format_t format
Pixel format of the buffer.
Frame structure containing pixel data and drawing operations.
Point structure representing X,Y coordinates.
pix_op_t
Pixel operation types for drawing operations.
bool pix_frame_clear_rect(pix_frame_t *frame, pix_color_t color, pix_point_t origin, pix_size_t size)
Clear a rectangular region to a solid color.
bool pix_frame_finalize(pix_frame_t *frame)
Finalize and free resources associated with a framebuffer.
pix_frame_t pix_frame_init(pix_format_t format, pix_size_t size, size_t alignment)
Initialize a new framebuffer with the specified format and size.
pix_format_t
Pixel format enumeration defining color depth and layout.
Size structure representing width and height dimensions.
bool(* drawable)(void)
Check if the framebuffer is currently drawable.
size_t stride
Bytes per scanline.
void(* set_rect)(struct pix_frame_t *frame, pix_color_t *src, pix_point_t origin, pix_size_t size, pix_op_t op)
Set a rectangular region of pixels from RGBA32 source data.