ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
ra8_compress.h
Go to the documentation of this file.
1
30
31#pragma once
32
33#ifdef __cplusplus
34extern "C" {
35#endif
36
37#include <stdint.h>
38
39#include "miniz.h"
40#include "ra8_err.h"
41
48typedef enum : uint32_t {
50 k_ra8_compress_scratch_bytes = (uint32_t)sizeof(tdefl_compressor),
52
81[[nodiscard]] ra8_err_t ra8_compress(const uint8_t* src,
82 uint32_t src_len,
83 uint8_t* out,
84 uint32_t out_cap,
85 void* scratch,
86 uint32_t scratch_len,
87 uint32_t* out_len);
88
122[[nodiscard]] ra8_err_t ra8_compress_zlib(const uint8_t* src,
123 uint32_t src_len,
124 uint8_t* out,
125 uint32_t out_cap,
126 void* scratch,
127 uint32_t scratch_len,
128 uint32_t* out_len);
129
153[[nodiscard]] ra8_err_t ra8_decompress(const uint8_t* src,
154 uint32_t src_len,
155 uint8_t* out,
156 uint32_t out_cap,
157 uint32_t* out_len);
158
159#ifdef __cplusplus
160}
161#endif
ra8_err_t ra8_decompress(const uint8_t *src, uint32_t src_len, uint8_t *out, uint32_t out_cap, uint32_t *out_len)
Raw-DEFLATE decompress src into out.
ra8_err_t ra8_compress_zlib(const uint8_t *src, uint32_t src_len, uint8_t *out, uint32_t out_cap, void *scratch, uint32_t scratch_len, uint32_t *out_len)
Zlib-wrap and DEFLATE-compress one bounded byte range.
ra8_compress_const_t
Compression scratch sizing.
@ k_ra8_compress_scratch_bytes
Minimum compress scratch size (one miniz tdefl_compressor).
ra8_err_t ra8_compress(const uint8_t *src, uint32_t src_len, uint8_t *out, uint32_t out_cap, void *scratch, uint32_t scratch_len, uint32_t *out_len)
Raw-DEFLATE compress src into out.
Error Code Definitions for ra8-firmware.
ra8_err_codes_t ra8_err_t
Canonical error-return type used by every ra8-firmware API.
Definition ra8_err.h:546