xref: /freebsd/contrib/xz/src/liblzma/common/easy_preset.h (revision 40a8ac8f62b535d30349faf28cf47106b7041b83)
1 ///////////////////////////////////////////////////////////////////////////////
2 //
3 /// \file       easy_preset.h
4 /// \brief      Preset handling for easy encoder and decoder
5 //
6 //  Author:     Lasse Collin
7 //
8 //  This file has been put into the public domain.
9 //  You can do whatever you want with this file.
10 //
11 ///////////////////////////////////////////////////////////////////////////////
12 
13 #include "common.h"
14 
15 
16 typedef struct {
17 	/// We need to keep the filters array available in case
18 	/// LZMA_FULL_FLUSH is used.
19 	lzma_filter filters[LZMA_FILTERS_MAX + 1];
20 
21 	/// Options for LZMA2
22 	lzma_options_lzma opt_lzma;
23 
24 	// Options for more filters can be added later, so this struct
25 	// is not ready to be put into the public API.
26 
27 } lzma_options_easy;
28 
29 
30 /// Set *easy to the settings given by the preset. Returns true on error,
31 /// false on success.
32 extern bool lzma_easy_preset(lzma_options_easy *easy, uint32_t preset);
33