Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 1f9eb832ba1e4b88d9a5c2b384813bb4 > files > 5176

kdelibs3-apidocs-3.5.10-31.fc15.noarch.rpm

<?xml version="1.0" encoding="UTF-8"?>
<!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" lang="en_US" xml:lang="en_US">

<head>
  <title>kio/kio: KFilterDev Class Reference (kio/kio)</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

  <meta http-equiv="Content-Style-Type" content="text/css" />

  <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" comment "ICRAonline DE v2.0" l gen true for "http://www.kde.org"  r (nz 1 vz 1 lz 1 oz 1 cb 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://www.kde.org"  r (n 0 s 0 v 0 l 0))' />

  <meta name="trademark" content="KDE e.V." />
  <meta name="description" content="K Desktop Environment Homepage, KDE.org" />
  <meta name="MSSmartTagsPreventParsing" content="true" />
  <meta name="robots" content="all" />

  <link rel="shortcut icon" href="../../../favicon.ico" />

<link rel="stylesheet" media="screen" type="text/css" title="APIDOX" href="doxygen.css" />



</head>

<body>

<div id="nav_header_top" align="right">
  <a href="#content" class="doNotDisplay" accesskey="2">Skip to main content ::</a>

  <a href="../../.."><img id="nav_header_logo" alt="Home" align="left" src="../../../kde_gear_64.png" border="0" /></a>
  <span class="doNotDisplay">::</span>

  <div id="nav_header_title" align="left">KDE API Reference</div>


</div>

<div id="nav_header_bottom" align="right">
  <span class="doNotDisplay">:: <a href="#navigation" accesskey="5">Skip to Link Menu</a><br/></span>
  <div id="nav_header_bottom_right" style="text-align: left;">
/ <a href="../../..">API Reference</a>
 / <a href="../../html/index.html">kio</a> / <a href=".">kio</a>
  </div>
</div>


<table id="main" border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
      <td valign="top" class="menuheader" height="0"></td>

  <td id="contentcolumn" valign="top" rowspan="2" >
    <div id="content" style="padding-top: 0px;"><div style="width:100%; margin: 0px; padding: 0px;">
    <a name="content"></a>


