#include <limits.h>
#include <pthread.h>
-#define LZMS_OPTIM_ARRAY_SIZE 1024
-
struct lzms_compressor;
struct lzms_adaptive_state {
struct lzms_lz_lru_queues lru;
* - The costs of literals and matches are estimated using the range encoder
* states and the semi-adaptive Huffman codes. Except for range encoding
* states, costs are assumed to be constant throughout a single run of the
- * parsing algorithm, which can parse up to LZMS_OPTIM_ARRAY_SIZE bytes of
- * data. This introduces a source of inaccuracy because the probabilities and
- * Huffman codes can change over this part of the data.
+ * parsing algorithm, which can parse up to @optim_array_length (from the
+ * `struct wimlib_lzms_compressor_params') bytes of data. This introduces a
+ * source of inaccuracy because the probabilities and Huffman codes can change
+ * over this part of the data.
*/
static void
lzms_encode(struct lzms_compressor *ctx)
}
static const struct wimlib_lzms_compressor_params lzms_default = {
- .hdr = sizeof(struct wimlib_lzms_compressor_params),
+ .hdr = {
+ .size = sizeof(struct wimlib_lzms_compressor_params),
+ },
.min_match_length = 2,
.max_match_length = UINT32_MAX,
.nice_match_length = 32,