1 /* 2 * Copyright (c) Yann Collet, Facebook, Inc. 3 * All rights reserved. 4 * 5 * This source code is licensed under both the BSD-style license (found in the 6 * LICENSE file in the root directory of this source tree) and the GPLv2 (found 7 * in the COPYING file in the root directory of this source tree). 8 * You may select, at your option, one of the above-listed licenses. 9 */ 10 11 /* This library is designed for a single-threaded console application. 12 * It exit() and printf() into stderr when it encounters an error condition. */ 13 14 #ifndef DIBIO_H_003 15 #define DIBIO_H_003 16 17 18 /*-************************************* 19 * Dependencies 20 ***************************************/ 21 #define ZDICT_STATIC_LINKING_ONLY 22 #include "../lib/zdict.h" /* ZDICT_params_t */ 23 24 25 /*-************************************* 26 * Public functions 27 ***************************************/ 28 /*! DiB_trainFromFiles() : 29 Train a dictionary from a set of files provided by `fileNamesTable`. 30 Resulting dictionary is written into file `dictFileName`. 31 `parameters` is optional and can be provided with values set to 0, meaning "default". 32 @return : 0 == ok. Any other : error. 33 */ 34 int DiB_trainFromFiles(const char* dictFileName, size_t maxDictSize, 35 const char** fileNamesTable, int nbFiles, size_t chunkSize, 36 ZDICT_legacy_params_t* params, ZDICT_cover_params_t* coverParams, 37 ZDICT_fastCover_params_t* fastCoverParams, int optimize, unsigned memLimit); 38 39 #endif 40