Parolin 0.7.9 6796
Console (soon DLLs) to do a tar like job
Loading...
Searching...
No Matches
shared_dictionary_internal.h
Go to the documentation of this file.
1/* Copyright 2017 Google Inc. All Rights Reserved.
2
3 Distributed under MIT license.
4 See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
5*/
6
7/* (Transparent) Shared Dictionary definition. */
8
9#ifndef BROTLI_COMMON_SHARED_DICTIONARY_INTERNAL_H_
10#define BROTLI_COMMON_SHARED_DICTIONARY_INTERNAL_H_
11
12#include <brotli/shared_dictionary.h>
13#include <brotli/types.h>
14
15#include "dictionary.h"
16#include "transform.h"
17
18#if defined(__cplusplus) || defined(c_plusplus)
19extern "C" {
20#endif
21
23 /* LZ77 prefixes (compound dictionary). */
24 uint32_t num_prefix; /* max SHARED_BROTLI_MAX_COMPOUND_DICTS */
27
28 /* If set, the context map is used to select word and transform list from 64
29 contexts, if not set, the context map is not used and only words[0] and
30 transforms[0] are to be used. */
32
34
35 /* Amount of word_list+transform_list combinations. */
36 uint8_t num_dictionaries;
37
38 /* Must use num_dictionaries values. */
40
41 /* Must use num_dictionaries values. */
43
44 /* Amount of custom word lists. May be 0 if only Brotli's built-in is used */
45 uint8_t num_word_lists;
46
47 /* Contents of the custom words lists. Must be NULL if num_word_lists is 0. */
49
50 /* Amount of custom transform lists. May be 0 if only Brotli's built-in is
51 used */
52 uint8_t num_transform_lists;
53
54 /* Contents of the custom transform lists. Must be NULL if num_transform_lists
55 is 0. */
57
58 /* Concatenated prefix_suffix_maps of the custom transform lists. Must be NULL
59 if num_transform_lists is 0. */
60 uint16_t* prefix_suffix_maps;
61
62 /* Memory management */
66};
67
69#define BrotliSharedDictionary BrotliSharedDictionaryInternal
70
71#if defined(__cplusplus) || defined(c_plusplus)
72} /* extern "C" */
73#endif
74
75#endif /* BROTLI_COMMON_SHARED_DICTIONARY_INTERNAL_H_ */
#define SHARED_BROTLI_NUM_DICTIONARY_CONTEXTS
Definition shared_dictionary.h:21
#define SHARED_BROTLI_MAX_COMPOUND_DICTS
Definition shared_dictionary.h:22
Definition dictionary.h:19
Definition shared_dictionary_internal.h:22
size_t prefix_size[SHARED_BROTLI_MAX_COMPOUND_DICTS]
Definition shared_dictionary_internal.h:25
const BrotliDictionary * words[SHARED_BROTLI_NUM_DICTIONARY_CONTEXTS]
Definition shared_dictionary_internal.h:39
uint32_t num_prefix
Definition shared_dictionary_internal.h:24
uint8_t num_word_lists
Definition shared_dictionary_internal.h:45
uint8_t num_dictionaries
Definition shared_dictionary_internal.h:36
const BrotliTransforms * transforms[SHARED_BROTLI_NUM_DICTIONARY_CONTEXTS]
Definition shared_dictionary_internal.h:42
uint8_t context_map[SHARED_BROTLI_NUM_DICTIONARY_CONTEXTS]
Definition shared_dictionary_internal.h:33
uint16_t * prefix_suffix_maps
Definition shared_dictionary_internal.h:60
BROTLI_BOOL context_based
Definition shared_dictionary_internal.h:31
void * memory_manager_opaque
Definition shared_dictionary_internal.h:65
BrotliDictionary * words_instances
Definition shared_dictionary_internal.h:48
brotli_free_func free_func
Definition shared_dictionary_internal.h:64
const uint8_t * prefix[SHARED_BROTLI_MAX_COMPOUND_DICTS]
Definition shared_dictionary_internal.h:26
brotli_alloc_func alloc_func
Definition shared_dictionary_internal.h:63
uint8_t num_transform_lists
Definition shared_dictionary_internal.h:52
BrotliTransforms * transforms_instances
Definition shared_dictionary_internal.h:56
Definition transform.h:47
void *(* brotli_alloc_func)(void *opaque, size_t size)
Definition types.h:71
void(* brotli_free_func)(void *opaque, void *address)
Definition types.h:81
#define BROTLI_BOOL
Definition types.h:49