14 #ifndef LZMA_LZMA_ENCODER_PRIVATE_H
15 #define LZMA_LZMA_ENCODER_PRIVATE_H
27 #ifdef TUKLIB_FAST_UNALIGNED_ACCESS
28 # define not_equal_16(a, b) (read16ne(a) != read16ne(b))
30 # define not_equal_16(a, b) \
31 ((a)[0] != (b)[0] || (a)[1] != (b)[1])
36 #define OPTS (1 << 12)
LZ in window and match finder API.
Private definitions common to LZMA encoder and decoder.
#define LITERAL_CODER_SIZE
#define STATES
Total number of states.
#define LITERAL_CODERS_MAX
Maximum number of literal coders.
void lzma_lzma_optimum_normal(lzma_lzma1_encoder *restrict coder, lzma_mf *restrict mf, uint32_t *restrict back_res, uint32_t *restrict len_res, uint32_t position)
void lzma_lzma_optimum_fast(lzma_lzma1_encoder *restrict coder, lzma_mf *restrict mf, uint32_t *restrict back_res, uint32_t *restrict len_res)
uint16_t probability
Type of probabilities used with range coder.
uint32_t reps[REPS]
The four most recent match distances.
uint32_t match_price_count
lzma_match matches[MATCH_LEN_MAX+1]
Array of match candidates.
probability literal[LITERAL_CODERS_MAX][LITERAL_CODER_SIZE]
probability is_rep0_long[STATES][POS_STATES_MAX]
uint32_t align_price_count
probability is_rep1[STATES]
uint32_t pos_mask
(1 << pos_bits) - 1
lzma_range_encoder rc
Range encoder.
probability is_rep0[STATES]
bool fast_mode
True if using getoptimumfast.
probability is_rep2[STATES]
uint32_t longest_match_length
probability dist_special[FULL_DISTANCES - DIST_MODEL_END]
uint32_t literal_context_bits
uint32_t align_prices[ALIGN_SIZE]
probability is_rep[STATES]
lzma_length_encoder match_len_encoder
uint32_t dist_prices[DIST_STATES][FULL_DISTANCES]
uint32_t opts_current_index
uint32_t literal_pos_mask
probability dist_slot[DIST_STATES][DIST_SLOTS]
lzma_lzma_state state
State.
uint32_t dist_slot_prices[DIST_STATES][DIST_SLOTS]
uint32_t matches_count
Number of match candidates in matches[].
probability dist_align[ALIGN_SIZE]
probability is_match[STATES][POS_STATES_MAX]
lzma_length_encoder rep_len_encoder