Parolin 0.7.9 6796
Console (soon DLLs) to do a tar like job
Loading...
Searching...
No Matches
brotli_bit_stream.c File Reference
#include "./brotli_bit_stream.h"
#include <string.h>
#include "../common/constants.h"
#include "../common/context.h"
#include "../common/platform.h"
#include <brotli/types.h>
#include "./entropy_encode.h"
#include "./entropy_encode_static.h"
#include "./fast_log.h"
#include "./histogram.h"
#include "./memory.h"
#include "./write_bits.h"
#include "./block_encoder_inc.h"

Data Structures

struct  BlockTypeCodeCalculator
 
struct  BlockSplitCode
 
struct  BlockEncoder
 

Macros

#define MAX_HUFFMAN_TREE_SIZE   (2 * BROTLI_NUM_COMMAND_SYMBOLS + 1)
 
#define MAX_SIMPLE_DISTANCE_ALPHABET_SIZE    BROTLI_DISTANCE_ALPHABET_SIZE(0, 0, BROTLI_LARGE_MAX_DISTANCE_BITS)
 
#define SYMBOL_BITS   9
 
#define FN(X)
 
#define FN(X)
 
#define FN(X)
 

Typedefs

typedef struct BlockTypeCodeCalculator BlockTypeCodeCalculator
 
typedef struct BlockSplitCode BlockSplitCode
 
typedef struct BlockEncoder BlockEncoder
 

Functions

void BrotliStoreHuffmanTree (const uint8_t *depths, size_t num, HuffmanTree *tree, size_t *storage_ix, uint8_t *storage)
 
void BrotliBuildAndStoreHuffmanTreeFast (MemoryManager *m, const uint32_t *histogram, const size_t histogram_total, const size_t max_bits, uint8_t *depth, uint16_t *bits, size_t *storage_ix, uint8_t *storage)
 
void BrotliStoreMetaBlock (MemoryManager *m, const uint8_t *input, size_t start_pos, size_t length, size_t mask, uint8_t prev_byte, uint8_t prev_byte2, BROTLI_BOOL is_last, const BrotliEncoderParams *params, ContextType literal_context_mode, const Command *commands, size_t n_commands, const MetaBlockSplit *mb, size_t *storage_ix, uint8_t *storage)
 
void BrotliStoreMetaBlockTrivial (MemoryManager *m, const uint8_t *input, size_t start_pos, size_t length, size_t mask, BROTLI_BOOL is_last, const BrotliEncoderParams *params, const Command *commands, size_t n_commands, size_t *storage_ix, uint8_t *storage)
 
void BrotliStoreMetaBlockFast (MemoryManager *m, const uint8_t *input, size_t start_pos, size_t length, size_t mask, BROTLI_BOOL is_last, const BrotliEncoderParams *params, const Command *commands, size_t n_commands, size_t *storage_ix, uint8_t *storage)
 
void BrotliStoreUncompressedMetaBlock (BROTLI_BOOL is_final_block, const uint8_t *BROTLI_RESTRICT input, size_t position, size_t mask, size_t len, size_t *BROTLI_RESTRICT storage_ix, uint8_t *BROTLI_RESTRICT storage)
 

Macro Definition Documentation

◆ FN [1/3]

#define FN ( X)
Value:
#define Literal
Definition LzmaDec.c:150
#define X(name, r, bit)
Definition cpu.h:110

◆ FN [2/3]

#define FN ( X)
Value:
Definition command.h:107

◆ FN [3/3]

#define FN ( X)
Value:
X ## Distance

◆ MAX_HUFFMAN_TREE_SIZE

#define MAX_HUFFMAN_TREE_SIZE   (2 * BROTLI_NUM_COMMAND_SYMBOLS + 1)

◆ MAX_SIMPLE_DISTANCE_ALPHABET_SIZE

#define MAX_SIMPLE_DISTANCE_ALPHABET_SIZE    BROTLI_DISTANCE_ALPHABET_SIZE(0, 0, BROTLI_LARGE_MAX_DISTANCE_BITS)

◆ SYMBOL_BITS

#define SYMBOL_BITS   9

Typedef Documentation

◆ BlockEncoder

typedef struct BlockEncoder BlockEncoder

◆ BlockSplitCode

typedef struct BlockSplitCode BlockSplitCode

◆ BlockTypeCodeCalculator

typedef struct BlockTypeCodeCalculator BlockTypeCodeCalculator

Function Documentation

◆ BrotliBuildAndStoreHuffmanTreeFast()

void BrotliBuildAndStoreHuffmanTreeFast ( MemoryManager * m,
const uint32_t * histogram,
const size_t histogram_total,
const size_t max_bits,
uint8_t * depth,
uint16_t * bits,
size_t * storage_ix,
uint8_t * storage )

◆ BrotliStoreHuffmanTree()

void BrotliStoreHuffmanTree ( const uint8_t * depths,
size_t num,
HuffmanTree * tree,
size_t * storage_ix,
uint8_t * storage )

◆ BrotliStoreMetaBlock()

void BrotliStoreMetaBlock ( MemoryManager * m,
const uint8_t * input,
size_t start_pos,
size_t length,
size_t mask,
uint8_t prev_byte,
uint8_t prev_byte2,
BROTLI_BOOL is_last,
const BrotliEncoderParams * params,
ContextType literal_context_mode,
const Command * commands,
size_t n_commands,
const MetaBlockSplit * mb,
size_t * storage_ix,
uint8_t * storage )

◆ BrotliStoreMetaBlockFast()

void BrotliStoreMetaBlockFast ( MemoryManager * m,
const uint8_t * input,
size_t start_pos,
size_t length,
size_t mask,
BROTLI_BOOL is_last,
const BrotliEncoderParams * params,
const Command * commands,
size_t n_commands,
size_t * storage_ix,
uint8_t * storage )

◆ BrotliStoreMetaBlockTrivial()

void BrotliStoreMetaBlockTrivial ( MemoryManager * m,
const uint8_t * input,
size_t start_pos,
size_t length,
size_t mask,
BROTLI_BOOL is_last,
const BrotliEncoderParams * params,
const Command * commands,
size_t n_commands,
size_t * storage_ix,
uint8_t * storage )

◆ BrotliStoreUncompressedMetaBlock()

void BrotliStoreUncompressedMetaBlock ( BROTLI_BOOL is_final_block,
const uint8_t *BROTLI_RESTRICT input,
size_t position,
size_t mask,
size_t len,
size_t *BROTLI_RESTRICT storage_ix,
uint8_t *BROTLI_RESTRICT storage )