<!-- Generated by Doxygen 1.7.4 -->
</div>
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">KFilterDev Class Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="KFilterDev" --><!-- doxytag: inherits="QIODevice" -->
<p>A class for reading and writing compressed data onto a device (e.g.  
 <a href="classKFilterDev.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="kfilterdev_8h_source.html">kfilterdev.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for KFilterDev:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classKFilterDev.png" usemap="#KFilterDev_map" alt=""/>
  <map id="KFilterDev_map" name="KFilterDev_map">
<area href="qiodevice.html" alt="QIODevice" shape="rect" coords="0,0,75,24"/>
</map>
 </div></div>

<p><a href="classKFilterDev-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFilterDev.html#aab24827abc4d813c222af3a4fc46fe91">KFilterDev</a> (<a class="el" href="classKFilterBase.html">KFilterBase</a> *filter, bool autoDeleteFilterBase=false)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFilterDev.html#adae6c39a80f3aad6b8387a8c3c2bedd5">~KFilterDev</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFilterDev.html#a76477d8188e2c503596085563592b268">open</a> (int <a class="elRef" href="qiodevice.html#mode">mode</a>)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFilterDev.html#aa1400ff3a0888e986cd677f5f4f8f59a">close</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa7becb3962a737532c7616ea4b3a8d07"></a><!-- doxytag: member="KFilterDev::flush" ref="aa7becb3962a737532c7616ea4b3a8d07" args="()" -->
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>flush</b> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFilterDev.html#ac48b10dd86024843e29b1ae263d4a457">setOrigFileName</a> (const <a class="elRef" href="qcstring.html">QCString</a> &amp;fileName)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFilterDev.html#ad4d43dc1c8ceae1159723b624cc4f4f3">setSkipHeaders</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af4d3d30bb47b4bd15ad144ccd5f49d36"></a><!-- doxytag: member="KFilterDev::size" ref="af4d3d30bb47b4bd15ad144ccd5f49d36" args="() const " -->
virtual <a class="elRef" href="qiodevice.html#Offset">QIODevice::Offset</a>&#160;</td><td class="memItemRight" valign="bottom"><b>size</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac99c129ef3fa1a28c25a6fcc769e93e4"></a><!-- doxytag: member="KFilterDev::at" ref="ac99c129ef3fa1a28c25a6fcc769e93e4" args="() const " -->
virtual <a class="elRef" href="qiodevice.html#Offset">QIODevice::Offset</a>&#160;</td><td class="memItemRight" valign="bottom"><b>at</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFilterDev.html#ac89bb389d5cdd11cab148e041b4ebcd8">at</a> (<a class="elRef" href="qiodevice.html#Offset">QIODevice::Offset</a>)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a95dc787af9c75a50ce5d643691cb36c8"></a><!-- doxytag: member="KFilterDev::atEnd" ref="a95dc787af9c75a50ce5d643691cb36c8" args="() const " -->
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><b>atEnd</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab65676357760fef44953f98ccb2a9dde"></a><!-- doxytag: member="KFilterDev::readBlock" ref="ab65676357760fef44953f98ccb2a9dde" args="(char *data, Q_ULONG maxlen)" -->
virtual Q_LONG&#160;</td><td class="memItemRight" valign="bottom"><b>readBlock</b> (char *data, Q_ULONG maxlen)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="add3846fd8db3856070f2aabb97c79a89"></a><!-- doxytag: member="KFilterDev::writeBlock" ref="add3846fd8db3856070f2aabb97c79a89" args="(const char *data, Q_ULONG len)" -->
virtual Q_LONG&#160;</td><td class="memItemRight" valign="bottom"><b>writeBlock</b> (const char *data, Q_ULONG len)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad760799fc4776aac61fefc7a4c341866"></a><!-- doxytag: member="KFilterDev::getch" ref="ad760799fc4776aac61fefc7a4c341866" args="()" -->
virtual int&#160;</td><td class="memItemRight" valign="bottom"><b>getch</b> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8cb7de3f8ce10bbc85f356acc29bfe21"></a><!-- doxytag: member="KFilterDev::putch" ref="a8cb7de3f8ce10bbc85f356acc29bfe21" args="(int)" -->
virtual int&#160;</td><td class="memItemRight" valign="bottom"><b>putch</b> (int)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a74c9fa6a20bc235207aaed076bf5636c"></a><!-- doxytag: member="KFilterDev::ungetch" ref="a74c9fa6a20bc235207aaed076bf5636c" args="(int)" -->
virtual int&#160;</td><td class="memItemRight" valign="bottom"><b>ungetch</b> (int)</td></tr>
<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="qiodevice.html">QIODevice</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFilterDev.html#a47815748f45b3b46c0ced7cc53bfae2e">createFilterDevice</a> (<a class="el" href="classKFilterBase.html">KFilterBase</a> *base, <a class="elRef" href="qfile.html">QFile</a> *file) KDE_DEPRECATED</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="qiodevice.html">QIODevice</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFilterDev.html#aafd470e4fde55cd53995b7167506fc09">deviceForFile</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;fileName, const <a class="elRef" href="qstring.html">QString</a> &amp;mimetype=QString::null, bool forceFilter=false)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="qiodevice.html">QIODevice</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFilterDev.html#a68d6bab5c60b94f2b08dabfbd7c17cf8">device</a> (<a class="elRef" href="qiodevice.html">QIODevice</a> *inDevice, const <a class="elRef" href="qstring.html">QString</a> &amp;mimetype)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="qiodevice.html">QIODevice</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFilterDev.html#aa295958f50deb549674b80104722458e">device</a> (<a class="elRef" href="qiodevice.html">QIODevice</a> *inDevice, const <a class="elRef" href="qstring.html">QString</a> &amp;mimetype, bool autoDeleteInDevice)</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>A class for reading and writing compressed data onto a device (e.g. </p>
<p>file, but other usages are possible, like a buffer or a socket).</p>
<p>To simply read/write compressed files, see deviceForFile.</p>
<dl class="author"><dt><b>Author:</b></dt><dd>David Faure &lt;<a href="mailto:faure@kde.org">faure@kde.org</a>&gt; </dd></dl>

