Atlas-C++
Bzip2.h
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 // $Id$
00006 
00007 #ifndef ATLAS_FILTERS_BZIP2_H
00008 #define ATLAS_FILTERS_BZIP2_H
00009 
00010 #include <Atlas/Filter.h>
00011 
00012 // my version of bzlib.h does not have extern "C" in the header file,
00013 // like it should
00014 // dmitryd 05/08/200
00015 extern "C" {
00016 #include <bzlib.h>
00017 }
00018 
00019 namespace Atlas { namespace Filters {
00020 
00021 class Bzip2 : public Filter
00022 {
00023     bz_stream incoming;
00024     bz_stream outgoing;
00025     char buf[4096];
00026 
00027     public:
00028 
00029     virtual void begin();
00030     virtual void end();
00031     
00032     virtual std::string encode(const std::string&);
00033     virtual std::string decode(const std::string&);
00034 };
00035 
00036 } } // namespace Atlas::Filters
00037 
00038 #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.