]> git.proxmox.com Git - mirror_edk2.git/blame - BaseTools/Source/C/BrotliCompress/enc/params.h
MdeModulePkg/BrotliCustomDecompressLib: Make brotli a submodule
[mirror_edk2.git] / BaseTools / Source / C / BrotliCompress / enc / params.h
CommitLineData
dd4f667e
LG
1/* Copyright 2017 Google Inc. All Rights Reserved.\r
2\r
3 Distributed under MIT license.\r
4 See file LICENSE for detail or copy at https://opensource.org/licenses/MIT\r
5*/\r
6\r
7/* Parameters for the Brotli encoder with chosen quality levels. */\r
8\r
9#ifndef BROTLI_ENC_PARAMS_H_\r
10#define BROTLI_ENC_PARAMS_H_\r
11\r
12#include <brotli/encode.h>\r
13#include "./encoder_dict.h"\r
14\r
15typedef struct BrotliHasherParams {\r
16 int type;\r
17 int bucket_bits;\r
18 int block_bits;\r
19 int hash_len;\r
20 int num_last_distances_to_check;\r
21} BrotliHasherParams;\r
22\r
23typedef struct BrotliDistanceParams {\r
24 uint32_t distance_postfix_bits;\r
25 uint32_t num_direct_distance_codes;\r
26 uint32_t alphabet_size;\r
27 size_t max_distance;\r
28} BrotliDistanceParams;\r
29\r
30/* Encoding parameters */\r
31typedef struct BrotliEncoderParams {\r
32 BrotliEncoderMode mode;\r
33 int quality;\r
34 int lgwin;\r
35 int lgblock;\r
36 size_t size_hint;\r
37 BROTLI_BOOL disable_literal_context_modeling;\r
38 BROTLI_BOOL large_window;\r
39 BrotliHasherParams hasher;\r
40 BrotliDistanceParams dist;\r
41 BrotliEncoderDictionary dictionary;\r
42} BrotliEncoderParams;\r
43\r
44#endif /* BROTLI_ENC_PARAMS_H_ */\r