<p>Definition at line <a class="el" href="kfilterdev_8h_source.html#l00036">36</a> of file <a class="el" href="kfilterdev_8h_source.html">kfilterdev.h</a>.</p>
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="aab24827abc4d813c222af3a4fc46fe91"></a><!-- doxytag: member="KFilterDev::KFilterDev" ref="aab24827abc4d813c222af3a4fc46fe91" args="(KFilterBase *filter, bool autoDeleteFilterBase=false)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KFilterDev::KFilterDev </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classKFilterBase.html">KFilterBase</a> *&#160;</td>
          <td class="paramname"><em>filter</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>autoDeleteFilterBase</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructs a <a class="el" href="classKFilterDev.html" title="A class for reading and writing compressed data onto a device (e.g.">KFilterDev</a> for a given filter (e.g. </p>
<p>gzip, bzip2 etc.). </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">filter</td><td>the <a class="el" href="classKFilterBase.html" title="This is the base class for compression filters such as gzip and bzip2.">KFilterBase</a> to use </td></tr>
    <tr><td class="paramname">autoDeleteFilterBase</td><td>when true this object will become the owner of <code>filter</code>. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="kfilterdev_8cpp_source.html#l00046">46</a> of file <a class="el" href="kfilterdev_8cpp_source.html">kfilterdev.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="adae6c39a80f3aad6b8387a8c3c2bedd5"></a><!-- doxytag: member="KFilterDev::~KFilterDev" ref="adae6c39a80f3aad6b8387a8c3c2bedd5" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KFilterDev::~KFilterDev </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Destructs the <a class="el" href="classKFilterDev.html" title="A class for reading and writing compressed data onto a device (e.g.">KFilterDev</a>. </p>
<p>Calls <a class="el" href="classKFilterDev.html#aa1400ff3a0888e986cd677f5f4f8f59a" title="Close after reading or writing.">close()</a> if the filter device is still open. </p>

<p>Definition at line <a class="el" href="kfilterdev_8cpp_source.html#l00054">54</a> of file <a class="el" href="kfilterdev_8cpp_source.html">kfilterdev.cpp</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ac89bb389d5cdd11cab148e041b4ebcd8"></a><!-- doxytag: member="KFilterDev::at" ref="ac89bb389d5cdd11cab148e041b4ebcd8" args="(QIODevice::Offset)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KFilterDev::at </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" href="qiodevice.html#Offset">QIODevice::Offset</a>&#160;</td>
          <td class="paramname"><em>pos</em></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>That one can be quite slow, when going back. </p>
<p>Use with care. </p>

<p>Definition at line <a class="el" href="kfilterdev_8cpp_source.html#l00190">190</a> of file <a class="el" href="kfilterdev_8cpp_source.html">kfilterdev.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aa1400ff3a0888e986cd677f5f4f8f59a"></a><!-- doxytag: member="KFilterDev::close" ref="aa1400ff3a0888e986cd677f5f4f8f59a" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KFilterDev::close </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Close after reading or writing. </p>
<p>If the KFilterBase's device was opened by <a class="el" href="classKFilterDev.html#a76477d8188e2c503596085563592b268" title="Open for reading or writing.">open()</a>, it will be closed. </p>

<p>Reimplemented from <a class="elRef" href="qiodevice.html#close">QIODevice</a>.</p>

<p>Definition at line <a class="el" href="kfilterdev_8cpp_source.html#l00149">149</a> of file <a class="el" href="kfilterdev_8cpp_source.html">kfilterdev.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a47815748f45b3b46c0ced7cc53bfae2e"></a><!-- doxytag: member="KFilterDev::createFilterDevice" ref="a47815748f45b3b46c0ced7cc53bfae2e" args="(KFilterBase *base, QFile *file) KDE_DEPRECATED" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qiodevice.html">QIODevice</a> * KFilterDev::createFilterDevice </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classKFilterBase.html">KFilterBase</a> *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" href="qfile.html">QFile</a> *&#160;</td>
          <td class="paramname"><em>file</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Call this to create the appropriate filter device for <code>base</code> working on <code>file</code> . </p>
<p>The returned <a class="elRef" href="qiodevice.html">QIODevice</a> has to be deleted after using. </p>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000006">Deprecated:</a></b></dt><dd>. Use deviceForFile instead. To be removed in KDE 3.0 </dd></dl>

<p>Definition at line <a class="el" href="kfilterdev_8cpp_source.html#l00066">66</a> of file <a class="el" href="kfilterdev_8cpp_source.html">kfilterdev.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a68d6bab5c60b94f2b08dabfbd7c17cf8"></a><!-- doxytag: member="KFilterDev::device" ref="a68d6bab5c60b94f2b08dabfbd7c17cf8" args="(QIODevice *inDevice, const QString &amp;mimetype)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qiodevice.html">QIODevice</a> * KFilterDev::device </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" href="qiodevice.html">QIODevice</a> *&#160;</td>
          <td class="paramname"><em>inDevice</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>mimetype</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Creates an i/o device that is able to read from the <a class="elRef" href="qiodevice.html">QIODevice</a> <code>inDevice</code>, whether the data is compressed or not. </p>
