<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>Atlas-C++: Bzip2.h Source File</title> <link href="tabs.css" rel="stylesheet" type="text/css"> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.9 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li><a href="annotated.html"><span>Classes</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="files.html"><span>File List</span></a></li> </ul> </div> <h1>Bzip2.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// This file may be redistributed and modified only under the terms of</span> <a name="l00002"></a>00002 <span class="comment">// the GNU Lesser General Public License (See COPYING for details).</span> <a name="l00003"></a>00003 <span class="comment">// Copyright (C) 2000 Stefanus Du Toit, Dmitry Derevyanko</span> <a name="l00004"></a>00004 <a name="l00005"></a>00005 <span class="preprocessor">#ifndef ATLAS_FILTERS_BZIP2_H</span> <a name="l00006"></a>00006 <span class="preprocessor"></span><span class="preprocessor">#define ATLAS_FILTERS_BZIP2_H</span> <a name="l00007"></a>00007 <span class="preprocessor"></span> <a name="l00008"></a>00008 <span class="preprocessor">#include <Atlas/Filter.h></span> <a name="l00009"></a>00009 <a name="l00010"></a>00010 <span class="comment">// my version of bzlib.h does not have extern "C" in the header file,</span> <a name="l00011"></a>00011 <span class="comment">// like it should</span> <a name="l00012"></a>00012 <span class="comment">// dmitryd 05/08/200</span> <a name="l00013"></a>00013 <span class="keyword">extern</span> <span class="stringliteral">"C"</span> { <a name="l00014"></a>00014 <span class="preprocessor">#include <bzlib.h></span> <a name="l00015"></a>00015 } <a name="l00016"></a>00016 <a name="l00017"></a>00017 <span class="keyword">namespace </span>Atlas { <span class="keyword">namespace </span>Filters { <a name="l00018"></a>00018 <a name="l00019"></a>00019 <span class="keyword">class </span>Bzip2 : <span class="keyword">public</span> Filter <a name="l00020"></a>00020 { <a name="l00021"></a>00021 bz_stream incoming; <a name="l00022"></a>00022 bz_stream outgoing; <a name="l00023"></a>00023 <span class="keywordtype">char</span> buf[4096]; <a name="l00024"></a>00024 <a name="l00025"></a>00025 <span class="keyword">public</span>: <a name="l00026"></a>00026 <a name="l00027"></a>00027 <span class="keyword">virtual</span> <span class="keywordtype">void</span> begin(); <a name="l00028"></a>00028 <span class="keyword">virtual</span> <span class="keywordtype">void</span> end(); <a name="l00029"></a>00029 <a name="l00030"></a>00030 <span class="keyword">virtual</span> std::string encode(<span class="keyword">const</span> std::string&); <a name="l00031"></a>00031 <span class="keyword">virtual</span> std::string decode(<span class="keyword">const</span> std::string&); <a name="l00032"></a>00032 }; <a name="l00033"></a>00033 <a name="l00034"></a>00034 } } <span class="comment">// namespace Atlas::Filters</span> <a name="l00035"></a>00035 <a name="l00036"></a>00036 <span class="preprocessor">#endif // ATLAS_FILTERS_BZIP2_H</span> </pre></div></div> <HR> <P>Copyright 2000-2004 the respective authors.</P> <P>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.</P>