ascii-chat
Binary v0.15.83-53-gb711d8720
Library lib/v0.3.2-701-gb711d8720
Video chat in your terminal
Loading...
Searching...
No Matches
render_contract.h
Go to the documentation of this file.
1#pragma once
4
5#ifdef __cplusplus
6extern "C" {
7#endif
8
9#define FRAME_RENDER_MAX_BYTES (16u * 1024u * 1024u)
10#define FRAME_RENDER_CONTRACT_SCHEMA 1u
11#define FRAME_RENDER_CONTRACT_HEADER 20u
12#define FRAME_RENDER_CONTRACT_MAX (FRAME_RENDER_CONTRACT_HEADER + 255u)
13#define FRAME_RENDER_CONTRACT_RAIN 1u
14#define FRAME_RENDER_CONTRACT_GRID 2u
15
16/* Explicit, big-endian wire prefix: schema, revision, render mode, effects,
17 * palette byte length, followed by that many UTF-8 bytes (no NUL). Text sizes,
18 * compression and CRC in the legacy frame header continue to describe TEXT. */
20 size_t *length);
21asciichat_error_t frame_render_contract_decode(const void *wire, size_t available, acip_render_settings_t *settings,
22 uint32_t *effects, size_t *length);
23
24#ifdef __cplusplus
25}
26#endif
unsigned int uint32_t
Definition common.h:62
unsigned char uint8_t
Definition common.h:60
asciichat_error_t
Error and exit codes - unified status values (0-255).
Definition error_codes.h:44
Protocol version, features, compression, and frame flag constants.
asciichat_error_t frame_render_contract_decode(const void *wire, size_t available, acip_render_settings_t *settings, uint32_t *effects, size_t *length)
asciichat_error_t frame_render_contract_encode(const acip_render_settings_t *settings, uint32_t effects, uint8_t *wire, size_t *length)
acip render settings keeps the values that move through the subsystem: caps, width,...