17 uint16_t* out_modules) {
19 int rc =
qr::measure(data, max_version, ecc, out_modules);
25 uint8_t scale, uint8_t quiet_modules,
26 uint8_t* out,
size_t out_size,
27 uint16_t* out_stride_bytes, uint16_t* out_height_px) {
28 if (!data || !data[0] || !out || !out_stride_bytes || !out_height_px) {
31 int rc =
qr::render(data, max_version, ecc, scale, quiet_modules,
32 out, out_size, out_stride_bytes, out_height_px);
QR encoding into a caller-provided 1-bpp packed raster (no display).
int host_qr_render_bitmap(const char *data, uint8_t max_version, uint8_t ecc, uint8_t scale, uint8_t quiet_modules, uint8_t *out, size_t out_size, uint16_t *out_stride_bytes, uint16_t *out_height_px)
Encode data into a packed 1-bpp QR raster.
int host_qr_measure(const char *data, uint8_t max_version, uint8_t ecc, uint16_t *out_modules)
Measure the QR module count for data without rendering.
CDC Badge OS plugin host API - canonical C ABI contract.
#define HOST_ERR_INVALID_ARG
#define HOST_ERR_NO_MEMORY
int measure(const char *data, uint8_t max_version, uint8_t ecc, uint16_t *out_modules)
Measures the module count for data without rendering.
int render(const char *data, uint8_t max_version, uint8_t ecc, uint8_t scale, uint8_t quiet_modules, uint8_t *out, size_t out_size, uint16_t *out_stride_bytes, uint16_t *out_height_px)
Encodes data and packs it into a 1-bpp raster.