1207753Smm/////////////////////////////////////////////////////////////////////////////// 2207753Smm// 3207753Smm/// \file lzma2_encoder.h 4207753Smm/// \brief LZMA2 encoder 5207753Smm/// 6207753Smm// Authors: Igor Pavlov 7207753Smm// Lasse Collin 8207753Smm// 9207753Smm// This file has been put into the public domain. 10207753Smm// You can do whatever you want with this file. 11207753Smm// 12207753Smm/////////////////////////////////////////////////////////////////////////////// 13207753Smm 14207753Smm#ifndef LZMA_LZMA2_ENCODER_H 15207753Smm#define LZMA_LZMA2_ENCODER_H 16207753Smm 17207753Smm#include "common.h" 18207753Smm 19207753Smm 20207753Smm/// Maximum number of bytes of actual data per chunk (no headers) 21207753Smm#define LZMA2_CHUNK_MAX (UINT32_C(1) << 16) 22207753Smm 23207753Smm/// Maximum uncompressed size of LZMA chunk (no headers) 24207753Smm#define LZMA2_UNCOMPRESSED_MAX (UINT32_C(1) << 21) 25207753Smm 26207753Smm/// Maximum size of LZMA2 headers 27207753Smm#define LZMA2_HEADER_MAX 6 28207753Smm 29207753Smm/// Size of a header for uncompressed chunk 30207753Smm#define LZMA2_HEADER_UNCOMPRESSED 3 31207753Smm 32207753Smm 33207753Smmextern lzma_ret lzma_lzma2_encoder_init( 34207753Smm lzma_next_coder *next, lzma_allocator *allocator, 35207753Smm const lzma_filter_info *filters); 36207753Smm 37207753Smmextern uint64_t lzma_lzma2_encoder_memusage(const void *options); 38207753Smm 39207753Smmextern lzma_ret lzma_lzma2_props_encode(const void *options, uint8_t *out); 40207753Smm 41207753Smm#endif 42