1 #ifndef HEATSHRINK_ENCODER_H 2 #define HEATSHRINK_ENCODER_H 27 #if HEATSHRINK_DYNAMIC_ALLOC 28 #define HEATSHRINK_ENCODER_WINDOW_BITS(HSE) \ 30 #define HEATSHRINK_ENCODER_LOOKAHEAD_BITS(HSE) \ 31 ((HSE)->lookahead_sz2) 32 #define HEATSHRINK_ENCODER_INDEX(HSE) \ 39 #define HEATSHRINK_ENCODER_WINDOW_BITS(_) \ 40 (HEATSHRINK_STATIC_WINDOW_BITS) 41 #define HEATSHRINK_ENCODER_LOOKAHEAD_BITS(_) \ 42 (HEATSHRINK_STATIC_LOOKAHEAD_BITS) 43 #define HEATSHRINK_ENCODER_INDEX(HSE) \ 44 (&(HSE)->search_index) 47 int16_t
index[2 << HEATSHRINK_STATIC_WINDOW_BITS];
62 #if HEATSHRINK_DYNAMIC_ALLOC 65 #if HEATSHRINK_USE_INDEX 71 #if HEATSHRINK_USE_INDEX 79 #if HEATSHRINK_DYNAMIC_ALLOC 83 uint8_t lookahead_sz2);
96 uint8_t *in_buf,
size_t size,
size_t *input_size);
101 uint8_t *out_buf,
size_t out_buf_size,
size_t *output_size);
uint16_t match_scan_index
uint8_t outgoing_bits_count
HSE_poll_res heatshrink_encoder_poll(heatshrink_encoder *hse, uint8_t *out_buf, size_t out_buf_size, size_t *output_size)
#define HEATSHRINK_ENCODER_WINDOW_BITS(HSE)
void heatshrink_encoder_free(heatshrink_encoder *hse)
heatshrink_encoder * heatshrink_encoder_alloc(uint8_t window_sz2, uint8_t lookahead_sz2)
HSE_finish_res heatshrink_encoder_finish(heatshrink_encoder *hse)
struct hs_index * search_index
void heatshrink_encoder_reset(heatshrink_encoder *hse)
HSE_sink_res heatshrink_encoder_sink(heatshrink_encoder *hse, uint8_t *in_buf, size_t size, size_t *input_size)
static heatshrink_encoder hse