<p>Available compression filters (gzip/bzip2 etc.) will automatically be used.</p>
<p>The compression filter to be used is determined <code>mimetype</code> . Pass "application/x-gzip" or "application/x-bzip2" to use the corresponding decompression filter.</p>
<p>Warning: application/x-bzip2 may not be available. In that case 0 will be returned !</p>
<p>The returned <a class="elRef" href="qiodevice.html">QIODevice</a> has to be deleted after using. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">inDevice</td><td>input device, becomes owned by this device! Automatically deleted! </td></tr>
    <tr><td class="paramname">mimetype</td><td>the mime type for the filter </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a <a class="elRef" href="qiodevice.html">QIODevice</a> that filters the original stream. Must be deleted after using </dd></dl>

<p>Definition at line <a class="el" href="kfilterdev_8cpp_source.html#l00101">101</a> of file <a class="el" href="kfilterdev_8cpp_source.html">kfilterdev.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aa295958f50deb549674b80104722458e"></a><!-- doxytag: member="KFilterDev::device" ref="aa295958f50deb549674b80104722458e" args="(QIODevice *inDevice, const QString &amp;mimetype, bool autoDeleteInDevice)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qiodevice.html">QIODevice</a> * KFilterDev::device </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" href="qiodevice.html">QIODevice</a> *&#160;</td>
          <td class="paramname"><em>inDevice</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>mimetype</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>autoDeleteInDevice</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Creates an i/o device that is able to read from the <a class="elRef" href="qiodevice.html">QIODevice</a> <code>inDevice</code>, whether the data is compressed or not. </p>
<p>Available compression filters (gzip/bzip2 etc.) will automatically be used.</p>
<p>The compression filter to be used is determined <code>mimetype</code> . Pass "application/x-gzip" or "application/x-bzip2" to use the corresponding decompression filter.</p>
<p>Warning: application/x-bzip2 may not be available. In that case 0 will be returned !</p>
<p>The returned <a class="elRef" href="qiodevice.html">QIODevice</a> has to be deleted after using. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">inDevice</td><td>input device. Won't be deleted if <code>autoDeleteInDevice</code> = false </td></tr>
    <tr><td class="paramname">mimetype</td><td>the mime type for the filter </td></tr>
    <tr><td class="paramname">autoDeleteInDevice</td><td>if true, <code>inDevice</code> will be deleted automatically </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a <a class="elRef" href="qiodevice.html">QIODevice</a> that filters the original stream. Must be deleted after using </dd></dl>
<dl class="since"><dt><b>Since:</b></dt><dd>3.1 </dd></dl>

<p>Definition at line <a class="el" href="kfilterdev_8cpp_source.html#l00106">106</a> of file <a class="el" href="kfilterdev_8cpp_source.html">kfilterdev.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aafd470e4fde55cd53995b7167506fc09"></a><!-- doxytag: member="KFilterDev::deviceForFile" ref="aafd470e4fde55cd53995b7167506fc09" args="(const QString &amp;fileName, const QString &amp;mimetype=QString::null, bool forceFilter=false)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qiodevice.html">QIODevice</a> * KFilterDev::deviceForFile </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>fileName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>mimetype</em> = <code>QString::null</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>forceFilter</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Creates an i/o device that is able to read from <code>fileName</code>, whether it's compressed or not. </p>
<p>Available compression filters (gzip/bzip2 etc.) will automatically be used.</p>
<p>The compression filter to be used is determined from the <code>fileName</code> if <code>mimetype</code> is empty. Pass "application/x-gzip" or "application/x-bzip2" to force the corresponding decompression filter, if available.</p>
<p>Warning: application/x-bzip2 may not be available. In that case a <a class="elRef" href="qfile.html">QFile</a> opened on the compressed data will be returned ! Use <a class="el" href="classKFilterBase.html#a6f6597b919c0c87339a0312657a64a88" title="Call this to create the appropriate filter for the mimetype mimeType.">KFilterBase::findFilterByMimeType</a> and code similar to what deviceForFile is doing, to better control what's happening.</p>
<p>The returned <a class="elRef" href="qiodevice.html">QIODevice</a> has to be deleted after using.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">fileName</td><td>the name of the file to filter </td></tr>
    <tr><td class="paramname">mimetype</td><td>the mime type of the file to filter, or QString::null if unknown </td></tr>
    <tr><td class="paramname">forceFilter</td><td>if true, the function will either find a compression filter, or return 0. If false, it will always return a <a class="elRef" href="qiodevice.html">QIODevice</a>. If no filter is available it will return a simple <a class="elRef" href="qfile.html">QFile</a>. This can be useful if the file is usable without a filter. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>if a filter has been found, the <a class="elRef" href="qiodevice.html">QIODevice</a> for the filter. If the filter does not exist, the return value depends on <code>forceFilter</code>. The returned <a class="elRef" href="qiodevice.html">QIODevice</a> has to be deleted after using. </dd></dl>

