summaryrefslogtreecommitdiffstats
path: root/modules/brotli/enc/params.h
diff options
context:
space:
mode:
Diffstat (limited to 'modules/brotli/enc/params.h')
-rw-r--r--modules/brotli/enc/params.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/modules/brotli/enc/params.h b/modules/brotli/enc/params.h
new file mode 100644
index 000000000..6ecf1d3f9
--- /dev/null
+++ b/modules/brotli/enc/params.h
@@ -0,0 +1,44 @@
+/* Copyright 2017 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Parameters for the Brotli encoder with chosen quality levels. */
+
+#ifndef BROTLI_ENC_PARAMS_H_
+#define BROTLI_ENC_PARAMS_H_
+
+#include <brotli/encode.h>
+#include "./encoder_dict.h"
+
+typedef struct BrotliHasherParams {
+ int type;
+ int bucket_bits;
+ int block_bits;
+ int hash_len;
+ int num_last_distances_to_check;
+} BrotliHasherParams;
+
+typedef struct BrotliDistanceParams {
+ uint32_t distance_postfix_bits;
+ uint32_t num_direct_distance_codes;
+ uint32_t alphabet_size;
+ size_t max_distance;
+} BrotliDistanceParams;
+
+/* Encoding parameters */
+typedef struct BrotliEncoderParams {
+ BrotliEncoderMode mode;
+ int quality;
+ int lgwin;
+ int lgblock;
+ size_t size_hint;
+ BROTLI_BOOL disable_literal_context_modeling;
+ BROTLI_BOOL large_window;
+ BrotliHasherParams hasher;
+ BrotliDistanceParams dist;
+ BrotliEncoderDictionary dictionary;
+} BrotliEncoderParams;
+
+#endif /* BROTLI_ENC_PARAMS_H_ */