summaryrefslogtreecommitdiffstats
path: root/modules/brotli/enc/literal_cost.h
diff options
context:
space:
mode:
Diffstat (limited to 'modules/brotli/enc/literal_cost.h')
-rw-r--r--modules/brotli/enc/literal_cost.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/modules/brotli/enc/literal_cost.h b/modules/brotli/enc/literal_cost.h
new file mode 100644
index 000000000..8f53f39d3
--- /dev/null
+++ b/modules/brotli/enc/literal_cost.h
@@ -0,0 +1,30 @@
+/* Copyright 2013 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Literal cost model to allow backward reference replacement to be efficient.
+*/
+
+#ifndef BROTLI_ENC_LITERAL_COST_H_
+#define BROTLI_ENC_LITERAL_COST_H_
+
+#include "../common/platform.h"
+#include <brotli/types.h>
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+/* Estimates how many bits the literals in the interval [pos, pos + len) in the
+ ring-buffer (data, mask) will take entropy coded and writes these estimates
+ to the cost[0..len) array. */
+BROTLI_INTERNAL void BrotliEstimateBitCostsForLiterals(
+ size_t pos, size_t len, size_t mask, const uint8_t* data, float* cost);
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
+
+#endif /* BROTLI_ENC_LITERAL_COST_H_ */