(root)/
xz-5.4.5/
src/
liblzma/
lzma/
lzma2_encoder.h
       1  ///////////////////////////////////////////////////////////////////////////////
       2  //
       3  /// \file       lzma2_encoder.h
       4  /// \brief      LZMA2 encoder
       5  ///
       6  //  Authors:    Igor Pavlov
       7  //              Lasse Collin
       8  //
       9  //  This file has been put into the public domain.
      10  //  You can do whatever you want with this file.
      11  //
      12  ///////////////////////////////////////////////////////////////////////////////
      13  
      14  #ifndef LZMA_LZMA2_ENCODER_H
      15  #define LZMA_LZMA2_ENCODER_H
      16  
      17  #include "common.h"
      18  
      19  
      20  /// Maximum number of bytes of actual data per chunk (no headers)
      21  #define LZMA2_CHUNK_MAX (UINT32_C(1) << 16)
      22  
      23  /// Maximum uncompressed size of LZMA chunk (no headers)
      24  #define LZMA2_UNCOMPRESSED_MAX (UINT32_C(1) << 21)
      25  
      26  /// Maximum size of LZMA2 headers
      27  #define LZMA2_HEADER_MAX 6
      28  
      29  /// Size of a header for uncompressed chunk
      30  #define LZMA2_HEADER_UNCOMPRESSED 3
      31  
      32  
      33  extern lzma_ret lzma_lzma2_encoder_init(
      34  		lzma_next_coder *next, const lzma_allocator *allocator,
      35  		const lzma_filter_info *filters);
      36  
      37  extern uint64_t lzma_lzma2_encoder_memusage(const void *options);
      38  
      39  extern lzma_ret lzma_lzma2_props_encode(const void *options, uint8_t *out);
      40  
      41  extern uint64_t lzma_lzma2_block_size(const void *options);
      42  
      43  #endif