<p>Definition at line <a class="el" href="kfilterdev_8cpp_source.html#l00081">81</a> of file <a class="el" href="kfilterdev_8cpp_source.html">kfilterdev.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a76477d8188e2c503596085563592b268"></a><!-- doxytag: member="KFilterDev::open" ref="a76477d8188e2c503596085563592b268" args="(int mode)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KFilterDev::open </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>mode</em></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Open for reading or writing. </p>
<p>If the KFilterBase's device is not opened, it will be opened. </p>

<p>Reimplemented from <a class="elRef" href="qiodevice.html#open">QIODevice</a>.</p>

<p>Definition at line <a class="el" href="kfilterdev_8cpp_source.html#l00119">119</a> of file <a class="el" href="kfilterdev_8cpp_source.html">kfilterdev.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ac48b10dd86024843e29b1ae263d4a457"></a><!-- doxytag: member="KFilterDev::setOrigFileName" ref="ac48b10dd86024843e29b1ae263d4a457" args="(const QCString &amp;fileName)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KFilterDev::setOrigFileName </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qcstring.html">QCString</a> &amp;&#160;</td>
          <td class="paramname"><em>fileName</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>For writing gzip compressed files only: set the name of the original file, to be used in the gzip header. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">fileName</td><td>the name of the original file </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="kfilterdev_8cpp_source.html#l00472">472</a> of file <a class="el" href="kfilterdev_8cpp_source.html">kfilterdev.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ad4d43dc1c8ceae1159723b624cc4f4f3"></a><!-- doxytag: member="KFilterDev::setSkipHeaders" ref="ad4d43dc1c8ceae1159723b624cc4f4f3" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KFilterDev::setSkipHeaders </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Call this let this device skip the gzip headers when reading/writing. </p>
<p>This way <a class="el" href="classKFilterDev.html" title="A class for reading and writing compressed data onto a device (e.g.">KFilterDev</a> (with gzip filter) can be used as a direct wrapper around zlib - this is used by <a class="el" href="classKZip.html" title="This class implements a kioslave to access zip files from KDE.">KZip</a>. </p>
<dl class="since"><dt><b>Since:</b></dt><dd>3.1 </dd></dl>

<p>Definition at line <a class="el" href="kfilterdev_8cpp_source.html#l00477">477</a> of file <a class="el" href="kfilterdev_8cpp_source.html">kfilterdev.cpp</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="kfilterdev_8h_source.html">kfilterdev.h</a></li>
<li><a class="el" href="kfilterdev_8cpp_source.html">kfilterdev.cpp</a></li>
</ul>
</div>
    </div></div>


      </td>
  </tr>
  <tr>
    <td valign="top" id="leftmenu" width="25%">
      <a name="navigation"></a>
      <div class="menu_box"><h2>kio/kio</h2>
