1/* Copyright 2013 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/* Literal cost model to allow backward reference replacement to be efficient.
8*/
9
10#ifndef BROTLI_ENC_LITERAL_COST_H_
11#define BROTLI_ENC_LITERAL_COST_H_
12
13#include "../common/platform.h"
14#include <brotli/types.h>
15
16#if defined(__cplusplus) || defined(c_plusplus)
17extern "C" {
18#endif
19
20/* Estimates how many bits the literals in the interval [pos, pos + len) in the
21 ring-buffer (data, mask) will take entropy coded and writes these estimates
22 to the cost[0..len) array. */
23BROTLI_INTERNAL void BrotliEstimateBitCostsForLiterals(
24 size_t pos, size_t len, size_t mask, const uint8_t* data, float* cost);
25
26#if defined(__cplusplus) || defined(c_plusplus)
27} /* extern "C" */
28#endif
29
30#endif /* BROTLI_ENC_LITERAL_COST_H_ */
31