1 /* -*- Mode: C++; c-basic-offset: 2; tab-width: 2; indent-tabs-mode: nil -*- 2 * 3 * Quadra, an action puzzle game 4 * Copyright (C) 1998-2000 Ludus Design 5 * 6 * This program is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Lesser General Public 8 * License as published by the Free Software Foundation; either 9 * version 2.1 of the License, or (at your option) any later version. 10 * 11 * This program is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public 17 * License along with this library; if not, write to the Free Software 18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 19 */ 20 21 #ifndef _HEADER_RES_COMPRESS 22 #define _HEADER_RES_COMPRESS 23 24 #include "res.h" 25 26 class Res_compress: public Res_mem { 27 Res_mode mode; 28 Res *res; 29 Res_dos *res_dos; 30 mutable Dword ressize; 31 mutable Dword write_pos; 32 void read_uncompress(); 33 public: 34 void write_compress(); 35 bool exist; 36 Res_compress(const char *fil, Res_mode pmode=RES_READ, bool res_doze=false); 37 virtual ~Res_compress(); 38 virtual void write(const void *b, int nb); 39 virtual Dword size(); 40 }; 41 42 #endif 43