<div class="nav_list">
<ul><li><a href="index.html">Main Page</a></li><li><a href="modules.html">Modules</a></li><li><a href="namespaces.html">Namespace List</a></li><li><a href="hierarchy.html">Class Hierarchy</a></li><li><a href="classes.html">Alphabetical List</a></li><li><a href="annotated.html">Class List</a></li><li><a href="files.html">File List</a></li><li><a href="namespacemembers.html">Namespace Members</a></li><li><a href="functions.html">Class Members</a></li><li><a href="pages.html">Related Pages</a></li></ul>
<!--
<h2>Class Picker</h2>
<div style="text-align: center;">
<form name="guideform">
<select name="guidelinks" style="width:100%;" onChange="window.location=document.guideform.guidelinks.options[document.guideform.guidelinks.selectedIndex].value">
<option value="annotated.html">-- Choose --</option>
  <option value="classKACL.html">kacl</option>,  <option value="classKAr.html">kar</option>,  <option value="classKArchive.html">karchive</option>,  <option value="classKArchiveDirectory.html">karchivedirectory</option>,  <option value="classKArchiveEntry.html">karchiveentry</option>,  <option value="classKArchiveFile.html">karchivefile</option>,  <option value="classKAutoMount.html">kautomount</option>,  <option value="classKAutoUnmount.html">kautounmount</option>,  <option value="classKDataTool.html">kdatatool</option>,  <option value="classKDataToolAction.html">kdatatoolaction</option>,  <option value="classKDataToolInfo.html">kdatatoolinfo</option>,  <option value="classKDCOPServiceStarter.html">kdcopservicestarter</option>,  <option value="classKDEDesktopMimeType.html">kdedesktopmimetype</option>,  <option value="classKDirLister.html">kdirlister</option>,  <option value="classKDirNotify.html">kdirnotify</option>,  <option value="classKDirWatch.html">kdirwatch</option>,  <option value="classKEMailSettings.html">kemailsettings</option>,  <option value="classKExecMimeType.html">kexecmimetype</option>,  <option value="classKFileFilter.html">kfilefilter</option>,  <option value="classKFileItem.html">kfileitem</option>,  <option value="classKFileMetaInfo.html">kfilemetainfo</option>,  <option value="classKFileMetaInfoGroup.html">kfilemetainfogroup</option>,  <option value="classKFileMetaInfoItem.html">kfilemetainfoitem</option>,  <option value="classKFileMimeTypeInfo.html">kfilemimetypeinfo</option>,  <option value="classKFileMimeTypeInfo_1_1GroupInfo.html">kfilemimetypeinfo::groupinfo</option>,  <option value="classKFileMimeTypeInfo_1_1ItemInfo.html">kfilemimetypeinfo::iteminfo</option>,  <option value="classKFilePlugin.html">kfileplugin</option>,  <option value="classKFileShare.html">kfileshare</option>,  <option value="classKFilterBase.html">kfilterbase</option>,  <option value="classKFilterDev.html">kfilterdev</option>,  <option value="classKFolderType.html">kfoldertype</option>,  <option value="classKImageIO.html">kimageio</option>,  <option value="classKIO_1_1AuthInfo.html">kio::authinfo</option>,  <option value="classKIO_1_1ChmodJob.html">kio::chmodjob</option>,  <option value="classKIO_1_1Connection.html">kio::connection</option>,  <option value="classKIO_1_1CopyJob.html">kio::copyjob</option>,  <option value="classKIO_1_1DataProtocol.html">kio::dataprotocol</option>,  <option value="classKIO_1_1DataSlave.html">kio::dataslave</option>,  <option value="classKIO_1_1DavJob.html">kio::davjob</option>,  <option value="classKIO_1_1DeleteJob.html">kio::deletejob</option>,  <option value="classKIO_1_1FileCopyJob.html">kio::filecopyjob</option>,  <option value="classKIO_1_1ForwardingSlaveBase.html">kio::forwardingslavebase</option>,  <option value="classKIO_1_1Job.html">kio::job</option>,  <option value="classKIO_1_1ListJob.html">kio::listjob</option>,  <option value="classKIO_1_1MetaData.html">kio::metadata</option>,  <option value="classKIO_1_1MetaInfoJob.html">kio::metainfojob</option>,  <option value="classKIO_1_1MimetypeJob.html">kio::mimetypejob</option>,  <option value="classKIO_1_1MkdirJob.html">kio::mkdirjob</option>,  <option value="classKIO_1_1MultiGetJob.html">kio::multigetjob</option>,  <option value="classKIO_1_1NetAccess.html">kio::netaccess</option>,  <option value="classKIO_1_1NetRC.html">kio::netrc</option>,  <option value="classKIO_1_1PasswordDialog.html">kio::passworddialog</option>,  <option value="classKIO_1_1PreviewJob.html">kio::previewjob</option>,  <option value="classKIO_1_1ProgressBase.html">kio::progressbase</option>,  <option value="classKIO_1_1RenameDlg.html">kio::renamedlg</option>,  <option value="classKIO_1_1Scheduler.html">kio::scheduler</option>,  <option value="classKIO_1_1SimpleJob.html">kio::simplejob</option>,  <option value="classKIO_1_1Slave.html">kio::slave</option>,  <option value="classKIO_1_1SlaveBase.html">kio::slavebase</option>,  <option value="classKIO_1_1SlaveConfig.html">kio::slaveconfig</option>,  <option value="classKIO_1_1SlaveInterface.html">kio::slaveinterface</option>,  <option value="classKIO_1_1StatJob.html">kio::statjob</option>,  <option value="classKIO_1_1StatusbarProgress.html">kio::statusbarprogress</option>,  <option value="classKIO_1_1StoredTransferJob.html">kio::storedtransferjob</option>,  <option value="classKIO_1_1TCPSlaveBase.html">kio::tcpslavebase</option>,  <option value="classKIO_1_1TransferJob.html">kio::transferjob</option>,  <option value="classKLimitedIODevice.html">klimitediodevice</option>,  <option value="classKMimeMagic.html">kmimemagic</option>,  <option value="classKMimeMagicResult.html">kmimemagicresult</option>,  <option value="classKMimeType.html">kmimetype</option>,  <option value="classKMimeTypeChooser.html">kmimetypechooser</option>,  <option value="classKMimeTypeChooserDialog.html">kmimetypechooserdialog</option>,  <option value="classKMimeTypeResolver.html">kmimetyperesolver</option>,  <option value="classKNFSShare.html">knfsshare</option>,  <option value="classKOCRDialog.html">kocrdialog</option>,  <option value="classKOCRDialogFactory.html">kocrdialogfactory</option>,  <option value="classKOpenWithHandler.html">kopenwithhandler</option>,  <option value="classKProtocolInfo.html">kprotocolinfo</option>,  <option value="classKProtocolManager.html">kprotocolmanager</option>,  <option value="classKRemoteEncoding.html">kremoteencoding</option>,  <option value="classKRun.html">krun</option>,  <option value="classKSambaShare.html">ksambashare</option>,  <option value="classKScanDialog.html">kscandialog</option>,  <option value="classKScanDialogFactory.html">kscandialogfactory</option>,  <option value="classKService.html">kservice</option>,  <option value="classKServiceGroup.html">kservicegroup</option>,  <option value="classKServiceOffer.html">kserviceoffer</option>,  <option value="classKServiceType.html">kservicetype</option>,  <option value="classKServiceTypeProfile.html">kservicetypeprofile</option>,  <option value="classKShellCompletion.html">kshellcompletion</option>,  <option value="classKShred.html">kshred</option>,  <option value="classKSimpleFileFilter.html">ksimplefilefilter</option>,  <option value="classKTar.html">ktar</option>,  <option value="classKTrader.html">ktrader</option>,  <option value="classKURIFilter.html">kurifilter</option>,  <option value="classKURIFilterData.html">kurifilterdata</option>,  <option value="classKURIFilterPlugin.html">kurifilterplugin</option>,  <option value="classKURIFilterPluginList.html">kurifilterpluginlist</option>,  <option value="classKURLCompletion.html">kurlcompletion</option>,  <option value="classKURLPixmapProvider.html">kurlpixmapprovider</option>,  <option value="classKZip.html">kzip</option>,  <option value="classObserver.html">observer</option>,  <option value="classRenameDlgPlugin.html">renamedlgplugin</option>,  <option value="classThumbCreator.html">thumbcreator</option>,
