Sophie

Sophie

distrib > Mageia > 5 > i586 > media > core-release > by-pkgid > 7aa0b3689999b2d0524276a8f3c2a10a > files > 195

glibmm2.4-doc-2.42.0-3.mga5.noarch.rpm

<!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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.7"/>
<title>glibmm: Gio::InputStream Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">glibmm
   &#160;<span id="projectnumber">2.42.0</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;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 class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespaceGio.html">Gio</a></li><li class="navelem"><a class="el" href="classGio_1_1InputStream.html">InputStream</a></li>  </ul>
</div>
</div><!-- top -->
<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> &#124;
<a href="#related">Related Functions</a> &#124;
<a href="classGio_1_1InputStream-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Gio::InputStream Class Reference<div class="ingroups"><a class="el" href="group__Streams.html">Stream Classes</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>Base class for implementing streaming input.  
 <a href="classGio_1_1InputStream.html#details">More...</a></p>

<p><code>#include &lt;giomm/inputstream.h&gt;</code></p>
<div class="dynheader">
Inheritance diagram for Gio::InputStream:</div>
<div class="dyncontent">
<div class="center"><img src="classGio_1_1InputStream__inherit__graph.png" border="0" usemap="#Gio_1_1InputStream_inherit__map" alt="Inheritance graph"/></div>
<map name="Gio_1_1InputStream_inherit__map" id="Gio_1_1InputStream_inherit__map">
<area shape="rect" id="node5" href="classGio_1_1FileInputStream.html" title="FileInputStream provides input streams that take their content from a file. " alt="" coords="683,5,834,32"/><area shape="rect" id="node6" href="classGio_1_1FilterInputStream.html" title="Filter Input Stream. " alt="" coords="678,56,839,83"/><area shape="rect" id="node10" href="classGio_1_1MemoryInputStream.html" title="MemoryInputStream implements InputStream for arbitrary memory chunks. " alt="" coords="667,107,850,133"/><area shape="rect" id="node11" href="classGio_1_1UnixInputStream.html" title="UnixInputStream implements InputStream for reading from a unix file descriptor, including asynchronou..." alt="" coords="679,157,838,184"/><area shape="rect" id="node2" href="classGlib_1_1Object.html" title="Glib::Object" alt="" coords="345,81,439,108"/><area shape="rect" id="node3" href="classGlib_1_1ObjectBase.html" title="Glib::ObjectBase is a common base class for Objects and Interfaces. " alt="" coords="169,81,295,108"/><area shape="rect" id="node4" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html" title="sigc::trackable" alt="" coords="5,81,120,108"/><area shape="rect" id="node7" href="classGio_1_1BufferedInputStream.html" title="The buffered input stream implements FilterInputStream and provides for buffered reads. " alt="" coords="903,31,1089,57"/><area shape="rect" id="node9" href="classGio_1_1ConverterInputStream.html" title="ConverterInputstream &#45; Converter Input Stream. " alt="" coords="899,81,1093,108"/><area shape="rect" id="node8" href="classGio_1_1DataInputStream.html" title="An implementation of BufferedInputStream that allows for high&#45;level data manipulation of arbitrary da..." alt="" coords="1141,31,1304,57"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:afff624e3125add13c88e8a99907ba903"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#afff624e3125add13c88e8a99907ba903">~InputStream</a> ()</td></tr>
<tr class="separator:afff624e3125add13c88e8a99907ba903"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ed1120b3d03a12086e7f0ed3946aba1"><td class="memItemLeft" align="right" valign="top">GInputStream*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a2ed1120b3d03a12086e7f0ed3946aba1">gobj</a> ()</td></tr>
<tr class="memdesc:a2ed1120b3d03a12086e7f0ed3946aba1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C GObject.  <a href="#a2ed1120b3d03a12086e7f0ed3946aba1">More...</a><br /></td></tr>
<tr class="separator:a2ed1120b3d03a12086e7f0ed3946aba1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b0ef82ab81b3ded607584c7029fe1e9"><td class="memItemLeft" align="right" valign="top">const GInputStream*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a1b0ef82ab81b3ded607584c7029fe1e9">gobj</a> () const </td></tr>
<tr class="memdesc:a1b0ef82ab81b3ded607584c7029fe1e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C GObject.  <a href="#a1b0ef82ab81b3ded607584c7029fe1e9">More...</a><br /></td></tr>
<tr class="separator:a1b0ef82ab81b3ded607584c7029fe1e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28a9394b07e9183c0c79798ea344c65c"><td class="memItemLeft" align="right" valign="top">GInputStream*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a28a9394b07e9183c0c79798ea344c65c">gobj_copy</a> ()</td></tr>
<tr class="memdesc:a28a9394b07e9183c0c79798ea344c65c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.  <a href="#a28a9394b07e9183c0c79798ea344c65c">More...</a><br /></td></tr>
<tr class="separator:a28a9394b07e9183c0c79798ea344c65c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a49a1f4219f96c7fafdcf1ed12eb443e2"><td class="memItemLeft" align="right" valign="top">gssize&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a49a1f4219f96c7fafdcf1ed12eb443e2">read</a> (void* buffer, gsize <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01659.html#gad2f89a1340c43c8451e522d045aaa1b6">count</a>, const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp; cancellable)</td></tr>
<tr class="memdesc:a49a1f4219f96c7fafdcf1ed12eb443e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tries to read <em>count</em> bytes from the stream into the buffer starting at <em>buffer</em>.  <a href="#a49a1f4219f96c7fafdcf1ed12eb443e2">More...</a><br /></td></tr>
<tr class="separator:a49a1f4219f96c7fafdcf1ed12eb443e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42ab2486116d40f6ef828277befb508a"><td class="memItemLeft" align="right" valign="top">gssize&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a42ab2486116d40f6ef828277befb508a">read</a> (void* buffer, gsize <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01659.html#gad2f89a1340c43c8451e522d045aaa1b6">count</a>)</td></tr>
<tr class="memdesc:a42ab2486116d40f6ef828277befb508a"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="classGio_1_1InputStream.html#a49a1f4219f96c7fafdcf1ed12eb443e2" title="Tries to read count bytes from the stream into the buffer starting at buffer. ">read()</a> convenience overload.  <a href="#a42ab2486116d40f6ef828277befb508a">More...</a><br /></td></tr>
<tr class="separator:a42ab2486116d40f6ef828277befb508a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1dc8a2babf32f93a0a5dccc0c39e0959"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a1dc8a2babf32f93a0a5dccc0c39e0959">read_all</a> (void* buffer, gsize <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01659.html#gad2f89a1340c43c8451e522d045aaa1b6">count</a>, gsize&amp; bytes_read, const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp; cancellable)</td></tr>
<tr class="memdesc:a1dc8a2babf32f93a0a5dccc0c39e0959"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tries to read <em>count</em> bytes from the stream into the buffer starting at <em>buffer</em>.  <a href="#a1dc8a2babf32f93a0a5dccc0c39e0959">More...</a><br /></td></tr>
<tr class="separator:a1dc8a2babf32f93a0a5dccc0c39e0959"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6da0fc57d1a5df7107370c67e84aa496"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a6da0fc57d1a5df7107370c67e84aa496">read_all</a> (void* buffer, gsize <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01659.html#gad2f89a1340c43c8451e522d045aaa1b6">count</a>, gsize&amp; bytes_read)</td></tr>
<tr class="memdesc:a6da0fc57d1a5df7107370c67e84aa496"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="classGio_1_1InputStream.html#a1dc8a2babf32f93a0a5dccc0c39e0959" title="Tries to read count bytes from the stream into the buffer starting at buffer. ">read_all()</a> convenience overload.  <a href="#a6da0fc57d1a5df7107370c67e84aa496">More...</a><br /></td></tr>
<tr class="separator:a6da0fc57d1a5df7107370c67e84aa496"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af59e44aed65ee329e01d6ca6179e97b9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGlib_1_1Bytes.html">Glib::Bytes</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#af59e44aed65ee329e01d6ca6179e97b9">read_bytes</a> (gsize <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01659.html#gad2f89a1340c43c8451e522d045aaa1b6">count</a>, const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp; cancellable)</td></tr>
<tr class="memdesc:af59e44aed65ee329e01d6ca6179e97b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Like g_input_stream_read(), this tries to read <em>count</em> bytes from the stream in a blocking fashion.  <a href="#af59e44aed65ee329e01d6ca6179e97b9">More...</a><br /></td></tr>
<tr class="separator:af59e44aed65ee329e01d6ca6179e97b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9653d83a56cef6201286ff5f4b709050"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a9653d83a56cef6201286ff5f4b709050">read_bytes_async</a> (gsize <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01659.html#gad2f89a1340c43c8451e522d045aaa1b6">count</a>, const <a class="el" href="namespaceGio.html#aecaa02709f9ab83fa2b36d2571665cbe">SlotAsyncReady</a>&amp; slot, const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp; cancellable, int io_priority=<a class="el" href="namespaceGlib.html#a0c450f82b9e34689e2dda2038ba7834fa597ed3aa6067516c9c752896f3816b5e">Glib::PRIORITY_DEFAULT</a>)</td></tr>
<tr class="memdesc:a9653d83a56cef6201286ff5f4b709050"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request an asynchronous read of <em>count</em> bytes from the stream into a new <a class="el" href="classGlib_1_1Bytes.html" title="A simple refcounted data type representing an immutable byte sequence from an unspecified origin...">Glib::Bytes</a>.  <a href="#a9653d83a56cef6201286ff5f4b709050">More...</a><br /></td></tr>
<tr class="separator:a9653d83a56cef6201286ff5f4b709050"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af70a7c9073f6a494c8fac975530130c9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#af70a7c9073f6a494c8fac975530130c9">read_bytes_async</a> (gsize <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01659.html#gad2f89a1340c43c8451e522d045aaa1b6">count</a>, const <a class="el" href="namespaceGio.html#aecaa02709f9ab83fa2b36d2571665cbe">SlotAsyncReady</a>&amp; slot, int io_priority=<a class="el" href="namespaceGlib.html#a0c450f82b9e34689e2dda2038ba7834fa597ed3aa6067516c9c752896f3816b5e">Glib::PRIORITY_DEFAULT</a>)</td></tr>
<tr class="memdesc:af70a7c9073f6a494c8fac975530130c9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request an asynchronous read of <em>count</em> bytes from the stream into a new <a class="el" href="classGlib_1_1Bytes.html" title="A simple refcounted data type representing an immutable byte sequence from an unspecified origin...">Glib::Bytes</a>.  <a href="#af70a7c9073f6a494c8fac975530130c9">More...</a><br /></td></tr>
<tr class="separator:af70a7c9073f6a494c8fac975530130c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b38e525397cddd9ae4b2ebb395ba3b3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGlib_1_1Bytes.html">Glib::Bytes</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a0b38e525397cddd9ae4b2ebb395ba3b3">read_bytes_finish</a> (const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1AsyncResult.html">AsyncResult</a> &gt;&amp; result)</td></tr>
<tr class="memdesc:a0b38e525397cddd9ae4b2ebb395ba3b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finishes an asynchronous stream read-into-Bytes operation.  <a href="#a0b38e525397cddd9ae4b2ebb395ba3b3">More...</a><br /></td></tr>
<tr class="separator:a0b38e525397cddd9ae4b2ebb395ba3b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17ea65f35c15043156db90af831a44a3"><td class="memItemLeft" align="right" valign="top">gssize&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a17ea65f35c15043156db90af831a44a3">skip</a> (gsize <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01659.html#gad2f89a1340c43c8451e522d045aaa1b6">count</a>, const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp; cancellable)</td></tr>
<tr class="memdesc:a17ea65f35c15043156db90af831a44a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tries to skip <em>count</em> bytes from the stream.  <a href="#a17ea65f35c15043156db90af831a44a3">More...</a><br /></td></tr>
<tr class="separator:a17ea65f35c15043156db90af831a44a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ea9146d612c666168886734b79a5d65"><td class="memItemLeft" align="right" valign="top">gssize&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a1ea9146d612c666168886734b79a5d65">skip</a> (gsize <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01659.html#gad2f89a1340c43c8451e522d045aaa1b6">count</a>)</td></tr>
<tr class="memdesc:a1ea9146d612c666168886734b79a5d65"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="classGio_1_1InputStream.html#a17ea65f35c15043156db90af831a44a3" title="Tries to skip count bytes from the stream. ">skip()</a> convenience overload.  <a href="#a1ea9146d612c666168886734b79a5d65">More...</a><br /></td></tr>
<tr class="separator:a1ea9146d612c666168886734b79a5d65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b76b2503e607475f63731a886456e09"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a1b76b2503e607475f63731a886456e09">close</a> (const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp; cancellable)</td></tr>
<tr class="memdesc:a1b76b2503e607475f63731a886456e09"><td class="mdescLeft">&#160;</td><td class="mdescRight">Closes the stream, releasing resources related to it.  <a href="#a1b76b2503e607475f63731a886456e09">More...</a><br /></td></tr>
<tr class="separator:a1b76b2503e607475f63731a886456e09"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a3202cf7014bcfb2c0a7f301448ae50"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a7a3202cf7014bcfb2c0a7f301448ae50">close</a> ()</td></tr>
<tr class="memdesc:a7a3202cf7014bcfb2c0a7f301448ae50"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="classGio_1_1InputStream.html#a7a3202cf7014bcfb2c0a7f301448ae50" title="A close() convenience overload. ">close()</a> convenience overload.  <a href="#a7a3202cf7014bcfb2c0a7f301448ae50">More...</a><br /></td></tr>
<tr class="separator:a7a3202cf7014bcfb2c0a7f301448ae50"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b7762ee3f3c571fbc59a0c9af6e879e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a5b7762ee3f3c571fbc59a0c9af6e879e">read_async</a> (void* buffer, gsize <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01659.html#gad2f89a1340c43c8451e522d045aaa1b6">count</a>, const <a class="el" href="namespaceGio.html#aecaa02709f9ab83fa2b36d2571665cbe">SlotAsyncReady</a>&amp; slot, const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp; cancellable, int io_priority=<a class="el" href="namespaceGlib.html#a0c450f82b9e34689e2dda2038ba7834fa597ed3aa6067516c9c752896f3816b5e">Glib::PRIORITY_DEFAULT</a>)</td></tr>
<tr class="memdesc:a5b7762ee3f3c571fbc59a0c9af6e879e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request an asynchronous read of <em>count</em> bytes from the stream into the buffer starting at <em>buffer</em>.  <a href="#a5b7762ee3f3c571fbc59a0c9af6e879e">More...</a><br /></td></tr>
<tr class="separator:a5b7762ee3f3c571fbc59a0c9af6e879e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a05bea76fa9ac3c098a167d2b377e36a6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a05bea76fa9ac3c098a167d2b377e36a6">read_async</a> (void* buffer, gsize <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01659.html#gad2f89a1340c43c8451e522d045aaa1b6">count</a>, const <a class="el" href="namespaceGio.html#aecaa02709f9ab83fa2b36d2571665cbe">SlotAsyncReady</a>&amp; slot, int io_priority=<a class="el" href="namespaceGlib.html#a0c450f82b9e34689e2dda2038ba7834fa597ed3aa6067516c9c752896f3816b5e">Glib::PRIORITY_DEFAULT</a>)</td></tr>
<tr class="memdesc:a05bea76fa9ac3c098a167d2b377e36a6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request an asynchronous read of <em>count</em> bytes from the stream into the buffer starting at <em>buffer</em>.  <a href="#a05bea76fa9ac3c098a167d2b377e36a6">More...</a><br /></td></tr>
<tr class="separator:a05bea76fa9ac3c098a167d2b377e36a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac089ab220e671ba0af2dd97f2405c0c5"><td class="memItemLeft" align="right" valign="top">gssize&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#ac089ab220e671ba0af2dd97f2405c0c5">read_finish</a> (const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1AsyncResult.html">AsyncResult</a> &gt;&amp; result)</td></tr>
<tr class="memdesc:ac089ab220e671ba0af2dd97f2405c0c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finishes an asynchronous stream read operation.  <a href="#ac089ab220e671ba0af2dd97f2405c0c5">More...</a><br /></td></tr>
<tr class="separator:ac089ab220e671ba0af2dd97f2405c0c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1bf7a4a30005813b0a46e069215907a2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a1bf7a4a30005813b0a46e069215907a2">skip_async</a> (gsize <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01659.html#gad2f89a1340c43c8451e522d045aaa1b6">count</a>, const <a class="el" href="namespaceGio.html#aecaa02709f9ab83fa2b36d2571665cbe">SlotAsyncReady</a>&amp; slot, const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp; cancellable, int io_priority=<a class="el" href="namespaceGlib.html#a0c450f82b9e34689e2dda2038ba7834fa597ed3aa6067516c9c752896f3816b5e">Glib::PRIORITY_DEFAULT</a>)</td></tr>
<tr class="memdesc:a1bf7a4a30005813b0a46e069215907a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request an asynchronous skip of <em>count</em> bytes from the stream into the buffer starting at <em>buffer</em>.  <a href="#a1bf7a4a30005813b0a46e069215907a2">More...</a><br /></td></tr>
<tr class="separator:a1bf7a4a30005813b0a46e069215907a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a111e86dad4548394edcff16d7735d2d5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a111e86dad4548394edcff16d7735d2d5">skip_async</a> (gsize <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01659.html#gad2f89a1340c43c8451e522d045aaa1b6">count</a>, const <a class="el" href="namespaceGio.html#aecaa02709f9ab83fa2b36d2571665cbe">SlotAsyncReady</a>&amp; slot, int io_priority=<a class="el" href="namespaceGlib.html#a0c450f82b9e34689e2dda2038ba7834fa597ed3aa6067516c9c752896f3816b5e">Glib::PRIORITY_DEFAULT</a>)</td></tr>
<tr class="memdesc:a111e86dad4548394edcff16d7735d2d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request an asynchronous skip of <em>count</em> bytes from the stream into the buffer starting at <em>buffer</em>.  <a href="#a111e86dad4548394edcff16d7735d2d5">More...</a><br /></td></tr>
<tr class="separator:a111e86dad4548394edcff16d7735d2d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1522468bd203ab3082ab54e9eba68b03"><td class="memItemLeft" align="right" valign="top">gssize&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a1522468bd203ab3082ab54e9eba68b03">skip_finish</a> (const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1AsyncResult.html">AsyncResult</a> &gt;&amp; result)</td></tr>
<tr class="memdesc:a1522468bd203ab3082ab54e9eba68b03"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finishes a stream skip operation.  <a href="#a1522468bd203ab3082ab54e9eba68b03">More...</a><br /></td></tr>
<tr class="separator:a1522468bd203ab3082ab54e9eba68b03"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af66159778ee2d577e9df52063ced53bf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#af66159778ee2d577e9df52063ced53bf">close_async</a> (const <a class="el" href="namespaceGio.html#aecaa02709f9ab83fa2b36d2571665cbe">SlotAsyncReady</a>&amp; slot, const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp; cancellable, int io_priority=<a class="el" href="namespaceGlib.html#a0c450f82b9e34689e2dda2038ba7834fa597ed3aa6067516c9c752896f3816b5e">Glib::PRIORITY_DEFAULT</a>)</td></tr>
<tr class="memdesc:af66159778ee2d577e9df52063ced53bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Requests an asynchronous closes of the stream, releasing resources related to it.  <a href="#af66159778ee2d577e9df52063ced53bf">More...</a><br /></td></tr>
<tr class="separator:af66159778ee2d577e9df52063ced53bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5160982124f34ed6e475776acd126d2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#ab5160982124f34ed6e475776acd126d2">close_async</a> (const <a class="el" href="namespaceGio.html#aecaa02709f9ab83fa2b36d2571665cbe">SlotAsyncReady</a>&amp; slot, int io_priority=<a class="el" href="namespaceGlib.html#a0c450f82b9e34689e2dda2038ba7834fa597ed3aa6067516c9c752896f3816b5e">Glib::PRIORITY_DEFAULT</a>)</td></tr>
<tr class="memdesc:ab5160982124f34ed6e475776acd126d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Requests an asynchronous closes of the stream, releasing resources related to it.  <a href="#ab5160982124f34ed6e475776acd126d2">More...</a><br /></td></tr>
<tr class="separator:ab5160982124f34ed6e475776acd126d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae5a0d2c3ccf27661e374f151117a8fb7"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#ae5a0d2c3ccf27661e374f151117a8fb7">close_finish</a> (const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1AsyncResult.html">AsyncResult</a> &gt;&amp; result)</td></tr>
<tr class="memdesc:ae5a0d2c3ccf27661e374f151117a8fb7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finishes closing a stream asynchronously, started from g_input_stream_close_async().  <a href="#ae5a0d2c3ccf27661e374f151117a8fb7">More...</a><br /></td></tr>
<tr class="separator:ae5a0d2c3ccf27661e374f151117a8fb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classGlib_1_1Object"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classGlib_1_1Object')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classGlib_1_1Object.html">Glib::Object</a></td></tr>
<tr class="memitem:a0e6581bcbcc6197cca07df24bb91c492 inherit pub_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">void*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#a0e6581bcbcc6197cca07df24bb91c492">get_data</a> (const <a class="el" href="classGlib_1_1QueryQuark.html">QueryQuark</a>&amp; key)</td></tr>
<tr class="separator:a0e6581bcbcc6197cca07df24bb91c492 inherit pub_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afff7a375a862f3f899daaa99710122fa inherit pub_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#afff7a375a862f3f899daaa99710122fa">set_data</a> (const <a class="el" href="classGlib_1_1Quark.html">Quark</a>&amp; key, void* data)</td></tr>
<tr class="separator:afff7a375a862f3f899daaa99710122fa inherit pub_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1febe3bae2dd71756e98e523cd33c1b4 inherit pub_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#a1febe3bae2dd71756e98e523cd33c1b4">set_data</a> (const <a class="el" href="classGlib_1_1Quark.html">Quark</a>&amp; key, void* data, <a class="el" href="classGlib_1_1Object.html#a1d8d9f3c19b59eda96c40beca8d520e0">DestroyNotify</a> notify)</td></tr>
<tr class="separator:a1febe3bae2dd71756e98e523cd33c1b4 inherit pub_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aada5b50844bda7ee02bed0ae2a715c00 inherit pub_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#aada5b50844bda7ee02bed0ae2a715c00">remove_data</a> (const <a class="el" href="classGlib_1_1QueryQuark.html">QueryQuark</a>&amp; quark)</td></tr>
<tr class="separator:aada5b50844bda7ee02bed0ae2a715c00 inherit pub_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab454f71bd74403b0cc46d3cbbedd6b0e inherit pub_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">void*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#ab454f71bd74403b0cc46d3cbbedd6b0e">steal_data</a> (const <a class="el" href="classGlib_1_1QueryQuark.html">QueryQuark</a>&amp; quark)</td></tr>
<tr class="separator:ab454f71bd74403b0cc46d3cbbedd6b0e inherit pub_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classGlib_1_1ObjectBase"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classGlib_1_1ObjectBase')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classGlib_1_1ObjectBase.html">Glib::ObjectBase</a></td></tr>
<tr class="memitem:aab599d3eec4b4a9ddc95ccdc6100053d inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#aab599d3eec4b4a9ddc95ccdc6100053d">set_property_value</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; property_name, const <a class="el" href="classGlib_1_1ValueBase.html">Glib::ValueBase</a>&amp; value)</td></tr>
<tr class="memdesc:aab599d3eec4b4a9ddc95ccdc6100053d inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">You probably want to use a specific property_*() accessor method instead.  <a href="#aab599d3eec4b4a9ddc95ccdc6100053d">More...</a><br /></td></tr>
<tr class="separator:aab599d3eec4b4a9ddc95ccdc6100053d inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e30750441b92f0246c9d4ece95fc8a0 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a5e30750441b92f0246c9d4ece95fc8a0">get_property_value</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; property_name, <a class="el" href="classGlib_1_1ValueBase.html">Glib::ValueBase</a>&amp; value) const </td></tr>
<tr class="memdesc:a5e30750441b92f0246c9d4ece95fc8a0 inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">You probably want to use a specific property_*() accessor method instead.  <a href="#a5e30750441b92f0246c9d4ece95fc8a0">More...</a><br /></td></tr>
<tr class="separator:a5e30750441b92f0246c9d4ece95fc8a0 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad37844f7ea2c0091a22d011e04c48820 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memTemplParams" colspan="2">template&lt;class PropertyType &gt; </td></tr>
<tr class="memitem:ad37844f7ea2c0091a22d011e04c48820 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#ad37844f7ea2c0091a22d011e04c48820">set_property</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; property_name, const PropertyType&amp; value)</td></tr>
<tr class="memdesc:ad37844f7ea2c0091a22d011e04c48820 inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">You probably want to use a specific property_*() accessor method instead.  <a href="#ad37844f7ea2c0091a22d011e04c48820">More...</a><br /></td></tr>
<tr class="separator:ad37844f7ea2c0091a22d011e04c48820 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f894c9c36ad391fdc85552af67a8530 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memTemplParams" colspan="2">template&lt;class PropertyType &gt; </td></tr>
<tr class="memitem:a5f894c9c36ad391fdc85552af67a8530 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a5f894c9c36ad391fdc85552af67a8530">get_property</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; property_name, PropertyType&amp; value) const </td></tr>
<tr class="memdesc:a5f894c9c36ad391fdc85552af67a8530 inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">You probably want to use a specific property_*() accessor method instead.  <a href="#a5f894c9c36ad391fdc85552af67a8530">More...</a><br /></td></tr>
<tr class="separator:a5f894c9c36ad391fdc85552af67a8530 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adc6c1e8f094275114d6e2c3ef3a33f98 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#adc6c1e8f094275114d6e2c3ef3a33f98">connect_property_changed</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; property_name, const <a class="elRef" href="http://library.gnome.org/devel/libsigc++/unstable/classsigc_1_1slot.html">sigc::slot</a>&lt; void &gt;&amp; slot)</td></tr>
<tr class="memdesc:adc6c1e8f094275114d6e2c3ef3a33f98 inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">You can use the signal_changed() signal of the property proxy instead, but this is necessary when using the reduced API.  <a href="#adc6c1e8f094275114d6e2c3ef3a33f98">More...</a><br /></td></tr>
<tr class="separator:adc6c1e8f094275114d6e2c3ef3a33f98 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a896d7773c00bd2dcd310c861282ee8d1 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1connection.html">sigc::connection</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a896d7773c00bd2dcd310c861282ee8d1">connect_property_changed_with_return</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; property_name, const <a class="elRef" href="http://library.gnome.org/devel/libsigc++/unstable/classsigc_1_1slot.html">sigc::slot</a>&lt; void &gt;&amp; slot)</td></tr>
<tr class="memdesc:a896d7773c00bd2dcd310c861282ee8d1 inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">You can use the signal_changed() signal of the property proxy instead, but this is necessary when using the reduced API.  <a href="#a896d7773c00bd2dcd310c861282ee8d1">More...</a><br /></td></tr>
<tr class="separator:a896d7773c00bd2dcd310c861282ee8d1 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e9e13b75f116c20212d318204ce8ea3 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a6e9e13b75f116c20212d318204ce8ea3">freeze_notify</a> ()</td></tr>
<tr class="memdesc:a6e9e13b75f116c20212d318204ce8ea3 inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Increases the freeze count on object.  <a href="#a6e9e13b75f116c20212d318204ce8ea3">More...</a><br /></td></tr>
<tr class="separator:a6e9e13b75f116c20212d318204ce8ea3 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1bd8ea7bd8c4084ade6b3c27dddf06a4 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a1bd8ea7bd8c4084ade6b3c27dddf06a4">thaw_notify</a> ()</td></tr>
<tr class="memdesc:a1bd8ea7bd8c4084ade6b3c27dddf06a4 inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reverts the effect of a previous call to <a class="el" href="classGlib_1_1ObjectBase.html#a6e9e13b75f116c20212d318204ce8ea3" title="Increases the freeze count on object. ">freeze_notify()</a>.  <a href="#a1bd8ea7bd8c4084ade6b3c27dddf06a4">More...</a><br /></td></tr>
<tr class="separator:a1bd8ea7bd8c4084ade6b3c27dddf06a4 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a896a8a5db20043ea82956e3ef4b9c4ae inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a896a8a5db20043ea82956e3ef4b9c4ae">reference</a> () const </td></tr>
<tr class="memdesc:a896a8a5db20043ea82956e3ef4b9c4ae inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Increment the reference count for this object.  <a href="#a896a8a5db20043ea82956e3ef4b9c4ae">More...</a><br /></td></tr>
<tr class="separator:a896a8a5db20043ea82956e3ef4b9c4ae inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3234b8ffb2a35b927e2978c8f3bfbfe3 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a3234b8ffb2a35b927e2978c8f3bfbfe3">unreference</a> () const </td></tr>
<tr class="memdesc:a3234b8ffb2a35b927e2978c8f3bfbfe3 inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrement the reference count for this object.  <a href="#a3234b8ffb2a35b927e2978c8f3bfbfe3">More...</a><br /></td></tr>
<tr class="separator:a3234b8ffb2a35b927e2978c8f3bfbfe3 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c6efc18be8cb9c56e58fc0bd20fafbe inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">GObject*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a4c6efc18be8cb9c56e58fc0bd20fafbe">gobj</a> ()</td></tr>
<tr class="memdesc:a4c6efc18be8cb9c56e58fc0bd20fafbe inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C GObject.  <a href="#a4c6efc18be8cb9c56e58fc0bd20fafbe">More...</a><br /></td></tr>
<tr class="separator:a4c6efc18be8cb9c56e58fc0bd20fafbe inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a778a94181132976bbfb0519793f3b32e inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">const GObject*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a778a94181132976bbfb0519793f3b32e">gobj</a> () const </td></tr>
<tr class="memdesc:a778a94181132976bbfb0519793f3b32e inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C GObject.  <a href="#a778a94181132976bbfb0519793f3b32e">More...</a><br /></td></tr>
<tr class="separator:a778a94181132976bbfb0519793f3b32e inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b2a5eb93102f1849e5419016e22a15f inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">GObject*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a9b2a5eb93102f1849e5419016e22a15f">gobj_copy</a> () const </td></tr>
<tr class="memdesc:a9b2a5eb93102f1849e5419016e22a15f inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Give a ref-ed copy to someone. Use for direct struct access.  <a href="#a9b2a5eb93102f1849e5419016e22a15f">More...</a><br /></td></tr>
<tr class="separator:a9b2a5eb93102f1849e5419016e22a15f inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a0c4d454f8b892bcfc951740ddaa6f4da"><td class="memItemLeft" align="right" valign="top">static GType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#a0c4d454f8b892bcfc951740ddaa6f4da">get_type</a> ()</td></tr>
<tr class="memdesc:a0c4d454f8b892bcfc951740ddaa6f4da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the GType for this class, for use with the underlying GObject type system.  <a href="#a0c4d454f8b892bcfc951740ddaa6f4da">More...</a><br /></td></tr>
<tr class="separator:a0c4d454f8b892bcfc951740ddaa6f4da"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="related"></a>
Related Functions</h2></td></tr>
<tr><td class="ititle" colspan="2"><p>(Note that these are not member functions.) </p>
</td></tr>
<tr class="memitem:aec580b0fc1e0807d7ccba6cbb7e302db"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1InputStream.html">Gio::InputStream</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1InputStream.html#aec580b0fc1e0807d7ccba6cbb7e302db">wrap</a> (GInputStream* object, bool take_copy=false)</td></tr>
<tr class="memdesc:aec580b0fc1e0807d7ccba6cbb7e302db"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="namespaceGlib.html#a671306f4a3a0cae5ab4d7a9d54886592">Glib::wrap()</a> method for this object.  <a href="#aec580b0fc1e0807d7ccba6cbb7e302db">More...</a><br /></td></tr>
<tr class="separator:aec580b0fc1e0807d7ccba6cbb7e302db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header related_classGlib_1_1Object"><td colspan="2" onclick="javascript:toggleInherit('related_classGlib_1_1Object')"><img src="closed.png" alt="-"/>&#160;Related Functions inherited from <a class="el" href="classGlib_1_1Object.html">Glib::Object</a></td></tr>
<tr class="memitem:ae4dea9a8dc611d6e4400a5b6a3cb4e7f inherit related_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGlib_1_1Object.html">Glib::Object</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#ae4dea9a8dc611d6e4400a5b6a3cb4e7f">wrap</a> (GObject* object, bool take_copy=false)</td></tr>
<tr class="separator:ae4dea9a8dc611d6e4400a5b6a3cb4e7f inherit related_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_types_classGlib_1_1Object"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classGlib_1_1Object')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classGlib_1_1Object.html">Glib::Object</a></td></tr>
<tr class="memitem:a1d8d9f3c19b59eda96c40beca8d520e0 inherit pub_types_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#a1d8d9f3c19b59eda96c40beca8d520e0">DestroyNotify</a> )(gpointer data)</td></tr>
<tr class="separator:a1d8d9f3c19b59eda96c40beca8d520e0 inherit pub_types_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classGlib_1_1Object"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classGlib_1_1Object')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classGlib_1_1Object.html">Glib::Object</a></td></tr>
<tr class="memitem:ad43f7c5ad0336e1eb3af622392a112eb inherit pro_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#ad43f7c5ad0336e1eb3af622392a112eb">Object</a> ()</td></tr>
<tr class="separator:ad43f7c5ad0336e1eb3af622392a112eb inherit pro_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d72588496bd7ac03f72420021fb94a5 inherit pro_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#a6d72588496bd7ac03f72420021fb94a5">Object</a> (const Glib::ConstructParams&amp; construct_params)</td></tr>
<tr class="separator:a6d72588496bd7ac03f72420021fb94a5 inherit pro_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f490eeaeb71db673c36799a0f729be5 inherit pro_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#a6f490eeaeb71db673c36799a0f729be5">Object</a> (GObject* castitem)</td></tr>
<tr class="separator:a6f490eeaeb71db673c36799a0f729be5 inherit pro_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ae4319439a3a03d8f803fb5a27f12df inherit pro_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#a5ae4319439a3a03d8f803fb5a27f12df">~Object</a> ()</td></tr>
<tr class="separator:a5ae4319439a3a03d8f803fb5a27f12df inherit pro_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classGlib_1_1ObjectBase"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classGlib_1_1ObjectBase')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classGlib_1_1ObjectBase.html">Glib::ObjectBase</a></td></tr>
<tr class="memitem:a27d3451d9ca28d6a2f00838d7c56d545 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a27d3451d9ca28d6a2f00838d7c56d545">ObjectBase</a> ()</td></tr>
<tr class="memdesc:a27d3451d9ca28d6a2f00838d7c56d545 inherit pro_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">This default constructor is called implicitly from the constructor of user-derived classes, even if, for instance, Gtk::Button calls a different <a class="el" href="classGlib_1_1ObjectBase.html" title="Glib::ObjectBase is a common base class for Objects and Interfaces. ">ObjectBase</a> constructor.  <a href="#a27d3451d9ca28d6a2f00838d7c56d545">More...</a><br /></td></tr>
<tr class="separator:a27d3451d9ca28d6a2f00838d7c56d545 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4ef18214894c6874579313ab21d1018 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#ad4ef18214894c6874579313ab21d1018">ObjectBase</a> (const char* custom_type_name)</td></tr>
<tr class="memdesc:ad4ef18214894c6874579313ab21d1018 inherit pro_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">A derived constructor always overrides this choice.  <a href="#ad4ef18214894c6874579313ab21d1018">More...</a><br /></td></tr>
<tr class="separator:ad4ef18214894c6874579313ab21d1018 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d59b4d85b0ee72a727e6b2e1b31a2ff inherit pro_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a3d59b4d85b0ee72a727e6b2e1b31a2ff">ObjectBase</a> (const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a00947.html">std::type_info</a>&amp; custom_type_info)</td></tr>
<tr class="memdesc:a3d59b4d85b0ee72a727e6b2e1b31a2ff inherit pro_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">This constructor is a special feature to allow creation of derived types on the fly, without having to use g_object_new() manually.  <a href="#a3d59b4d85b0ee72a727e6b2e1b31a2ff">More...</a><br /></td></tr>
<tr class="separator:a3d59b4d85b0ee72a727e6b2e1b31a2ff inherit pro_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42ac047a06c36c2d9c75f7cffc537dc4 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a42ac047a06c36c2d9c75f7cffc537dc4">~ObjectBase</a> ()=0</td></tr>
<tr class="separator:a42ac047a06c36c2d9c75f7cffc537dc4 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3faafb14c4f0ca60fbf0f5f5c4d549d0 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a3faafb14c4f0ca60fbf0f5f5c4d549d0">initialize</a> (GObject* castitem)</td></tr>
<tr class="separator:a3faafb14c4f0ca60fbf0f5f5c4d549d0 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Base class for implementing streaming input. </p>
<dl class="since_2_16"><dt><b><a class="el" href="since_2_16.html#_since_2_16000037">Since glibmm 2.16:</a></b></dt><dd></dd></dl>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="afff624e3125add13c88e8a99907ba903"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual Gio::InputStream::~InputStream </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a1b76b2503e607475f63731a886456e09"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Gio::InputStream::close </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp;&#160;</td>
          <td class="paramname"><em>cancellable</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Closes the stream, releasing resources related to it. </p>
<p>Once the stream is closed, all other operations will throw a <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> with CLOSED. Closing a stream multiple times will not return an error.</p>
<p>Streams will be automatically closed when the last reference is dropped, but you might want to call this function to make sure resources are released as early as possible.</p>
<p>Some streams might keep the backing store of the stream (e.g. a file descriptor) open after the stream is closed. See the documentation for the individual stream for details.</p>
<p>On failure the first error that happened will be reported, but the close operation will finish as much as possible. A stream that failed to close will still throw a <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> with CLOSED for all operations. Still, it is important to check and report the error to the user.</p>
<p>The operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, a <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> will be thrown with CANCELLED. Cancelling a close will still leave the stream closed, but some streams can use a faster close that doesn't block to e.g. check errors.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">cancellable</td><td><a class="el" href="classGio_1_1Cancellable.html" title="Allows actions to be cancelled. ">Cancellable</a> object. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> on success, <code>false</code> on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="a7a3202cf7014bcfb2c0a7f301448ae50"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Gio::InputStream::close </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>A <a class="el" href="classGio_1_1InputStream.html#a7a3202cf7014bcfb2c0a7f301448ae50" title="A close() convenience overload. ">close()</a> convenience overload. </p>

</div>
</div>
<a class="anchor" id="af66159778ee2d577e9df52063ced53bf"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gio::InputStream::close_async </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="namespaceGio.html#aecaa02709f9ab83fa2b36d2571665cbe">SlotAsyncReady</a>&amp;&#160;</td>
          <td class="paramname"><em>slot</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp;&#160;</td>
          <td class="paramname"><em>cancellable</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>io_priority</em> = <code><a class="el" href="namespaceGlib.html#a0c450f82b9e34689e2dda2038ba7834fa597ed3aa6067516c9c752896f3816b5e">Glib::PRIORITY_DEFAULT</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Requests an asynchronous closes of the stream, releasing resources related to it. </p>
<p>When the operation is finished <em>slot</em> will be called. You can then call <a class="el" href="classGio_1_1InputStream.html#ae5a0d2c3ccf27661e374f151117a8fb7" title="Finishes closing a stream asynchronously, started from g_input_stream_close_async(). ">close_finish()</a> to get the result of the operation.</p>
<p>For behaviour details see <a class="el" href="classGio_1_1InputStream.html#a7a3202cf7014bcfb2c0a7f301448ae50" title="A close() convenience overload. ">close()</a>.</p>
<p>The asyncronous methods have a default fallback that uses threads to implement asynchronicity, so they are optional for inheriting classes. However, if you override one you must override all.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slot</td><td>Callback to call when the request is satisfied. </td></tr>
    <tr><td class="paramname">cancellable</td><td>A <a class="el" href="classGio_1_1Cancellable.html" title="Allows actions to be cancelled. ">Cancellable</a> object. </td></tr>
    <tr><td class="paramname">io_priority</td><td>The I/O priority of the request. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ab5160982124f34ed6e475776acd126d2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gio::InputStream::close_async </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="namespaceGio.html#aecaa02709f9ab83fa2b36d2571665cbe">SlotAsyncReady</a>&amp;&#160;</td>
          <td class="paramname"><em>slot</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>io_priority</em> = <code><a class="el" href="namespaceGlib.html#a0c450f82b9e34689e2dda2038ba7834fa597ed3aa6067516c9c752896f3816b5e">Glib::PRIORITY_DEFAULT</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Requests an asynchronous closes of the stream, releasing resources related to it. </p>
<p>When the operation is finished <em>slot</em> will be called. You can then call <a class="el" href="classGio_1_1InputStream.html#ae5a0d2c3ccf27661e374f151117a8fb7" title="Finishes closing a stream asynchronously, started from g_input_stream_close_async(). ">close_finish()</a> to get the result of the operation.</p>
<p>For behaviour details see <a class="el" href="classGio_1_1InputStream.html#a7a3202cf7014bcfb2c0a7f301448ae50" title="A close() convenience overload. ">close()</a>.</p>
<p>The asyncronous methods have a default fallback that uses threads to implement asynchronicity, so they are optional for inheriting classes. However, if you override one you must override all.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slot</td><td>Callback to call when the request is satisfied. </td></tr>
    <tr><td class="paramname">io_priority</td><td>The I/O priority of the request. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ae5a0d2c3ccf27661e374f151117a8fb7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">gboolean Gio::InputStream::close_finish </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1AsyncResult.html">AsyncResult</a> &gt;&amp;&#160;</td>
          <td class="paramname"><em>result</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Finishes closing a stream asynchronously, started from g_input_stream_close_async(). </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">result</td><td>A <a class="el" href="classGio_1_1AsyncResult.html" title="Provides a base class for implementing asynchronous function results. ">AsyncResult</a>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if the stream was closed successfully. </dd></dl>

</div>
</div>
<a class="anchor" id="a0c4d454f8b892bcfc951740ddaa6f4da"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static GType Gio::InputStream::get_type </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get the GType for this class, for use with the underlying GObject type system. </p>

</div>
</div>
<a class="anchor" id="a2ed1120b3d03a12086e7f0ed3946aba1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">GInputStream* Gio::InputStream::gobj </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Provides access to the underlying C GObject. </p>

</div>
</div>
<a class="anchor" id="a1b0ef82ab81b3ded607584c7029fe1e9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const GInputStream* Gio::InputStream::gobj </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Provides access to the underlying C GObject. </p>

</div>
</div>
<a class="anchor" id="a28a9394b07e9183c0c79798ea344c65c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GInputStream* Gio::InputStream::gobj_copy </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. </p>

</div>
</div>
<a class="anchor" id="a49a1f4219f96c7fafdcf1ed12eb443e2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">gssize Gio::InputStream::read </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">gsize&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp;&#160;</td>
          <td class="paramname"><em>cancellable</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Tries to read <em>count</em> bytes from the stream into the buffer starting at <em>buffer</em>. </p>
<p>Will block during this read.</p>
<p>If count is zero returns zero and does nothing. A value of <em>count</em> larger than MAXSSIZE will cause a <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> with INVALID_ARGUMENT to be thrown.</p>
<p>On success, the number of bytes read into the buffer is returned. It is not an error if this is not the same as the requested size, as it can happen e.g. near the end of a file. Zero is returned on end of file (or if <em>count</em> is zero), but never otherwise.</p>
<p>The operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, a <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> will be thrown with CANCELLED. If an operation was partially finished when the operation was cancelled the partial result will be returned, without an error.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">buffer</td><td>A buffer to read data into (which should be at least count bytes long). </td></tr>
    <tr><td class="paramname">count</td><td>The number of bytes that will be read from the stream. </td></tr>
    <tr><td class="paramname">cancellable</td><td><a class="el" href="classGio_1_1Cancellable.html" title="Allows actions to be cancelled. ">Cancellable</a> object. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of bytes read, or -1 on error. </dd></dl>

</div>
</div>
<a class="anchor" id="a42ab2486116d40f6ef828277befb508a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">gssize Gio::InputStream::read </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">gsize&#160;</td>
          <td class="paramname"><em>count</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>A <a class="el" href="classGio_1_1InputStream.html#a49a1f4219f96c7fafdcf1ed12eb443e2" title="Tries to read count bytes from the stream into the buffer starting at buffer. ">read()</a> convenience overload. </p>

</div>
</div>
<a class="anchor" id="a1dc8a2babf32f93a0a5dccc0c39e0959"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Gio::InputStream::read_all </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">gsize&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">gsize &amp;&#160;</td>
          <td class="paramname"><em>bytes_read</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp;&#160;</td>
          <td class="paramname"><em>cancellable</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Tries to read <em>count</em> bytes from the stream into the buffer starting at <em>buffer</em>. </p>
<p>Will block during this read.</p>
<p>This function is similar to g_input_stream_read(), except it tries to read as many bytes as requested, only stopping on an error or end of stream.</p>
<p>On a successful read of <em>count</em> bytes, or if we reached the end of the stream, <code>true</code> is returned, and <em>bytes_read</em> is set to the number of bytes read into <em>buffer</em>.</p>
<p>If there is an error during the operation <code>false</code> is returned and <em>error</em> is set to indicate the error status, <em>bytes_read</em> is updated to contain the number of bytes read into <em>buffer</em> before the error occurred.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">buffer</td><td>A buffer to read data into (which should be at least count bytes long). </td></tr>
    <tr><td class="paramname">count</td><td>The number of bytes that will be read from the stream. </td></tr>
    <tr><td class="paramname">bytes_read</td><td>Location to store the number of bytes that was read from the stream. </td></tr>
    <tr><td class="paramname">cancellable</td><td>Optional <a class="el" href="classGio_1_1Cancellable.html" title="Allows actions to be cancelled. ">Cancellable</a> object, <code>0</code> to ignore. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> on success, <code>false</code> if there was an error. </dd></dl>

</div>
</div>
<a class="anchor" id="a6da0fc57d1a5df7107370c67e84aa496"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Gio::InputStream::read_all </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">gsize&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">gsize &amp;&#160;</td>
          <td class="paramname"><em>bytes_read</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>A <a class="el" href="classGio_1_1InputStream.html#a1dc8a2babf32f93a0a5dccc0c39e0959" title="Tries to read count bytes from the stream into the buffer starting at buffer. ">read_all()</a> convenience overload. </p>

</div>
</div>
<a class="anchor" id="a5b7762ee3f3c571fbc59a0c9af6e879e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gio::InputStream::read_async </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">gsize&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="namespaceGio.html#aecaa02709f9ab83fa2b36d2571665cbe">SlotAsyncReady</a>&amp;&#160;</td>
          <td class="paramname"><em>slot</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp;&#160;</td>
          <td class="paramname"><em>cancellable</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>io_priority</em> = <code><a class="el" href="namespaceGlib.html#a0c450f82b9e34689e2dda2038ba7834fa597ed3aa6067516c9c752896f3816b5e">Glib::PRIORITY_DEFAULT</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Request an asynchronous read of <em>count</em> bytes from the stream into the buffer starting at <em>buffer</em>. </p>
<p>When the operation is finished <em>slot</em> will be called. You can then call <a class="el" href="classGio_1_1InputStream.html#ac089ab220e671ba0af2dd97f2405c0c5" title="Finishes an asynchronous stream read operation. ">read_finish()</a> to get the result of the operation.</p>
<p>During an async request no other sync and async calls are allowed, and will result in <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> with PENDING being thrown.</p>
<p>A value of <em>count</em> larger than MAXSSIZE will cause a <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> with INVALID_ARGUMENT to be thrown.</p>
<p>On success, the number of bytes read into the buffer will be passed to the <em>slot</em> callback. It is not an error if this is not the same as the requested size, as it can happen e.g. near the end of a file, but generally we try to read as many bytes as requested. Zero is returned on end of file (or if <em>count</em> is zero), but never otherwise.</p>
<p>Any outstanding i/o request with higher priority (lower numerical value) will be executed before an outstanding request with lower priority. Default priority is PRIORITY_DEFAULT.</p>
<p>The asyncronous methods have a default fallback that uses threads to implement asynchronicity, so they are optional for inheriting classes. However, if you override one you must override all.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">buffer</td><td>A buffer to read data into (which should be at least count bytes long). </td></tr>
    <tr><td class="paramname">count</td><td>The number of bytes that will be read from the stream. </td></tr>
    <tr><td class="paramname">slot</td><td>Callback to call when the request is satisfied. </td></tr>
    <tr><td class="paramname">cancellable</td><td>A <a class="el" href="classGio_1_1Cancellable.html" title="Allows actions to be cancelled. ">Cancellable</a> object. </td></tr>
    <tr><td class="paramname">io_priority</td><td>The I/O priority of the request. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a05bea76fa9ac3c098a167d2b377e36a6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gio::InputStream::read_async </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">gsize&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="namespaceGio.html#aecaa02709f9ab83fa2b36d2571665cbe">SlotAsyncReady</a>&amp;&#160;</td>
          <td class="paramname"><em>slot</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>io_priority</em> = <code><a class="el" href="namespaceGlib.html#a0c450f82b9e34689e2dda2038ba7834fa597ed3aa6067516c9c752896f3816b5e">Glib::PRIORITY_DEFAULT</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Request an asynchronous read of <em>count</em> bytes from the stream into the buffer starting at <em>buffer</em>. </p>
<p>When the operation is finished <em>slot</em> will be called. You can then call <a class="el" href="classGio_1_1InputStream.html#ac089ab220e671ba0af2dd97f2405c0c5" title="Finishes an asynchronous stream read operation. ">read_finish()</a> to get the result of the operation.</p>
<p>During an async request no other sync and async calls are allowed, and will result in a <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> with PENDING being thrown.</p>
<p>A value of <em>count</em> larger than MAXSSIZE will cause a <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> with INVALID_ARGUMENT to be thrown.</p>
<p>On success, the number of bytes read into the buffer will be passed to the <em>slot</em> callback. It is not an error if this is not the same as the requested size, as it can happen e.g. near the end of a file, but generally we try to read as many bytes as requested. Zero is returned on end of file (or if <em>count</em> is zero), but never otherwise.</p>
<p>Any outstanding i/o request with higher priority (lower numerical value) will be executed before an outstanding request with lower priority. Default priority is PRIORITY_DEFAULT.</p>
<p>The asyncronous methods have a default fallback that uses threads to implement asynchronicity, so they are optional for inheriting classes. However, if you override one you must override all.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">buffer</td><td>A buffer to read data into (which should be at least count bytes long). </td></tr>
    <tr><td class="paramname">count</td><td>The number of bytes that will be read from the stream. </td></tr>
    <tr><td class="paramname">slot</td><td>Callback to call when the request is satisfied. </td></tr>
    <tr><td class="paramname">io_priority</td><td>The I/O priority of the request. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="af59e44aed65ee329e01d6ca6179e97b9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt;<a class="el" href="classGlib_1_1Bytes.html">Glib::Bytes</a>&gt; Gio::InputStream::read_bytes </td>
          <td>(</td>
          <td class="paramtype">gsize&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp;&#160;</td>
          <td class="paramname"><em>cancellable</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Like g_input_stream_read(), this tries to read <em>count</em> bytes from the stream in a blocking fashion. </p>
<p>However, rather than reading into a user-supplied buffer, this will create a new Bytes containing the data that was read. This may be easier to use from language bindings.</p>
<p>If count is zero, returns a zero-length Bytes and does nothing. A value of <em>count</em> larger than MAXSSIZE will cause a IO_ERROR_INVALID_ARGUMENT error.</p>
<p>On success, a new Bytes is returned. It is not an error if the size of this object is not the same as the requested size, as it can happen e.g. near the end of a file. A zero-length Bytes is returned on end of file (or if <em>count</em> is zero), but never otherwise.</p>
<p>If <em>cancellable</em> is not <code>0</code>, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error IO_ERROR_CANCELLED will be returned. If an operation was partially finished when the operation was cancelled the partial result will be returned, without an error.</p>
<p>On error <code>0</code> is returned and <em>error</em> is set accordingly.</p>
<dl class="since_2_34"><dt><b><a class="el" href="since_2_34.html#_since_2_34000045">Since glibmm 2.34:</a></b></dt><dd></dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">count</td><td>Maximum number of bytes that will be read from the stream. Common values include 4096 and 8192. </td></tr>
    <tr><td class="paramname">cancellable</td><td>Optional <a class="el" href="classGio_1_1Cancellable.html" title="Allows actions to be cancelled. ">Cancellable</a> object, <code>0</code> to ignore. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A new Bytes, or <code>0</code> on error. </dd></dl>

</div>
</div>
<a class="anchor" id="a9653d83a56cef6201286ff5f4b709050"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gio::InputStream::read_bytes_async </td>
          <td>(</td>
          <td class="paramtype">gsize&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="namespaceGio.html#aecaa02709f9ab83fa2b36d2571665cbe">SlotAsyncReady</a>&amp;&#160;</td>
          <td class="paramname"><em>slot</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp;&#160;</td>
          <td class="paramname"><em>cancellable</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>io_priority</em> = <code><a class="el" href="namespaceGlib.html#a0c450f82b9e34689e2dda2038ba7834fa597ed3aa6067516c9c752896f3816b5e">Glib::PRIORITY_DEFAULT</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Request an asynchronous read of <em>count</em> bytes from the stream into a new <a class="el" href="classGlib_1_1Bytes.html" title="A simple refcounted data type representing an immutable byte sequence from an unspecified origin...">Glib::Bytes</a>. </p>
<p>When the operation is finished <em>slot</em> will be called. You can then call <a class="el" href="classGio_1_1InputStream.html#a0b38e525397cddd9ae4b2ebb395ba3b3" title="Finishes an asynchronous stream read-into-Bytes operation. ">read_bytes_finish()</a> to get the result of the operation.</p>
<p>During an async request no other sync and async calls are allowed, and will result in <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> with PENDING being thrown.</p>
<p>A value of <em>count</em> larger than MAXSSIZE will cause a <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> with INVALID_ARGUMENT to be thrown.</p>
<p>On success, the new <a class="el" href="classGlib_1_1Bytes.html" title="A simple refcounted data type representing an immutable byte sequence from an unspecified origin...">Glib::Bytes</a> will be passed to the callback. It is not an error if this is smaller than the requested size, as it can happen e.g. near the end of a file, but generally we try to read as many bytes as requested. Zero is returned on end of file (or if <em>count</em> is zero), but never otherwise.</p>
<p>Any outstanding I/O request with higher priority (lower numerical value) will be executed before an outstanding request with lower priority. The default priority is PRIORITY_DEFAULT.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">count</td><td>The number of bytes that will be read from the stream. </td></tr>
    <tr><td class="paramname">slot</td><td>Callback to call when the request is satisfied. </td></tr>
    <tr><td class="paramname">cancellable</td><td>A <a class="el" href="classGio_1_1Cancellable.html" title="Allows actions to be cancelled. ">Cancellable</a> object. </td></tr>
    <tr><td class="paramname">io_priority</td><td>The I/O priority of the request.</td></tr>
  </table>
  </dd>
</dl>
<dl class="since_2_34"><dt><b><a class="el" href="since_2_34.html#_since_2_34000046">Since glibmm 2.34:</a></b></dt><dd></dd></dl>

</div>
</div>
<a class="anchor" id="af70a7c9073f6a494c8fac975530130c9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gio::InputStream::read_bytes_async </td>
          <td>(</td>
          <td class="paramtype">gsize&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="namespaceGio.html#aecaa02709f9ab83fa2b36d2571665cbe">SlotAsyncReady</a>&amp;&#160;</td>
          <td class="paramname"><em>slot</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>io_priority</em> = <code><a class="el" href="namespaceGlib.html#a0c450f82b9e34689e2dda2038ba7834fa597ed3aa6067516c9c752896f3816b5e">Glib::PRIORITY_DEFAULT</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Request an asynchronous read of <em>count</em> bytes from the stream into a new <a class="el" href="classGlib_1_1Bytes.html" title="A simple refcounted data type representing an immutable byte sequence from an unspecified origin...">Glib::Bytes</a>. </p>
<p>When the operation is finished <em>slot</em> will be called. You can then call <a class="el" href="classGio_1_1InputStream.html#a0b38e525397cddd9ae4b2ebb395ba3b3" title="Finishes an asynchronous stream read-into-Bytes operation. ">read_bytes_finish()</a> to get the result of the operation.</p>
<p>During an async request no other sync and async calls are allowed, and will result in <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> with PENDING being thrown.</p>
<p>A value of <em>count</em> larger than MAXSSIZE will cause a <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> with INVALID_ARGUMENT to be thrown.</p>
<p>On success, the new <a class="el" href="classGlib_1_1Bytes.html" title="A simple refcounted data type representing an immutable byte sequence from an unspecified origin...">Glib::Bytes</a> will be passed to the callback. It is not an error if this is smaller than the requested size, as it can happen e.g. near the end of a file, but generally we try to read as many bytes as requested. Zero is returned on end of file (or if <em>count</em> is zero), but never otherwise.</p>
<p>Any outstanding I/O request with higher priority (lower numerical value) will be executed before an outstanding request with lower priority. The default priority is PRIORITY_DEFAULT.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">count</td><td>The number of bytes that will be read from the stream. </td></tr>
    <tr><td class="paramname">slot</td><td>Callback to call when the request is satisfied.h </td></tr>
    <tr><td class="paramname">io_priority</td><td>The I/O priority of the request.</td></tr>
  </table>
  </dd>
</dl>
<dl class="since_2_34"><dt><b><a class="el" href="since_2_34.html#_since_2_34000047">Since glibmm 2.34:</a></b></dt><dd></dd></dl>

</div>
</div>
<a class="anchor" id="a0b38e525397cddd9ae4b2ebb395ba3b3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt;<a class="el" href="classGlib_1_1Bytes.html">Glib::Bytes</a>&gt; Gio::InputStream::read_bytes_finish </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1AsyncResult.html">AsyncResult</a> &gt;&amp;&#160;</td>
          <td class="paramname"><em>result</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Finishes an asynchronous stream read-into-Bytes operation. </p>
<dl class="since_2_34"><dt><b><a class="el" href="since_2_34.html#_since_2_34000048">Since glibmm 2.34:</a></b></dt><dd></dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">result</td><td>A <a class="el" href="classGio_1_1AsyncResult.html" title="Provides a base class for implementing asynchronous function results. ">AsyncResult</a>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The newly-allocated Bytes, or <code>0</code> on error. </dd></dl>

</div>
</div>
<a class="anchor" id="ac089ab220e671ba0af2dd97f2405c0c5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">gssize Gio::InputStream::read_finish </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1AsyncResult.html">AsyncResult</a> &gt;&amp;&#160;</td>
          <td class="paramname"><em>result</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Finishes an asynchronous stream read operation. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">result</td><td>A <a class="el" href="classGio_1_1AsyncResult.html" title="Provides a base class for implementing asynchronous function results. ">AsyncResult</a>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of bytes read in, or -1 on error, or 0 on end of file. </dd></dl>

</div>
</div>
<a class="anchor" id="a17ea65f35c15043156db90af831a44a3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">gssize Gio::InputStream::skip </td>
          <td>(</td>
          <td class="paramtype">gsize&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp;&#160;</td>
          <td class="paramname"><em>cancellable</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Tries to skip <em>count</em> bytes from the stream. </p>
<p>Will block during the operation.</p>
<p>This is identical to g_input_stream_read(), from a behaviour standpoint, but the bytes that are skipped are not returned to the user. Some streams have an implementation that is more efficient than reading the data.</p>
<p>This function is optional for inherited classes, as the default implementation emulates it using read.</p>
<p>The operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, a <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> will be thrown with CANCELLED. If an operation was partially finished when the operation was cancelled the partial result will be returned, without an error.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">count</td><td>The number of bytes that will be skipped from the stream. </td></tr>
    <tr><td class="paramname">cancellable</td><td><a class="el" href="classGio_1_1Cancellable.html" title="Allows actions to be cancelled. ">Cancellable</a> object. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of bytes skipped, or -1 on error. </dd></dl>

</div>
</div>
<a class="anchor" id="a1ea9146d612c666168886734b79a5d65"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">gssize Gio::InputStream::skip </td>
          <td>(</td>
          <td class="paramtype">gsize&#160;</td>
          <td class="paramname"><em>count</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>A <a class="el" href="classGio_1_1InputStream.html#a17ea65f35c15043156db90af831a44a3" title="Tries to skip count bytes from the stream. ">skip()</a> convenience overload. </p>

</div>
</div>
<a class="anchor" id="a1bf7a4a30005813b0a46e069215907a2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gio::InputStream::skip_async </td>
          <td>(</td>
          <td class="paramtype">gsize&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="namespaceGio.html#aecaa02709f9ab83fa2b36d2571665cbe">SlotAsyncReady</a>&amp;&#160;</td>
          <td class="paramname"><em>slot</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> &gt;&amp;&#160;</td>
          <td class="paramname"><em>cancellable</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>io_priority</em> = <code><a class="el" href="namespaceGlib.html#a0c450f82b9e34689e2dda2038ba7834fa597ed3aa6067516c9c752896f3816b5e">Glib::PRIORITY_DEFAULT</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Request an asynchronous skip of <em>count</em> bytes from the stream into the buffer starting at <em>buffer</em>. </p>
<p>When the operation is finished <em>slot</em> will be called. You can then call <a class="el" href="classGio_1_1InputStream.html#a1522468bd203ab3082ab54e9eba68b03" title="Finishes a stream skip operation. ">skip_finish()</a> to get the result of the operation.</p>
<p>During an async request no other sync and async calls are allowed, and will result in <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> with PENDING being thrown.</p>
<p>A value of <em>count</em> larger than MAXSSIZE will cause a <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> with INVALID_ARGUMENT to be thrown.</p>
<p>On success, the number of bytes skipped will be passed to the callback. It is not an error if this is not the same as the requested size, as it can happen e.g. near the end of a file, but generally we try to skip as many bytes as requested. Zero is returned on end of file (or if <em>count</em> is zero), but never otherwise.</p>
<p>Any outstanding i/o request with higher priority (lower numerical value) will be executed before an outstanding request with lower priority. Default priority is PRIORITY_DEFAULT.</p>
<p>The asyncronous methods have a default fallback that uses threads to implement asynchronicity, so they are optional for inheriting classes. However, if you override one you must override all.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">count</td><td>The number of bytes that will be skipped from the stream. </td></tr>
    <tr><td class="paramname">slot</td><td>Callback to call when the request is satisfied. </td></tr>
    <tr><td class="paramname">cancellable</td><td>A <a class="el" href="classGio_1_1Cancellable.html" title="Allows actions to be cancelled. ">Cancellable</a> object. </td></tr>
    <tr><td class="paramname">io_priority</td><td>The I/O priority of the request. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a111e86dad4548394edcff16d7735d2d5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gio::InputStream::skip_async </td>
          <td>(</td>
          <td class="paramtype">gsize&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="namespaceGio.html#aecaa02709f9ab83fa2b36d2571665cbe">SlotAsyncReady</a>&amp;&#160;</td>
          <td class="paramname"><em>slot</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>io_priority</em> = <code><a class="el" href="namespaceGlib.html#a0c450f82b9e34689e2dda2038ba7834fa597ed3aa6067516c9c752896f3816b5e">Glib::PRIORITY_DEFAULT</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Request an asynchronous skip of <em>count</em> bytes from the stream into the buffer starting at <em>buffer</em>. </p>
<p>When the operation is finished <em>slot</em> will be called. You can then call <a class="el" href="classGio_1_1InputStream.html#a1522468bd203ab3082ab54e9eba68b03" title="Finishes a stream skip operation. ">skip_finish()</a> to get the result of the operation.</p>
<p>During an async request no other sync and async calls are allowed, and will result in <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> with PENDING being thrown.</p>
<p>A value of <em>count</em> larger than MAXSSIZE will cause a <a class="el" href="classGio_1_1Error.html" title="Exception class for giomm errors. ">Gio::Error</a> with INVALID_ARGUMENT to be thrown.</p>
<p>On success, the number of bytes skipped will be passed to the callback. It is not an error if this is not the same as the requested size, as it can happen e.g. near the end of a file, but generally we try to skip as many bytes as requested. Zero is returned on end of file (or if <em>count</em> is zero), but never otherwise.</p>
<p>Any outstanding i/o request with higher priority (lower numerical value) will be executed before an outstanding request with lower priority. Default priority is PRIORITY_DEFAULT.</p>
<p>The asyncronous methods have a default fallback that uses threads to implement asynchronicity, so they are optional for inheriting classes. However, if you override one you must override all.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">count</td><td>The number of bytes that will be skipped from the stream. </td></tr>
    <tr><td class="paramname">slot</td><td>Callback to call when the request is satisfied. </td></tr>
    <tr><td class="paramname">io_priority</td><td>The I/O priority of the request. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a1522468bd203ab3082ab54e9eba68b03"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">gssize Gio::InputStream::skip_finish </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1AsyncResult.html">AsyncResult</a> &gt;&amp;&#160;</td>
          <td class="paramname"><em>result</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Finishes a stream skip operation. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">result</td><td>A <a class="el" href="classGio_1_1AsyncResult.html" title="Provides a base class for implementing asynchronous function results. ">AsyncResult</a>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The size of the bytes skipped, or %-1 on error. </dd></dl>

</div>
</div>
<h2 class="groupheader">Friends And Related Function Documentation</h2>
<a class="anchor" id="aec580b0fc1e0807d7ccba6cbb7e302db"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1InputStream.html">Gio::InputStream</a> &gt; wrap </td>
          <td>(</td>
          <td class="paramtype">GInputStream *&#160;</td>
          <td class="paramname"><em>object</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>take_copy</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">related</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>A <a class="el" href="namespaceGlib.html#a671306f4a3a0cae5ab4d7a9d54886592">Glib::wrap()</a> method for this object. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">object</td><td>The C instance. </td></tr>
    <tr><td class="paramname">take_copy</td><td>False if the result should take ownership of the C instance. True if it should take a new copy or ref. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A C++ instance that wraps this C instance. </dd></dl>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Mon Sep 22 2014 21:38:31 for glibmm by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>