<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;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.7.4 --> <div id="top"> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">Atlas-C++</div> </td> </tr> </tbody> </table> </div> <div id="navrow1" class="tabs"> <ul class="tablist"> <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 id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="files.html"><span>File List</span></a></li> </ul> </div> <div class="header"> <div class="headertitle"> <div class="title">Bzip2.h</div> </div> </div> <div class="contents"> <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="comment">// $Id$</span> <a name="l00006"></a>00006 <a name="l00007"></a>00007 <span class="preprocessor">#ifndef ATLAS_FILTERS_BZIP2_H</span> <a name="l00008"></a>00008 <span class="preprocessor"></span><span class="preprocessor">#define ATLAS_FILTERS_BZIP2_H</span> <a name="l00009"></a>00009 <span class="preprocessor"></span> <a name="l00010"></a>00010 <span class="preprocessor">#include <Atlas/Filter.h></span> <a name="l00011"></a>00011 <a name="l00012"></a>00012 <span class="comment">// my version of bzlib.h does not have extern "C" in the header file,</span> <a name="l00013"></a>00013 <span class="comment">// like it should</span> <a name="l00014"></a>00014 <span class="comment">// dmitryd 05/08/200</span> <a name="l00015"></a>00015 <span class="keyword">extern</span> <span class="stringliteral">"C"</span> { <a name="l00016"></a>00016 <span class="preprocessor">#include <bzlib.h></span> <a name="l00017"></a>00017 } <a name="l00018"></a>00018 <a name="l00019"></a>00019 <span class="keyword">namespace </span>Atlas { <span class="keyword">namespace </span>Filters { <a name="l00020"></a>00020 <a name="l00021"></a><a class="code" href="class_atlas_1_1_filters_1_1_bzip2.html">00021</a> <span class="keyword">class </span><a class="code" href="class_atlas_1_1_filters_1_1_bzip2.html">Bzip2</a> : <span class="keyword">public</span> <a class="code" href="class_atlas_1_1_filter.html" title="Atlas stream filter.">Filter</a> <a name="l00022"></a>00022 { <a name="l00023"></a>00023 bz_stream incoming; <a name="l00024"></a>00024 bz_stream outgoing; <a name="l00025"></a>00025 <span class="keywordtype">char</span> buf[4096]; <a name="l00026"></a>00026 <a name="l00027"></a>00027 <span class="keyword">public</span>: <a name="l00028"></a>00028 <a name="l00029"></a>00029 <span class="keyword">virtual</span> <span class="keywordtype">void</span> begin(); <a name="l00030"></a>00030 <span class="keyword">virtual</span> <span class="keywordtype">void</span> end(); <a name="l00031"></a>00031 <a name="l00032"></a>00032 <span class="keyword">virtual</span> std::string encode(<span class="keyword">const</span> std::string&); <a name="l00033"></a>00033 <span class="keyword">virtual</span> std::string decode(<span class="keyword">const</span> std::string&); <a name="l00034"></a>00034 }; <a name="l00035"></a>00035 <a name="l00036"></a>00036 } } <span class="comment">// namespace Atlas::Filters</span> <a name="l00037"></a>00037 <a name="l00038"></a>00038 <span class="preprocessor">#endif // ATLAS_FILTERS_BZIP2_H</span> </pre></div></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>