1*3b35e7eeSXin LI // SPDX-License-Identifier: 0BSD 2*3b35e7eeSXin LI 381ad8388SMartin Matuska /////////////////////////////////////////////////////////////////////////////// 481ad8388SMartin Matuska // 581ad8388SMartin Matuska /// \file easy_preset.h 681ad8388SMartin Matuska /// \brief Preset handling for easy encoder and decoder 781ad8388SMartin Matuska // 881ad8388SMartin Matuska // Author: Lasse Collin 981ad8388SMartin Matuska // 1081ad8388SMartin Matuska /////////////////////////////////////////////////////////////////////////////// 1181ad8388SMartin Matuska 12*3b35e7eeSXin LI #ifndef LZMA_EASY_PRESET_H 13*3b35e7eeSXin LI #define LZMA_EASY_PRESET_H 14*3b35e7eeSXin LI 1581ad8388SMartin Matuska #include "common.h" 1681ad8388SMartin Matuska 1781ad8388SMartin Matuska 1881ad8388SMartin Matuska typedef struct { 1981ad8388SMartin Matuska /// We need to keep the filters array available in case 2081ad8388SMartin Matuska /// LZMA_FULL_FLUSH is used. 2181ad8388SMartin Matuska lzma_filter filters[LZMA_FILTERS_MAX + 1]; 2281ad8388SMartin Matuska 2381ad8388SMartin Matuska /// Options for LZMA2 2481ad8388SMartin Matuska lzma_options_lzma opt_lzma; 2581ad8388SMartin Matuska 2681ad8388SMartin Matuska // Options for more filters can be added later, so this struct 2781ad8388SMartin Matuska // is not ready to be put into the public API. 2881ad8388SMartin Matuska 2981ad8388SMartin Matuska } lzma_options_easy; 3081ad8388SMartin Matuska 3181ad8388SMartin Matuska 3281ad8388SMartin Matuska /// Set *easy to the settings given by the preset. Returns true on error, 3381ad8388SMartin Matuska /// false on success. 3481ad8388SMartin Matuska extern bool lzma_easy_preset(lzma_options_easy *easy, uint32_t preset); 35*3b35e7eeSXin LI 36*3b35e7eeSXin LI #endif 37