1 /* ScummVM Tools 2 * 3 * ScummVM Tools is the legal property of its developers, whose 4 * names are too numerous to list here. Please refer to the 5 * COPYRIGHT file distributed with this source distribution. 6 * 7 * This program is free software; you can redistribute it and/or 8 * modify it under the terms of the GNU General Public License 9 * as published by the Free Software Foundation; either version 2 10 * of the License, or (at your option) any later version. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with this program; if not, write to the Free Software 19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 20 */ 21 22 /* Compress Bud Tucker Sound Data Files */ 23 24 #ifndef COMPRESS_TUCKER_H 25 #define COMPRESS_TUCKER_H 26 27 #include "compress.h" 28 29 class CompressTucker : public CompressionTool { 30 public: 31 CompressTucker(const std::string &name = "compress_tucker"); 32 33 virtual void execute(); 34 35 protected: 36 37 int append_compress_file(Common::File &output); 38 int compress_file_wav(Common::File &input, Common::File &output); 39 int compress_file_raw(const char *input, bool is16, Common::File &output); 40 uint32 compress_sounds_directory(const Common::Filename *inpath, const Common::Filename *outpath, Common::File &output, const struct SoundDirectory *dir); 41 uint32 compress_audio_directory(const Common::Filename *inpath, const Common::Filename *outpath, Common::File &output); 42 void compress_sound_data(Common::Filename *inpath, Common::Filename *outpath); 43 void compress_sound_files(const Common::Filename *inpath, const Common::Filename *outpath); 44 }; 45 46 #endif 47