</select>
</form>
</div>
-->
</div></div>
<div class="menu_box"><h2>API Dox</h2>
<div class="nav_list">
<ul>
<li><a href="../../../arts/html/index.html">arts</a></li><li><a href="../../../dcop/html/index.html">dcop</a></li><li><a href="../../../dnssd/html/index.html">dnssd</a></li><li><a href="../../../interfaces/html/index.html">interfaces</a></li><li>&nbsp;&nbsp;&nbsp;&nbsp;<a href="../../../interfaces/kimproxy/interface/html/index.html">interface</a></li><li>&nbsp;&nbsp;&nbsp;&nbsp;<a href="../../../interfaces/kimproxy/library/html/index.html">library</a></li><li>&nbsp;&nbsp;<a href="../../../interfaces/kspeech/html/index.html">kspeech</a></li><li>&nbsp;&nbsp;<a href="../../../interfaces/ktexteditor/html/index.html">ktexteditor</a></li><li><a href="../../../kabc/html/index.html">kabc</a></li><li><a href="../../../kate/html/index.html">kate</a></li><li><a href="../../../kcmshell/html/index.html">kcmshell</a></li><li><a href="../../../kdecore/html/index.html">kdecore</a></li><li><a href="../../../kded/html/index.html">kded</a></li><li><a href="../../../kdefx/html/index.html">kdefx</a></li><li><a href="../../../kdeprint/html/index.html">kdeprint</a></li><li><a href="../../../kdesu/html/index.html">kdesu</a></li><li><a href="../../../kdeui/html/index.html">kdeui</a></li><li><a href="../../../kdoctools/html/index.html">kdoctools</a></li><li><a href="../../../khtml/html/index.html">khtml</a></li><li><a href="../../../kimgio/html/index.html">kimgio</a></li><li><a href="../../../kinit/html/index.html">kinit</a></li><li><a href="../../../kio/html/index.html">kio</a></li><li>&nbsp;&nbsp;<a href="../../../kio/bookmarks/html/index.html">bookmarks</a></li><li>&nbsp;&nbsp;<a href="../../../kio/httpfilter/html/index.html">httpfilter</a></li><li>&nbsp;&nbsp;<a href="../../../kio/kfile/html/index.html">kfile</a></li><li>&nbsp;&nbsp;<a href="../../../kio/kio/html/index.html">kio</a></li><li>&nbsp;&nbsp;<a href="../../../kio/kioexec/html/index.html">kioexec</a></li><li>&nbsp;&nbsp;<a href="../../../kio/kpasswdserver/html/index.html">kpasswdserver</a></li><li>&nbsp;&nbsp;<a href="../../../kio/kssl/html/index.html">kssl</a></li><li><a href="../../../kioslave/html/index.html">kioslave</a></li><li>&nbsp;&nbsp;<a href="../../../kioslave/http/html/index.html">http</a></li><li><a href="../../../kjs/html/index.html">kjs</a></li><li><a href="../../../kmdi/html/index.html">kmdi</a></li><li>&nbsp;&nbsp;<a href="../../../kmdi/kmdi/html/index.html">kmdi</a></li><li><a href="../../../knewstuff/html/index.html">knewstuff</a></li><li><a href="../../../kparts/html/index.html">kparts</a></li><li><a href="../../../kresources/html/index.html">kresources</a></li><li><a href="../../../kspell2/html/index.html">kspell2</a></li><li><a href="../../../kunittest/html/index.html">kunittest</a></li><li><a href="../../../kutils/html/index.html">kutils</a></li><li><a href="../../../kwallet/html/index.html">kwallet</a></li><li><a href="../../../libkmid/html/index.html">libkmid</a></li><li><a href="../../../libkscreensaver/html/index.html">libkscreensaver</a></li>
</ul></div></div>


        </td>
