00001 // This file may be redistributed and modified only under the terms of 00002 // the GNU Lesser General Public License (See COPYING for details). 00003 // Copyright (C) 2000 Stefanus Du Toit, Dmitry Derevyanko 00004 00005 #ifndef ATLAS_FILTERS_BZIP2_H 00006 #define ATLAS_FILTERS_BZIP2_H 00007 00008 #include <Atlas/Filter.h> 00009 00010 // my version of bzlib.h does not have extern "C" in the header file, 00011 // like it should 00012 // dmitryd 05/08/200 00013 extern "C" { 00014 #include <bzlib.h> 00015 } 00016 00017 namespace Atlas { namespace Filters { 00018 00019 class Bzip2 : public Filter 00020 { 00021 bz_stream incoming; 00022 bz_stream outgoing; 00023 char buf[4096]; 00024 00025 public: 00026 00027 virtual void begin(); 00028 virtual void end(); 00029 00030 virtual std::string encode(const std::string&); 00031 virtual std::string decode(const std::string&); 00032 }; 00033 00034 } } // namespace Atlas::Filters 00035 00036 #endif // ATLAS_FILTERS_BZIP2_H
Copyright 2000-2004 the respective authors.
This document can be licensed under the terms of the GNU Free Documentation License or the GNU General Public License and may be freely distributed under the terms given by one of these licenses.