9#ifndef BROTLI_ENC_ENTROPY_ENCODE_H_
10#define BROTLI_ENC_ENTROPY_ENCODE_H_
13#include <brotli/types.h>
15#if defined(__cplusplus) || defined(c_plusplus)
27 int16_t
left, int16_t right) {
35 int p,
HuffmanTree* pool, uint8_t* depth,
int max_depth);
63 size_t length, uint32_t* counts, uint8_t* good_for_rle);
72 uint8_t* extra_bits_data);
88 for (
i = 1;
i < n; ++
i) {
92 while (comparator(&tmp, &items[j])) {
102 int g = n < 57 ? 2 : 0;
106 for (
i = gap;
i < n; ++
i) {
109 for (; j >= gap && comparator(&tmp, &items[j - gap]); j -= gap) {
110 items[j] = items[j - gap];
118#if defined(__cplusplus) || defined(c_plusplus)
struct HuffmanTree HuffmanTree
BROTLI_INTERNAL BROTLI_BOOL BrotliSetDepth(int p, HuffmanTree *pool, uint8_t *depth, int max_depth)
Definition entropy_encode.c:23
BROTLI_INTERNAL void BrotliWriteHuffmanTree(const uint8_t *depth, size_t num, size_t *tree_size, uint8_t *tree, uint8_t *extra_bits_data)
Definition entropy_encode.c:405
BROTLI_BOOL(* HuffmanTreeComparator)(const HuffmanTree *, const HuffmanTree *)
Definition entropy_encode.h:81
BROTLI_INTERNAL void BrotliOptimizeHuffmanCountsForRle(size_t length, uint32_t *counts, uint8_t *good_for_rle)
Definition entropy_encode.c:244
BROTLI_INTERNAL const size_t kBrotliShellGaps[6]
Definition entropy_encode.c:21
BROTLI_INTERNAL void BrotliCreateHuffmanTree(const uint32_t *data, const size_t length, const int tree_limit, HuffmanTree *tree, uint8_t *depth)
Definition entropy_encode.c:71
BROTLI_INTERNAL void BrotliConvertBitDepthsToSymbols(const uint8_t *depth, size_t len, uint16_t *bits)
Definition entropy_encode.c:476
Definition entropy_encode.h:20
uint32_t total_count_
Definition entropy_encode.h:21
int16_t index_left_
Definition entropy_encode.h:22
int16_t index_right_or_value_
Definition entropy_encode.h:23
Definition poolTests.c:28
#define BROTLI_BOOL
Definition types.h:49
#define g(i)
Definition sha256.c:47
size_t * left
Definition util.h:104
lzma_index ** i
Definition index.h:629
static uint32_t const uint8_t uint32_t len
Definition memcmplen.h:44