</tr>
</table>

<span class="doNotDisplay">
  <a href="http://www.kde.org/" accesskey="8">KDE Home</a> |
  <a href="http://accessibility.kde.org/" accesskey="9">KDE Accessibility Home</a> |
  <a href="http://www.kde.org/media/accesskeys.php" accesskey="0">Description of Access Keys</a>
</span>


<div style="height: 8px"></div>

<div id="footer">
  <div id="footer_left">
    Maintained by <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;groo&#116;&#64;kde&#46;or&#x67;">Adriaan de Groot</a>
and
<a href="&#109;a&#105;&#108;&#116;&#111;&#58;w&#105;nter&#64;kde&#46;or&#x67">Allen Winter</a>.
<br/>
    KDE and K Desktop Environment are trademarks of <a href="http://www.kde.org/areas/kde-ev/" title="Homepage of the KDE non-profit Organization">KDE e.V.</a> |
    <a href="http://www.kde.org/contact/impressum.php">Legal</a>
  </div>
  <div id="footer_right"><img src="/media/images/footer_right.png" style="margin: 0px" alt="" /></div>
</div>

<!--
WARNING: DO NOT SEND MAIL TO THE FOLLOWING EMAIL ADDRESS! YOU WILL
BE BLOCKED INSTANTLY AND PERMANENTLY!
<a href="mailto:aaaatrap-425acc3b5374943f@kde.org">Block me</a>
WARNING END
-->

</body>
</html>