<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <title>glibmm: Gio::IOStream Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body> <!-- Generated by Doxygen 1.7.2 --> <div class="navigation" id="top"> <div class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.html"><span>Classes</span></a></li> <li><a href="examples.html"><span>Examples</span></a></li> </ul> </div> <div class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="classes.html"><span>Class Index</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div class="navpath"> <ul> <li><a class="el" href="namespaceGio.html">Gio</a> </li> <li><a class="el" href="classGio_1_1IOStream.html">IOStream</a> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="#related">Related Functions</a> </div> <div class="headertitle"> <h1>Gio::IOStream Class Reference<br/> <small> [<a class="el" href="group__Streams.html">Stream Classes</a>]</small> </h1> </div> </div> <div class="contents"> <!-- doxytag: class="Gio::IOStream" --><!-- doxytag: inherits="Glib::Object" --> <p><code>#include <giomm/iostream.h></code></p> <!-- startSectionHeader --><div class="dynheader"> Inheritance diagram for Gio::IOStream:<!-- endSectionHeader --></div> <!-- startSectionSummary --><!-- endSectionSummary --><!-- startSectionContent --><div class="dyncontent"> <div class="center"><img src="classGio_1_1IOStream__inherit__graph.png" border="0" usemap="#Gio_1_1IOStream_inherit__map" alt="Inheritance graph"/></div> <map name="Gio_1_1IOStream_inherit__map" id="Gio_1_1IOStream_inherit__map"> <area shape="rect" id="node9" href="classGio_1_1FileIOStream.html" title="FileIOStream provides input streams that take their content from a file." alt="" coords="5,315,136,344"/><area shape="rect" id="node11" href="classGio_1_1SocketConnection.html" title="A socket connection." alt="" coords="160,315,325,344"/><area shape="rect" id="node2" href="classGlib_1_1Object.html" title="Glib::Object" alt="" coords="109,160,203,189"/><area shape="rect" id="node4" href="classGlib_1_1ObjectBase.html" title="Glib::ObjectBase is a common base class for Objects and Interfaces." alt="" coords="93,83,219,112"/><area shape="rect" id="node6" href="../../../libsigc++-2.0/reference/html/structsigc_1_1trackable.html" title="sigc::trackable" alt="" coords="99,5,213,35"/><area shape="rect" id="node13" href="classGio_1_1TcpConnection.html" title="A TCP SocketConnection." alt="" coords="87,392,228,421"/><area shape="rect" id="node15" href="classGio_1_1UnixConnection.html" title="A Unix domain SocketConnection." alt="" coords="252,392,401,421"/></map> <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center><!-- endSectionContent --></div> <p><a href="classGio_1_1IOStream-members.html">List of all members.</a></p> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1IOStream.html#a1257d3a0df6edf25cf1088e4be7144e2">~IOStream</a> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top">GIOStream* </td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1IOStream.html#a6e8d13f8095555cecbe0d59f1542893f">gobj</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Provides access to the underlying C GObject. <a href="#a6e8d13f8095555cecbe0d59f1542893f"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">const GIOStream* </td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1IOStream.html#a94eb81fa811399ece0ef743cd9d178ae">gobj</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Provides access to the underlying C GObject. <a href="#a94eb81fa811399ece0ef743cd9d178ae"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">GIOStream* </td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1IOStream.html#a632594c5b02e0311448e79f6d495c65a">gobj_copy</a> ()</td></tr> <tr><td class="mdescLeft"> </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="#a632594c5b02e0311448e79f6d495c65a"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGio_1_1InputStream.html">InputStream</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1IOStream.html#afab74f0f339afb505556f6cb8b8c2b45">get_input_stream</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Gets the input stream for this object. <a href="#afab74f0f339afb505556f6cb8b8c2b45"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGio_1_1OutputStream.html">OutputStream</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1IOStream.html#acdea8fc29d817070fa9cca124f398930">get_output_stream</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Gets the output stream for this object. <a href="#acdea8fc29d817070fa9cca124f398930"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1IOStream.html#ae22ea1e4e3cd6db48b5e012f35a2306d">close</a> (const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> >& cancellable)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Closes the stream, releasing resources related to it. <a href="#ae22ea1e4e3cd6db48b5e012f35a2306d"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1IOStream.html#a7d9c63eb525827d27f897d6823f719a8">close</a> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1IOStream.html#a289fe0ef58e44117952a2e01985afdd7">close_async</a> (const <a class="elRef" href="../../../libsigc++-2.0/reference/html/classsigc_1_1slot.html">SlotAsyncReady</a>& slot, const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> >& cancellable, int io_priority=Glib::PRIORITY_DEFAULT)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1IOStream.html#a41451e389068b3a61245b43695186ee6">close_async</a> (const <a class="elRef" href="../../../libsigc++-2.0/reference/html/classsigc_1_1slot.html">SlotAsyncReady</a>& slot, int io_priority=Glib::PRIORITY_DEFAULT)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1IOStream.html#a205a044f155178460336bd6efd05554c">close_finish</a> (const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGio_1_1AsyncResult.html">AsyncResult</a> >& result)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Closes a stream. <a href="#a205a044f155178460336bd6efd05554c"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1IOStream.html#a32d887d5d205566fe1cdfd0bf4176a8d">is_closed</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Checks if a stream is closed. <a href="#a32d887d5d205566fe1cdfd0bf4176a8d"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1IOStream.html#afecb3079c5a4adf9fe186b4a44923da3">has_pending</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Checks if a stream has pending actions. <a href="#afecb3079c5a4adf9fe186b4a44923da3"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1IOStream.html#a7217e0c7ef1659a8b293a81e5b2e95e2">set_pending</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sets <em>stream</em> to have actions pending. <a href="#a7217e0c7ef1659a8b293a81e5b2e95e2"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1IOStream.html#ac15dc0ec5596a9bb5ee174ea70a2b59d">clear_pending</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Clears the pending flag on <em>stream</em>. <a href="#ac15dc0ec5596a9bb5ee174ea70a2b59d"></a><br/></td></tr> <tr><td colspan="2"><h2><a name="related"></a> Related Functions</h2></td></tr> <tr><td colspan="2"><p>(Note that these are not member functions.) </p> <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGio_1_1IOStream.html">Gio::IOStream</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1IOStream.html#a13101385680c3857e7027d78e1f6259a">wrap</a> (GIOStream* object, bool take_copy=false)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A <a class="el" href="namespaceGlib.html#a671306f4a3a0cae5ab4d7a9d54886592">Glib::wrap()</a> method for this object. <a href="#a13101385680c3857e7027d78e1f6259a"></a><br/></td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <dl class="since_2_22"><dt><b><a class="el" href="since_2_22.html#_since_2_22000060">Since glibmm 2.22:</a></b></dt><dd></dd></dl> <hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="a1257d3a0df6edf25cf1088e4be7144e2"></a><!-- doxytag: member="Gio::IOStream::~IOStream" ref="a1257d3a0df6edf25cf1088e4be7144e2" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual Gio::IOStream::~IOStream </td> <td>(</td> <td class="paramname"> )</td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="ac15dc0ec5596a9bb5ee174ea70a2b59d"></a><!-- doxytag: member="Gio::IOStream::clear_pending" ref="ac15dc0ec5596a9bb5ee174ea70a2b59d" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void Gio::IOStream::clear_pending </td> <td>(</td> <td class="paramname"> )</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Clears the pending flag on <em>stream</em>. </p> <dl class="since_2_22"><dt><b><a class="el" href="since_2_22.html#_since_2_22000068">Since glibmm 2.22:</a></b></dt><dd></dd></dl> </div> </div> <a class="anchor" id="ae22ea1e4e3cd6db48b5e012f35a2306d"></a><!-- doxytag: member="Gio::IOStream::close" ref="ae22ea1e4e3cd6db48b5e012f35a2306d" args="(const Glib::RefPtr< Cancellable > &cancellable)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool Gio::IOStream::close </td> <td>(</td> <td class="paramtype">const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> >& </td> <td class="paramname"> <em>cancellable</em> )</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Closes the stream, releasing resources related to it. </p> <p>This will also closes the individual input and output streams, if they are not already closed.</p> <p>Once the stream is closed, all other operations will return IO_ERROR_CLOSED. Closing a stream multiple times will not return an error.</p> <p>Closing a stream will automatically flush any outstanding buffers in the stream.</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 return IO_ERROR_CLOSED for all operations. Still, it is important to check and report the error to the user, otherwise there might be a loss of data as all data might not be written.</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. 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> <p>The default implementation of this method just calls close on the individual input/output streams.</p> <dl class="since_2_22"><dt><b><a class="el" href="since_2_22.html#_since_2_22000063">Since glibmm 2.22:</a></b></dt><dd></dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <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="return"><dt><b>Returns:</b></dt><dd><code>true</code> on success, <code>false</code> on failure. </dd></dl> </div> </div> <a class="anchor" id="a7d9c63eb525827d27f897d6823f719a8"></a><!-- doxytag: member="Gio::IOStream::close" ref="a7d9c63eb525827d27f897d6823f719a8" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool Gio::IOStream::close </td> <td>(</td> <td class="paramname"> )</td> <td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a289fe0ef58e44117952a2e01985afdd7"></a><!-- doxytag: member="Gio::IOStream::close_async" ref="a289fe0ef58e44117952a2e01985afdd7" args="(const SlotAsyncReady &slot, const Glib::RefPtr< Cancellable > &cancellable, int io_priority=Glib::PRIORITY_DEFAULT)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void Gio::IOStream::close_async </td> <td>(</td> <td class="paramtype">const <a class="elRef" href="../../../libsigc++-2.0/reference/html/classsigc_1_1slot.html">SlotAsyncReady</a> & </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>< <a class="el" href="classGio_1_1Cancellable.html">Cancellable</a> >& </td> <td class="paramname"> <em>cancellable</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>io_priority</em> = <code>Glib::PRIORITY_DEFAULT</code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a41451e389068b3a61245b43695186ee6"></a><!-- doxytag: member="Gio::IOStream::close_async" ref="a41451e389068b3a61245b43695186ee6" args="(const SlotAsyncReady &slot, int io_priority=Glib::PRIORITY_DEFAULT)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void Gio::IOStream::close_async </td> <td>(</td> <td class="paramtype">const <a class="elRef" href="../../../libsigc++-2.0/reference/html/classsigc_1_1slot.html">SlotAsyncReady</a> & </td> <td class="paramname"> <em>slot</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>io_priority</em> = <code>Glib::PRIORITY_DEFAULT</code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a205a044f155178460336bd6efd05554c"></a><!-- doxytag: member="Gio::IOStream::close_finish" ref="a205a044f155178460336bd6efd05554c" args="(const Glib::RefPtr< AsyncResult > &result)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool Gio::IOStream::close_finish </td> <td>(</td> <td class="paramtype">const <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGio_1_1AsyncResult.html">AsyncResult</a> >& </td> <td class="paramname"> <em>result</em> )</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Closes a stream. </p> <dl class="since_2_22"><dt><b><a class="el" href="since_2_22.html#_since_2_22000064">Since glibmm 2.22:</a></b></dt><dd></dd></dl> <dl><dt><b>Parameters:</b></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="return"><dt><b>Returns:</b></dt><dd><code>true</code> if stream was successfully closed, <code>false</code> otherwise. </dd></dl> </div> </div> <a class="anchor" id="afab74f0f339afb505556f6cb8b8c2b45"></a><!-- doxytag: member="Gio::IOStream::get_input_stream" ref="afab74f0f339afb505556f6cb8b8c2b45" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a><<a class="el" href="classGio_1_1InputStream.html">InputStream</a>> Gio::IOStream::get_input_stream </td> <td>(</td> <td class="paramname"> )</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Gets the input stream for this object. </p> <p>This is used for reading.</p> <dl class="since_2_22"><dt><b><a class="el" href="since_2_22.html#_since_2_22000061">Since glibmm 2.22:</a></b></dt><dd></dd></dl> <dl class="return"><dt><b>Returns:</b></dt><dd>A <a class="el" href="classGio_1_1InputStream.html" title="Base class for implementing streaming input.">InputStream</a>, owned by the <a class="el" href="classGio_1_1IOStream.html">IOStream</a>. Do not free. </dd></dl> </div> </div> <a class="anchor" id="acdea8fc29d817070fa9cca124f398930"></a><!-- doxytag: member="Gio::IOStream::get_output_stream" ref="acdea8fc29d817070fa9cca124f398930" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a><<a class="el" href="classGio_1_1OutputStream.html">OutputStream</a>> Gio::IOStream::get_output_stream </td> <td>(</td> <td class="paramname"> )</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Gets the output stream for this object. </p> <p>This is used for writing.</p> <dl class="since_2_22"><dt><b><a class="el" href="since_2_22.html#_since_2_22000062">Since glibmm 2.22:</a></b></dt><dd></dd></dl> <dl class="return"><dt><b>Returns:</b></dt><dd>A <a class="el" href="classGio_1_1OutputStream.html" title="Base class for implementing streaming output.">OutputStream</a>, owned by the <a class="el" href="classGio_1_1IOStream.html">IOStream</a>. Do not free. </dd></dl> </div> </div> <a class="anchor" id="a94eb81fa811399ece0ef743cd9d178ae"></a><!-- doxytag: member="Gio::IOStream::gobj" ref="a94eb81fa811399ece0ef743cd9d178ae" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const GIOStream* Gio::IOStream::gobj </td> <td>(</td> <td class="paramname"> )</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Provides access to the underlying C GObject. </p> <p>Reimplemented from <a class="el" href="classGlib_1_1ObjectBase.html#a778a94181132976bbfb0519793f3b32e">Glib::ObjectBase</a>.</p> <p>Reimplemented in <a class="el" href="classGio_1_1FileIOStream.html#acd384df600b1aea26bd10ca2e74f1b21">Gio::FileIOStream</a>, <a class="el" href="classGio_1_1SocketConnection.html#ad9c7556fe550d295cc67b6d128da1c2d">Gio::SocketConnection</a>, <a class="el" href="classGio_1_1TcpConnection.html#aa572fc2171ec0c880b5883b44ec47f63">Gio::TcpConnection</a>, and <a class="el" href="classGio_1_1UnixConnection.html#a1a22c655f5fe21b9c670eaf1ea01eef7">Gio::UnixConnection</a>.</p> </div> </div> <a class="anchor" id="a6e8d13f8095555cecbe0d59f1542893f"></a><!-- doxytag: member="Gio::IOStream::gobj" ref="a6e8d13f8095555cecbe0d59f1542893f" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GIOStream* Gio::IOStream::gobj </td> <td>(</td> <td class="paramname"> )</td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Provides access to the underlying C GObject. </p> <p>Reimplemented from <a class="el" href="classGlib_1_1ObjectBase.html#a4c6efc18be8cb9c56e58fc0bd20fafbe">Glib::ObjectBase</a>.</p> <p>Reimplemented in <a class="el" href="classGio_1_1FileIOStream.html#a382fe1830e5e347db4ae0d941398c0df">Gio::FileIOStream</a>, <a class="el" href="classGio_1_1SocketConnection.html#a64ee8c7b7af10f959e1ddf0badfdb5d0">Gio::SocketConnection</a>, <a class="el" href="classGio_1_1TcpConnection.html#a508d386c8df898197a17111b751de117">Gio::TcpConnection</a>, and <a class="el" href="classGio_1_1UnixConnection.html#a9aedb22a5a9706ae144b2d4d21f57a45">Gio::UnixConnection</a>.</p> </div> </div> <a class="anchor" id="a632594c5b02e0311448e79f6d495c65a"></a><!-- doxytag: member="Gio::IOStream::gobj_copy" ref="a632594c5b02e0311448e79f6d495c65a" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GIOStream* Gio::IOStream::gobj_copy </td> <td>(</td> <td class="paramname"> )</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> <p>Reimplemented in <a class="el" href="classGio_1_1FileIOStream.html#a2661e78434e66d48a54aa67ddd4d4e53">Gio::FileIOStream</a>, <a class="el" href="classGio_1_1SocketConnection.html#a8aaaeca771edee679c8550972add66ba">Gio::SocketConnection</a>, <a class="el" href="classGio_1_1TcpConnection.html#a20bf39e1c736ae833b61b28ae7782f11">Gio::TcpConnection</a>, and <a class="el" href="classGio_1_1UnixConnection.html#a1372a4da6cbecbad7a80dde274921024">Gio::UnixConnection</a>.</p> </div> </div> <a class="anchor" id="afecb3079c5a4adf9fe186b4a44923da3"></a><!-- doxytag: member="Gio::IOStream::has_pending" ref="afecb3079c5a4adf9fe186b4a44923da3" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool Gio::IOStream::has_pending </td> <td>(</td> <td class="paramname"> )</td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Checks if a stream has pending actions. </p> <dl class="since_2_22"><dt><b><a class="el" href="since_2_22.html#_since_2_22000066">Since glibmm 2.22:</a></b></dt><dd></dd></dl> <dl class="return"><dt><b>Returns:</b></dt><dd><code>true</code> if <em>stream</em> has pending actions. </dd></dl> </div> </div> <a class="anchor" id="a32d887d5d205566fe1cdfd0bf4176a8d"></a><!-- doxytag: member="Gio::IOStream::is_closed" ref="a32d887d5d205566fe1cdfd0bf4176a8d" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool Gio::IOStream::is_closed </td> <td>(</td> <td class="paramname"> )</td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Checks if a stream is closed. </p> <dl class="since_2_22"><dt><b><a class="el" href="since_2_22.html#_since_2_22000065">Since glibmm 2.22:</a></b></dt><dd></dd></dl> <dl class="return"><dt><b>Returns:</b></dt><dd><code>true</code> if the stream is closed. </dd></dl> </div> </div> <a class="anchor" id="a7217e0c7ef1659a8b293a81e5b2e95e2"></a><!-- doxytag: member="Gio::IOStream::set_pending" ref="a7217e0c7ef1659a8b293a81e5b2e95e2" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool Gio::IOStream::set_pending </td> <td>(</td> <td class="paramname"> )</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Sets <em>stream</em> to have actions pending. </p> <p>If the pending flag is already set or <em>stream</em> is closed, it will return <code>false</code> and set <em>error</em>.</p> <dl class="since_2_22"><dt><b><a class="el" href="since_2_22.html#_since_2_22000067">Since glibmm 2.22:</a></b></dt><dd></dd></dl> <dl class="return"><dt><b>Returns:</b></dt><dd><code>true</code> if pending was previously unset and is now set. </dd></dl> </div> </div> <hr/><h2>Friends And Related Function Documentation</h2> <a class="anchor" id="a13101385680c3857e7027d78e1f6259a"></a><!-- doxytag: member="Gio::IOStream::wrap" ref="a13101385680c3857e7027d78e1f6259a" args="(GIOStream *object, bool take_copy=false)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGio_1_1IOStream.html">Gio::IOStream</a> > wrap </td> <td>(</td> <td class="paramtype">GIOStream * </td> <td class="paramname"> <em>object</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"> <em>take_copy</em> = <code>false</code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></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><dt><b>Parameters:</b></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="return"><dt><b>Returns:</b></dt><dd>A C++ instance that wraps this C instance. </dd></dl> </div> </div> </div> <hr class="footer"/><address class="footer"><small>Generated on Tue Apr 5 2011 16:07:13 for glibmm by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.2 </small></address> </body> </html>