Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(722)

Side by Side Diff: third_party/brotli/dec/huffman.h

Issue 2537133002: Update brotli to v1.0.0-snapshot. (Closed)
Patch Set: Fixed typo Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « third_party/brotli/dec/dictionary.c ('k') | third_party/brotli/dec/huffman.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* Copyright 2013 Google Inc. All Rights Reserved. 1 /* Copyright 2013 Google Inc. All Rights Reserved.
2 2
3 Distributed under MIT license. 3 Distributed under MIT license.
4 See file LICENSE for detail or copy at https://opensource.org/licenses/MIT 4 See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
5 */ 5 */
6 6
7 /* Utilities for building Huffman decoding tables. */ 7 /* Utilities for building Huffman decoding tables. */
8 8
9 #ifndef BROTLI_DEC_HUFFMAN_H_ 9 #ifndef BROTLI_DEC_HUFFMAN_H_
10 #define BROTLI_DEC_HUFFMAN_H_ 10 #define BROTLI_DEC_HUFFMAN_H_
11 11
12 #include "./types.h" 12 #include <brotli/types.h>
13 #include "./port.h" 13 #include "./port.h"
14 14
15 #if defined(__cplusplus) || defined(c_plusplus) 15 #if defined(__cplusplus) || defined(c_plusplus)
16 extern "C" { 16 extern "C" {
17 #endif 17 #endif
18 18
19 #define BROTLI_HUFFMAN_MAX_CODE_LENGTH 15 19 #define BROTLI_HUFFMAN_MAX_CODE_LENGTH 15
20 20
21 /* For current format this constant equals to kNumInsertAndCopyCodes */
22 #define BROTLI_HUFFMAN_MAX_CODE_LENGTHS_SIZE 704
23
24 /* Maximum possible Huffman table size for an alphabet size of (index * 32), 21 /* Maximum possible Huffman table size for an alphabet size of (index * 32),
25 * max code length 15 and root table bits 8. */ 22 * max code length 15 and root table bits 8. */
26 static const uint16_t kMaxHuffmanTableSize[] = { 23 static const uint16_t kMaxHuffmanTableSize[] = {
27 256, 402, 436, 468, 500, 534, 566, 598, 630, 662, 694, 726, 758, 790, 822, 24 256, 402, 436, 468, 500, 534, 566, 598, 630, 662, 694, 726, 758, 790, 822,
28 854, 886, 920, 952, 984, 1016, 1048, 1080}; 25 854, 886, 920, 952, 984, 1016, 1048, 1080};
26 /* BROTLI_NUM_BLOCK_LEN_SYMBOLS == 26 */
29 #define BROTLI_HUFFMAN_MAX_SIZE_26 396 27 #define BROTLI_HUFFMAN_MAX_SIZE_26 396
28 /* BROTLI_MAX_BLOCK_TYPE_SYMBOLS == 258 */
30 #define BROTLI_HUFFMAN_MAX_SIZE_258 632 29 #define BROTLI_HUFFMAN_MAX_SIZE_258 632
30 /* BROTLI_MAX_CONTEXT_MAP_SYMBOLS == 272 */
31 #define BROTLI_HUFFMAN_MAX_SIZE_272 646 31 #define BROTLI_HUFFMAN_MAX_SIZE_272 646
32 32
33 #define BROTLI_HUFFMAN_MAX_CODE_LENGTH_CODE_LENGTH 5 33 #define BROTLI_HUFFMAN_MAX_CODE_LENGTH_CODE_LENGTH 5
34 34
35 typedef struct { 35 typedef struct {
36 uint8_t bits; /* number of bits used for this symbol */ 36 uint8_t bits; /* number of bits used for this symbol */
37 uint16_t value; /* symbol value or table offset */ 37 uint16_t value; /* symbol value or table offset */
38 } HuffmanCode; 38 } HuffmanCode;
39 39
40 /* Builds Huffman lookup table assuming code lengths are in symbol order. */ 40 /* Builds Huffman lookup table assuming code lengths are in symbol order. */
(...skipping 18 matching lines...) Expand all
59 HuffmanCode* codes; 59 HuffmanCode* codes;
60 uint16_t alphabet_size; 60 uint16_t alphabet_size;
61 uint16_t num_htrees; 61 uint16_t num_htrees;
62 } HuffmanTreeGroup; 62 } HuffmanTreeGroup;
63 63
64 #if defined(__cplusplus) || defined(c_plusplus) 64 #if defined(__cplusplus) || defined(c_plusplus)
65 } /* extern "C" */ 65 } /* extern "C" */
66 #endif 66 #endif
67 67
68 #endif /* BROTLI_DEC_HUFFMAN_H_ */ 68 #endif /* BROTLI_DEC_HUFFMAN_H_ */
OLDNEW
« no previous file with comments | « third_party/brotli/dec/dictionary.c ('k') | third_party/brotli/dec/huffman.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698