uvw/classuvw_1_1PipeHandle.html
2017-10-11 09:11:53 +02:00

593 lines
55 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!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.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>uvw: uvw::PipeHandle 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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.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 id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">uvw
&#160;<span id="projectnumber">1.3.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceuvw.html">uvw</a></li><li class="navelem"><a class="el" href="classuvw_1_1PipeHandle.html">PipeHandle</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classuvw_1_1PipeHandle-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">uvw::PipeHandle Class Reference<span class="mlabels"><span class="mlabel">final</span></span></div> </div>
</div><!--header-->
<div class="contents">
<p>The <a class="el" href="classuvw_1_1PipeHandle.html" title="The PipeHandle handle. ">PipeHandle</a> handle.
<a href="classuvw_1_1PipeHandle.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="pipe_8hpp_source.html">pipe.hpp</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for uvw::PipeHandle:</div>
<div class="dyncontent">
<div class="center"><img src="classuvw_1_1PipeHandle__inherit__graph.png" border="0" usemap="#uvw_1_1PipeHandle_inherit__map" alt="Inheritance graph"/></div>
<map name="uvw_1_1PipeHandle_inherit__map" id="uvw_1_1PipeHandle_inherit__map">
<area shape="rect" id="node2" href="classuvw_1_1StreamHandle.html" title="uvw::StreamHandle\&lt;\l PipeHandle, uv_pipe_t \&gt;" alt="" coords="75,273,245,315"/>
<area shape="rect" id="node3" href="classuvw_1_1Handle.html" title="uvw::Handle\&lt; PipeHandle,\l uv_pipe_t \&gt;" alt="" coords="71,184,249,225"/>
<area shape="rect" id="node4" href="structuvw_1_1BaseHandle.html" title="Untyped handle class. " alt="" coords="5,102,131,129"/>
<area shape="rect" id="node5" href="classuvw_1_1Resource.html" title="uvw::Resource\&lt; PipeHandle,\l uv_pipe_t \&gt;" alt="" coords="155,95,349,136"/>
<area shape="rect" id="node6" href="classuvw_1_1UnderlyingType.html" title="uvw::UnderlyingType\l\&lt; PipeHandle, uv_pipe_t \&gt;" alt="" coords="61,5,238,47"/>
<area shape="rect" id="node7" href="classuvw_1_1Emitter.html" title="uvw::Emitter\&lt; PipeHandle \&gt;" alt="" coords="263,13,449,39"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for uvw::PipeHandle:</div>
<div class="dyncontent">
<div class="center"><img src="classuvw_1_1PipeHandle__coll__graph.png" border="0" usemap="#uvw_1_1PipeHandle_coll__map" alt="Collaboration graph"/></div>
<map name="uvw_1_1PipeHandle_coll__map" id="uvw_1_1PipeHandle_coll__map">
<area shape="rect" id="node2" href="classuvw_1_1StreamHandle.html" title="uvw::StreamHandle\&lt;\l PipeHandle, uv_pipe_t \&gt;" alt="" coords="75,273,245,315"/>
<area shape="rect" id="node3" href="classuvw_1_1Handle.html" title="uvw::Handle\&lt; PipeHandle,\l uv_pipe_t \&gt;" alt="" coords="71,184,249,225"/>
<area shape="rect" id="node4" href="structuvw_1_1BaseHandle.html" title="Untyped handle class. " alt="" coords="5,102,131,129"/>
<area shape="rect" id="node5" href="classuvw_1_1Resource.html" title="uvw::Resource\&lt; PipeHandle,\l uv_pipe_t \&gt;" alt="" coords="155,95,349,136"/>
<area shape="rect" id="node6" href="classuvw_1_1UnderlyingType.html" title="uvw::UnderlyingType\l\&lt; PipeHandle, uv_pipe_t \&gt;" alt="" coords="61,5,238,47"/>
<area shape="rect" id="node7" href="classuvw_1_1Emitter.html" title="uvw::Emitter\&lt; PipeHandle \&gt;" alt="" coords="263,13,449,39"/>
</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:a90b5e34a39ce85cbe0d9376647d86828"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1PipeHandle.html#a90b5e34a39ce85cbe0d9376647d86828">init</a> ()</td></tr>
<tr class="memdesc:a90b5e34a39ce85cbe0d9376647d86828"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the handle. <a href="#a90b5e34a39ce85cbe0d9376647d86828">More...</a><br /></td></tr>
<tr class="separator:a90b5e34a39ce85cbe0d9376647d86828"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8055bcd13c955ecc940a36f2f3a92230"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1PipeHandle.html#a8055bcd13c955ecc940a36f2f3a92230">open</a> (<a class="el" href="namespaceuvw.html#a02b7ef3b5a65b0bec1602ef434806a27">FileHandle</a> file)</td></tr>
<tr class="memdesc:a8055bcd13c955ecc940a36f2f3a92230"><td class="mdescLeft">&#160;</td><td class="mdescRight">Opens an existing file descriptor or HANDLE as a pipe. <a href="#a8055bcd13c955ecc940a36f2f3a92230">More...</a><br /></td></tr>
<tr class="separator:a8055bcd13c955ecc940a36f2f3a92230"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5162f6e3dd81bdb80727336afba42a8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1PipeHandle.html#ab5162f6e3dd81bdb80727336afba42a8">bind</a> (std::string name)</td></tr>
<tr class="memdesc:ab5162f6e3dd81bdb80727336afba42a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">bind Binds the pipe to a file path (Unix) or a name (Windows). <a href="#ab5162f6e3dd81bdb80727336afba42a8">More...</a><br /></td></tr>
<tr class="separator:ab5162f6e3dd81bdb80727336afba42a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6bcb3f96b852f0ff40a5e899981fe46"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1PipeHandle.html#ac6bcb3f96b852f0ff40a5e899981fe46">connect</a> (std::string name)</td></tr>
<tr class="memdesc:ac6bcb3f96b852f0ff40a5e899981fe46"><td class="mdescLeft">&#160;</td><td class="mdescRight">Connects to the Unix domain socket or the named pipe. <a href="#ac6bcb3f96b852f0ff40a5e899981fe46">More...</a><br /></td></tr>
<tr class="separator:ac6bcb3f96b852f0ff40a5e899981fe46"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa128e5451c5a9372d44faab507409a4"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1PipeHandle.html#aaa128e5451c5a9372d44faab507409a4">sock</a> () const noexcept</td></tr>
<tr class="memdesc:aaa128e5451c5a9372d44faab507409a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the name of the Unix domain socket or the named pipe. <a href="#aaa128e5451c5a9372d44faab507409a4">More...</a><br /></td></tr>
<tr class="separator:aaa128e5451c5a9372d44faab507409a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af15f10d5b58ef480a6c33e0b0f5387e8"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1PipeHandle.html#af15f10d5b58ef480a6c33e0b0f5387e8">peer</a> () const noexcept</td></tr>
<tr class="memdesc:af15f10d5b58ef480a6c33e0b0f5387e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the name of the Unix domain socket or the named pipe to which the handle is connected. <a href="#af15f10d5b58ef480a6c33e0b0f5387e8">More...</a><br /></td></tr>
<tr class="separator:af15f10d5b58ef480a6c33e0b0f5387e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2cfee410950543f291e73c0b3936047"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1PipeHandle.html#af2cfee410950543f291e73c0b3936047">pending</a> (int count) noexcept</td></tr>
<tr class="memdesc:af2cfee410950543f291e73c0b3936047"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the number of pending pipe this instance can handle. <a href="#af2cfee410950543f291e73c0b3936047">More...</a><br /></td></tr>
<tr class="separator:af2cfee410950543f291e73c0b3936047"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23f3be6f4e53abadbf043714d6ce6582"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1PipeHandle.html#a23f3be6f4e53abadbf043714d6ce6582">pending</a> () noexcept</td></tr>
<tr class="memdesc:a23f3be6f4e53abadbf043714d6ce6582"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the number of pending pipe this instance can handle. <a href="#a23f3be6f4e53abadbf043714d6ce6582">More...</a><br /></td></tr>
<tr class="separator:a23f3be6f4e53abadbf043714d6ce6582"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0beb9456aeb67490d8c59396749aeab"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceuvw.html#ad8b4c4aaf16bbe0b08218b42fbf32f0e">HandleType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1PipeHandle.html#ac0beb9456aeb67490d8c59396749aeab">receive</a> () noexcept</td></tr>
<tr class="memdesc:ac0beb9456aeb67490d8c59396749aeab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Used to receive handles over IPC pipes. <a href="#ac0beb9456aeb67490d8c59396749aeab">More...</a><br /></td></tr>
<tr class="separator:ac0beb9456aeb67490d8c59396749aeab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classuvw_1_1StreamHandle"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classuvw_1_1StreamHandle')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classuvw_1_1StreamHandle.html">uvw::StreamHandle&lt; PipeHandle, uv_pipe_t &gt;</a></td></tr>
<tr class="memitem:a3c1a1ddd951b0087c14e951610593653 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1StreamHandle.html#a3c1a1ddd951b0087c14e951610593653">shutdown</a> ()</td></tr>
<tr class="memdesc:a3c1a1ddd951b0087c14e951610593653 inherit pub_methods_classuvw_1_1StreamHandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shutdowns the outgoing (write) side of a duplex stream. <a href="classuvw_1_1StreamHandle.html#a3c1a1ddd951b0087c14e951610593653">More...</a><br /></td></tr>
<tr class="separator:a3c1a1ddd951b0087c14e951610593653 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7f3eeb7d21ca0bbbb7df591fade4e46 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1StreamHandle.html#ae7f3eeb7d21ca0bbbb7df591fade4e46">listen</a> (int backlog=DEFAULT_BACKLOG)</td></tr>
<tr class="memdesc:ae7f3eeb7d21ca0bbbb7df591fade4e46 inherit pub_methods_classuvw_1_1StreamHandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Starts listening for incoming connections. <a href="classuvw_1_1StreamHandle.html#ae7f3eeb7d21ca0bbbb7df591fade4e46">More...</a><br /></td></tr>
<tr class="separator:ae7f3eeb7d21ca0bbbb7df591fade4e46 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aebf4576cd5c8c16b63d9a4fe30931b9f inherit pub_methods_classuvw_1_1StreamHandle"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1StreamHandle.html#aebf4576cd5c8c16b63d9a4fe30931b9f">accept</a> (S &amp;ref)</td></tr>
<tr class="memdesc:aebf4576cd5c8c16b63d9a4fe30931b9f inherit pub_methods_classuvw_1_1StreamHandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Accepts incoming connections. <a href="classuvw_1_1StreamHandle.html#aebf4576cd5c8c16b63d9a4fe30931b9f">More...</a><br /></td></tr>
<tr class="separator:aebf4576cd5c8c16b63d9a4fe30931b9f inherit pub_methods_classuvw_1_1StreamHandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2bce95db93fb64ee8b86c41b65a060c8 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1StreamHandle.html#a2bce95db93fb64ee8b86c41b65a060c8">read</a> ()</td></tr>
<tr class="memdesc:a2bce95db93fb64ee8b86c41b65a060c8 inherit pub_methods_classuvw_1_1StreamHandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Starts reading data from an incoming stream. <a href="classuvw_1_1StreamHandle.html#a2bce95db93fb64ee8b86c41b65a060c8">More...</a><br /></td></tr>
<tr class="separator:a2bce95db93fb64ee8b86c41b65a060c8 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa7ecf6a0a39f74707b79ff4e8f696bb8 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1StreamHandle.html#aa7ecf6a0a39f74707b79ff4e8f696bb8">stop</a> ()</td></tr>
<tr class="memdesc:aa7ecf6a0a39f74707b79ff4e8f696bb8 inherit pub_methods_classuvw_1_1StreamHandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stops reading data from the stream. <a href="classuvw_1_1StreamHandle.html#aa7ecf6a0a39f74707b79ff4e8f696bb8">More...</a><br /></td></tr>
<tr class="separator:aa7ecf6a0a39f74707b79ff4e8f696bb8 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac77b0d5368ab31774d5edecf35844705 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1StreamHandle.html#ac77b0d5368ab31774d5edecf35844705">write</a> (std::unique_ptr&lt; char[]&gt; data, unsigned int len)</td></tr>
<tr class="memdesc:ac77b0d5368ab31774d5edecf35844705 inherit pub_methods_classuvw_1_1StreamHandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes data to the stream. <a href="classuvw_1_1StreamHandle.html#ac77b0d5368ab31774d5edecf35844705">More...</a><br /></td></tr>
<tr class="separator:ac77b0d5368ab31774d5edecf35844705 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6b4f4c4ffb19990bef05c776662f85c inherit pub_methods_classuvw_1_1StreamHandle"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1StreamHandle.html#ad6b4f4c4ffb19990bef05c776662f85c">write</a> (char *data, unsigned int len)</td></tr>
<tr class="memdesc:ad6b4f4c4ffb19990bef05c776662f85c inherit pub_methods_classuvw_1_1StreamHandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes data to the stream. <a href="classuvw_1_1StreamHandle.html#ad6b4f4c4ffb19990bef05c776662f85c">More...</a><br /></td></tr>
<tr class="separator:ad6b4f4c4ffb19990bef05c776662f85c inherit pub_methods_classuvw_1_1StreamHandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a13357c4a56712232c7733f03dc38c67b inherit pub_methods_classuvw_1_1StreamHandle"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1StreamHandle.html#a13357c4a56712232c7733f03dc38c67b">write</a> (S &amp;send, std::unique_ptr&lt; char[]&gt; data, unsigned int len)</td></tr>
<tr class="memdesc:a13357c4a56712232c7733f03dc38c67b inherit pub_methods_classuvw_1_1StreamHandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extended write function for sending handles over a pipe handle. <a href="classuvw_1_1StreamHandle.html#a13357c4a56712232c7733f03dc38c67b">More...</a><br /></td></tr>
<tr class="separator:a13357c4a56712232c7733f03dc38c67b inherit pub_methods_classuvw_1_1StreamHandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0086873dd2962189c92935bf6855c0c4 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1StreamHandle.html#a0086873dd2962189c92935bf6855c0c4">write</a> (S &amp;send, char *data, unsigned int len)</td></tr>
<tr class="memdesc:a0086873dd2962189c92935bf6855c0c4 inherit pub_methods_classuvw_1_1StreamHandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extended write function for sending handles over a pipe handle. <a href="classuvw_1_1StreamHandle.html#a0086873dd2962189c92935bf6855c0c4">More...</a><br /></td></tr>
<tr class="separator:a0086873dd2962189c92935bf6855c0c4 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f6f26113dc02442a93b7643842fb415 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1StreamHandle.html#a3f6f26113dc02442a93b7643842fb415">tryWrite</a> (std::unique_ptr&lt; char[]&gt; data, unsigned int len)</td></tr>
<tr class="memdesc:a3f6f26113dc02442a93b7643842fb415 inherit pub_methods_classuvw_1_1StreamHandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Queues a write request if it can be completed immediately. <a href="classuvw_1_1StreamHandle.html#a3f6f26113dc02442a93b7643842fb415">More...</a><br /></td></tr>
<tr class="separator:a3f6f26113dc02442a93b7643842fb415 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72b95a0efb99c96a0427a8f44fd9ddb6 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1StreamHandle.html#a72b95a0efb99c96a0427a8f44fd9ddb6">tryWrite</a> (char *data, unsigned int len)</td></tr>
<tr class="memdesc:a72b95a0efb99c96a0427a8f44fd9ddb6 inherit pub_methods_classuvw_1_1StreamHandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Queues a write request if it can be completed immediately. <a href="classuvw_1_1StreamHandle.html#a72b95a0efb99c96a0427a8f44fd9ddb6">More...</a><br /></td></tr>
<tr class="separator:a72b95a0efb99c96a0427a8f44fd9ddb6 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91efe7dfb93505779edbf603a6a1c515 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1StreamHandle.html#a91efe7dfb93505779edbf603a6a1c515">readable</a> () const noexcept</td></tr>
<tr class="memdesc:a91efe7dfb93505779edbf603a6a1c515 inherit pub_methods_classuvw_1_1StreamHandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the stream is readable. <a href="classuvw_1_1StreamHandle.html#a91efe7dfb93505779edbf603a6a1c515">More...</a><br /></td></tr>
<tr class="separator:a91efe7dfb93505779edbf603a6a1c515 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5918e5e17773fdd8dc078d07809359ea inherit pub_methods_classuvw_1_1StreamHandle"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1StreamHandle.html#a5918e5e17773fdd8dc078d07809359ea">writable</a> () const noexcept</td></tr>
<tr class="memdesc:a5918e5e17773fdd8dc078d07809359ea inherit pub_methods_classuvw_1_1StreamHandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the stream is writable. <a href="classuvw_1_1StreamHandle.html#a5918e5e17773fdd8dc078d07809359ea">More...</a><br /></td></tr>
<tr class="separator:a5918e5e17773fdd8dc078d07809359ea inherit pub_methods_classuvw_1_1StreamHandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f0abb05d8b07840cf0a36c64ec23fc4 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1StreamHandle.html#a5f0abb05d8b07840cf0a36c64ec23fc4">blocking</a> (bool enable=false)</td></tr>
<tr class="memdesc:a5f0abb05d8b07840cf0a36c64ec23fc4 inherit pub_methods_classuvw_1_1StreamHandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables or disables blocking mode for a stream. <a href="classuvw_1_1StreamHandle.html#a5f0abb05d8b07840cf0a36c64ec23fc4">More...</a><br /></td></tr>
<tr class="separator:a5f0abb05d8b07840cf0a36c64ec23fc4 inherit pub_methods_classuvw_1_1StreamHandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classuvw_1_1Handle"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classuvw_1_1Handle')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classuvw_1_1Handle.html">uvw::Handle&lt; PipeHandle, uv_pipe_t &gt;</a></td></tr>
<tr class="memitem:a96162bff13f6bf9a53be386765f01030 inherit pub_methods_classuvw_1_1Handle"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceuvw.html#aa3ae4a038de60a69b2513a039add1e48">HandleCategory</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Handle.html#a96162bff13f6bf9a53be386765f01030">category</a> () const noexcept override</td></tr>
<tr class="memdesc:a96162bff13f6bf9a53be386765f01030 inherit pub_methods_classuvw_1_1Handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the category of the handle. <a href="classuvw_1_1Handle.html#a96162bff13f6bf9a53be386765f01030">More...</a><br /></td></tr>
<tr class="separator:a96162bff13f6bf9a53be386765f01030 inherit pub_methods_classuvw_1_1Handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9056993d6077e8bee8bd77c9b03f2797 inherit pub_methods_classuvw_1_1Handle"><td class="memItemLeft" align="right" valign="top">HandleType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Handle.html#a9056993d6077e8bee8bd77c9b03f2797">type</a> () const noexcept override</td></tr>
<tr class="memdesc:a9056993d6077e8bee8bd77c9b03f2797 inherit pub_methods_classuvw_1_1Handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the type of the handle. <a href="classuvw_1_1Handle.html#a9056993d6077e8bee8bd77c9b03f2797">More...</a><br /></td></tr>
<tr class="separator:a9056993d6077e8bee8bd77c9b03f2797 inherit pub_methods_classuvw_1_1Handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18132668364682aae1235f71ff35c903 inherit pub_methods_classuvw_1_1Handle"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Handle.html#a18132668364682aae1235f71ff35c903">active</a> () const noexcept override</td></tr>
<tr class="memdesc:a18132668364682aae1235f71ff35c903 inherit pub_methods_classuvw_1_1Handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the handle is active. <a href="classuvw_1_1Handle.html#a18132668364682aae1235f71ff35c903">More...</a><br /></td></tr>
<tr class="separator:a18132668364682aae1235f71ff35c903 inherit pub_methods_classuvw_1_1Handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94b17026726b0999d1dc20c82b84ef0e inherit pub_methods_classuvw_1_1Handle"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Handle.html#a94b17026726b0999d1dc20c82b84ef0e">closing</a> () const noexcept override</td></tr>
<tr class="memdesc:a94b17026726b0999d1dc20c82b84ef0e inherit pub_methods_classuvw_1_1Handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if a handle is closing or closed. <a href="classuvw_1_1Handle.html#a94b17026726b0999d1dc20c82b84ef0e">More...</a><br /></td></tr>
<tr class="separator:a94b17026726b0999d1dc20c82b84ef0e inherit pub_methods_classuvw_1_1Handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83b7518a56ad891700c40a1578a1d2f1 inherit pub_methods_classuvw_1_1Handle"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Handle.html#a83b7518a56ad891700c40a1578a1d2f1">close</a> () noexcept override</td></tr>
<tr class="memdesc:a83b7518a56ad891700c40a1578a1d2f1 inherit pub_methods_classuvw_1_1Handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request handle to be closed. <a href="classuvw_1_1Handle.html#a83b7518a56ad891700c40a1578a1d2f1">More...</a><br /></td></tr>
<tr class="separator:a83b7518a56ad891700c40a1578a1d2f1 inherit pub_methods_classuvw_1_1Handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd04810b141d54cac4b51c69259f15e9 inherit pub_methods_classuvw_1_1Handle"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Handle.html#acd04810b141d54cac4b51c69259f15e9">reference</a> () noexcept override</td></tr>
<tr class="memdesc:acd04810b141d54cac4b51c69259f15e9 inherit pub_methods_classuvw_1_1Handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reference the given handle. <a href="classuvw_1_1Handle.html#acd04810b141d54cac4b51c69259f15e9">More...</a><br /></td></tr>
<tr class="separator:acd04810b141d54cac4b51c69259f15e9 inherit pub_methods_classuvw_1_1Handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4bebc0f0cf639fcf38fd839017857e0 inherit pub_methods_classuvw_1_1Handle"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Handle.html#af4bebc0f0cf639fcf38fd839017857e0">unreference</a> () noexcept override</td></tr>
<tr class="memdesc:af4bebc0f0cf639fcf38fd839017857e0 inherit pub_methods_classuvw_1_1Handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unreference the given handle. <a href="classuvw_1_1Handle.html#af4bebc0f0cf639fcf38fd839017857e0">More...</a><br /></td></tr>
<tr class="separator:af4bebc0f0cf639fcf38fd839017857e0 inherit pub_methods_classuvw_1_1Handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad44c23189e6c77b5a3807bb184366fd0 inherit pub_methods_classuvw_1_1Handle"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Handle.html#ad44c23189e6c77b5a3807bb184366fd0">referenced</a> () const noexcept override</td></tr>
<tr class="memdesc:ad44c23189e6c77b5a3807bb184366fd0 inherit pub_methods_classuvw_1_1Handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the given handle referenced. <a href="classuvw_1_1Handle.html#ad44c23189e6c77b5a3807bb184366fd0">More...</a><br /></td></tr>
<tr class="separator:ad44c23189e6c77b5a3807bb184366fd0 inherit pub_methods_classuvw_1_1Handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf9f911fc627f3feb32fefd67a7d5344 inherit pub_methods_classuvw_1_1Handle"><td class="memItemLeft" align="right" valign="top">std::size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Handle.html#aaf9f911fc627f3feb32fefd67a7d5344">size</a> () const noexcept</td></tr>
<tr class="memdesc:aaf9f911fc627f3feb32fefd67a7d5344 inherit pub_methods_classuvw_1_1Handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the size of the underlying handle type. <a href="classuvw_1_1Handle.html#aaf9f911fc627f3feb32fefd67a7d5344">More...</a><br /></td></tr>
<tr class="separator:aaf9f911fc627f3feb32fefd67a7d5344 inherit pub_methods_classuvw_1_1Handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a381427eccddbc061341642a0647eb5c5 inherit pub_methods_classuvw_1_1Handle"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Handle.html#a381427eccddbc061341642a0647eb5c5">sendBufferSize</a> ()</td></tr>
<tr class="memdesc:a381427eccddbc061341642a0647eb5c5 inherit pub_methods_classuvw_1_1Handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the size of the send buffer used for the socket. <a href="classuvw_1_1Handle.html#a381427eccddbc061341642a0647eb5c5">More...</a><br /></td></tr>
<tr class="separator:a381427eccddbc061341642a0647eb5c5 inherit pub_methods_classuvw_1_1Handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5101de6d8dea3bdd2bca444cde821db inherit pub_methods_classuvw_1_1Handle"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Handle.html#ac5101de6d8dea3bdd2bca444cde821db">sendBufferSize</a> (int value)</td></tr>
<tr class="memdesc:ac5101de6d8dea3bdd2bca444cde821db inherit pub_methods_classuvw_1_1Handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the size of the send buffer used for the socket. <a href="classuvw_1_1Handle.html#ac5101de6d8dea3bdd2bca444cde821db">More...</a><br /></td></tr>
<tr class="separator:ac5101de6d8dea3bdd2bca444cde821db inherit pub_methods_classuvw_1_1Handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf07222a2587ca1eb80aec5a9af892e7 inherit pub_methods_classuvw_1_1Handle"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Handle.html#adf07222a2587ca1eb80aec5a9af892e7">recvBufferSize</a> ()</td></tr>
<tr class="memdesc:adf07222a2587ca1eb80aec5a9af892e7 inherit pub_methods_classuvw_1_1Handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the size of the receive buffer used for the socket. <a href="classuvw_1_1Handle.html#adf07222a2587ca1eb80aec5a9af892e7">More...</a><br /></td></tr>
<tr class="separator:adf07222a2587ca1eb80aec5a9af892e7 inherit pub_methods_classuvw_1_1Handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a549b5f46f62b8474bad8775c6e4ff1a9 inherit pub_methods_classuvw_1_1Handle"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Handle.html#a549b5f46f62b8474bad8775c6e4ff1a9">recvBufferSize</a> (int value)</td></tr>
<tr class="memdesc:a549b5f46f62b8474bad8775c6e4ff1a9 inherit pub_methods_classuvw_1_1Handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the size of the receive buffer used for the socket. <a href="classuvw_1_1Handle.html#a549b5f46f62b8474bad8775c6e4ff1a9">More...</a><br /></td></tr>
<tr class="separator:a549b5f46f62b8474bad8775c6e4ff1a9 inherit pub_methods_classuvw_1_1Handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab33f8f753d3a19a0daece518f4a87bee inherit pub_methods_classuvw_1_1Handle"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceuvw.html#ad4b1016f485b28ad7dfd320a593b152b">OSFileDescriptor</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Handle.html#ab33f8f753d3a19a0daece518f4a87bee">fileno</a> () const</td></tr>
<tr class="memdesc:ab33f8f753d3a19a0daece518f4a87bee inherit pub_methods_classuvw_1_1Handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the platform dependent file descriptor equivalent. <a href="classuvw_1_1Handle.html#ab33f8f753d3a19a0daece518f4a87bee">More...</a><br /></td></tr>
<tr class="separator:ab33f8f753d3a19a0daece518f4a87bee inherit pub_methods_classuvw_1_1Handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classuvw_1_1UnderlyingType"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classuvw_1_1UnderlyingType')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classuvw_1_1UnderlyingType.html">uvw::UnderlyingType&lt; PipeHandle, uv_pipe_t &gt;</a></td></tr>
<tr class="memitem:aab78fbfffb3c03d78aab515e605ecb18 inherit pub_methods_classuvw_1_1UnderlyingType"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classuvw_1_1Loop.html">Loop</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1UnderlyingType.html#aab78fbfffb3c03d78aab515e605ecb18">loop</a> () const noexcept</td></tr>
<tr class="memdesc:aab78fbfffb3c03d78aab515e605ecb18 inherit pub_methods_classuvw_1_1UnderlyingType"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the loop from which the resource was originated. <a href="classuvw_1_1UnderlyingType.html#aab78fbfffb3c03d78aab515e605ecb18">More...</a><br /></td></tr>
<tr class="separator:aab78fbfffb3c03d78aab515e605ecb18 inherit pub_methods_classuvw_1_1UnderlyingType"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classuvw_1_1Emitter"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classuvw_1_1Emitter')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classuvw_1_1Emitter.html">uvw::Emitter&lt; PipeHandle &gt;</a></td></tr>
<tr class="memitem:af6ba3eecb542efbef8d62ae905d8a8cd inherit pub_methods_classuvw_1_1Emitter"><td class="memItemLeft" align="right" valign="top">Connection&lt; E &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Emitter.html#af6ba3eecb542efbef8d62ae905d8a8cd">on</a> (Listener&lt; E &gt; f)</td></tr>
<tr class="memdesc:af6ba3eecb542efbef8d62ae905d8a8cd inherit pub_methods_classuvw_1_1Emitter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers a long-lived listener with the event emitter. <a href="classuvw_1_1Emitter.html#af6ba3eecb542efbef8d62ae905d8a8cd">More...</a><br /></td></tr>
<tr class="separator:af6ba3eecb542efbef8d62ae905d8a8cd inherit pub_methods_classuvw_1_1Emitter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79e4ed59b5bb5cdc5ee4b0dd71a38472 inherit pub_methods_classuvw_1_1Emitter"><td class="memItemLeft" align="right" valign="top">Connection&lt; E &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Emitter.html#a79e4ed59b5bb5cdc5ee4b0dd71a38472">once</a> (Listener&lt; E &gt; f)</td></tr>
<tr class="memdesc:a79e4ed59b5bb5cdc5ee4b0dd71a38472 inherit pub_methods_classuvw_1_1Emitter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers a short-lived listener with the event emitter. <a href="classuvw_1_1Emitter.html#a79e4ed59b5bb5cdc5ee4b0dd71a38472">More...</a><br /></td></tr>
<tr class="separator:a79e4ed59b5bb5cdc5ee4b0dd71a38472 inherit pub_methods_classuvw_1_1Emitter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c98ab223b4367073d96c51ee3d6a0d1 inherit pub_methods_classuvw_1_1Emitter"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Emitter.html#a4c98ab223b4367073d96c51ee3d6a0d1">erase</a> (Connection&lt; E &gt; conn) noexcept</td></tr>
<tr class="memdesc:a4c98ab223b4367073d96c51ee3d6a0d1 inherit pub_methods_classuvw_1_1Emitter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disconnects a listener from the event emitter. <a href="classuvw_1_1Emitter.html#a4c98ab223b4367073d96c51ee3d6a0d1">More...</a><br /></td></tr>
<tr class="separator:a4c98ab223b4367073d96c51ee3d6a0d1 inherit pub_methods_classuvw_1_1Emitter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d332776a2e35049549a723f35d88912 inherit pub_methods_classuvw_1_1Emitter"><td class="memItemLeft" align="right" valign="top"><a id="a3d332776a2e35049549a723f35d88912"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Emitter.html#a3d332776a2e35049549a723f35d88912">clear</a> () noexcept</td></tr>
<tr class="memdesc:a3d332776a2e35049549a723f35d88912 inherit pub_methods_classuvw_1_1Emitter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disconnects all the listeners for the given event type. <br /></td></tr>
<tr class="separator:a3d332776a2e35049549a723f35d88912 inherit pub_methods_classuvw_1_1Emitter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ff321dde35550bb40ab90a787b715cf inherit pub_methods_classuvw_1_1Emitter"><td class="memItemLeft" align="right" valign="top"><a id="a6ff321dde35550bb40ab90a787b715cf"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Emitter.html#a6ff321dde35550bb40ab90a787b715cf">clear</a> () noexcept</td></tr>
<tr class="memdesc:a6ff321dde35550bb40ab90a787b715cf inherit pub_methods_classuvw_1_1Emitter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disconnects all the listeners. <br /></td></tr>
<tr class="separator:a6ff321dde35550bb40ab90a787b715cf inherit pub_methods_classuvw_1_1Emitter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2178cfdcc8b19baa6d7e1f950c7b65c4 inherit pub_methods_classuvw_1_1Emitter"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Emitter.html#a2178cfdcc8b19baa6d7e1f950c7b65c4">empty</a> () const noexcept</td></tr>
<tr class="memdesc:a2178cfdcc8b19baa6d7e1f950c7b65c4 inherit pub_methods_classuvw_1_1Emitter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if there are listeners registered for the specific event. <a href="classuvw_1_1Emitter.html#a2178cfdcc8b19baa6d7e1f950c7b65c4">More...</a><br /></td></tr>
<tr class="separator:a2178cfdcc8b19baa6d7e1f950c7b65c4 inherit pub_methods_classuvw_1_1Emitter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af15516ea3df907e5e27512d05f64a1cd inherit pub_methods_classuvw_1_1Emitter"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1Emitter.html#af15516ea3df907e5e27512d05f64a1cd">empty</a> () const noexcept</td></tr>
<tr class="memdesc:af15516ea3df907e5e27512d05f64a1cd inherit pub_methods_classuvw_1_1Emitter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if there are listeners registered with the event emitter. <a href="classuvw_1_1Emitter.html#af15516ea3df907e5e27512d05f64a1cd">More...</a><br /></td></tr>
<tr class="separator:af15516ea3df907e5e27512d05f64a1cd inherit pub_methods_classuvw_1_1Emitter"><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_static_methods_classuvw_1_1UnderlyingType"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classuvw_1_1UnderlyingType')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classuvw_1_1UnderlyingType.html">uvw::UnderlyingType&lt; PipeHandle, uv_pipe_t &gt;</a></td></tr>
<tr class="memitem:aa711faff7e88895f769f66e8245bda73 inherit pub_static_methods_classuvw_1_1UnderlyingType"><td class="memItemLeft" align="right" valign="top">static std::shared_ptr&lt; <a class="el" href="classuvw_1_1PipeHandle.html">PipeHandle</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuvw_1_1UnderlyingType.html#aa711faff7e88895f769f66e8245bda73">create</a> (Args &amp;&amp;... args)</td></tr>
<tr class="memdesc:aa711faff7e88895f769f66e8245bda73 inherit pub_static_methods_classuvw_1_1UnderlyingType"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a new resource of the given type. <a href="classuvw_1_1UnderlyingType.html#aa711faff7e88895f769f66e8245bda73">More...</a><br /></td></tr>
<tr class="separator:aa711faff7e88895f769f66e8245bda73 inherit pub_static_methods_classuvw_1_1UnderlyingType"><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>The <a class="el" href="classuvw_1_1PipeHandle.html" title="The PipeHandle handle. ">PipeHandle</a> handle. </p>
<p>Pipe handles provide an abstraction over local domain sockets on Unix and named pipes on Windows.</p>
<p>To create a <code><a class="el" href="classuvw_1_1PipeHandle.html" title="The PipeHandle handle. ">PipeHandle</a></code> through a <code><a class="el" href="classuvw_1_1Loop.html" title="The Loop class. ">Loop</a></code>, arguments follow:</p>
<ul>
<li>An optional boolean value that indicates if this pipe will be used for handle passing between processes. </li>
</ul>
<p class="definition">Definition at line <a class="el" href="pipe_8hpp_source.html#l00029">29</a> of file <a class="el" href="pipe_8hpp_source.html">pipe.hpp</a>.</p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="ab5162f6e3dd81bdb80727336afba42a8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab5162f6e3dd81bdb80727336afba42a8">&#9670;&nbsp;</a></span>bind()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void uvw::PipeHandle::bind </td>
<td>(</td>
<td class="paramtype">std::string&#160;</td>
<td class="paramname"><em>name</em></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>bind Binds the pipe to a file path (Unix) or a name (Windows). </p>
<p>Paths on Unix get truncated typically between 92 and 108 bytes.<br />
An <a class="el" href="structuvw_1_1ErrorEvent.html" title="The ErrorEvent event. ">ErrorEvent</a> event is emitted in case of errors.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>A valid file path. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="pipe_8hpp_source.html#l00064">64</a> of file <a class="el" href="pipe_8hpp_source.html">pipe.hpp</a>.</p>
</div>
</div>
<a id="ac6bcb3f96b852f0ff40a5e899981fe46"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac6bcb3f96b852f0ff40a5e899981fe46">&#9670;&nbsp;</a></span>connect()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void uvw::PipeHandle::connect </td>
<td>(</td>
<td class="paramtype">std::string&#160;</td>
<td class="paramname"><em>name</em></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>Connects to the Unix domain socket or the named pipe. </p>
<p>Paths on Unix get truncated typically between 92 and 108 bytes.<br />
A <a class="el" href="structuvw_1_1ConnectEvent.html" title="ConnectEvent event. ">ConnectEvent</a> event is emitted when the connection has been established.<br />
An <a class="el" href="structuvw_1_1ErrorEvent.html" title="The ErrorEvent event. ">ErrorEvent</a> event is emitted in case of errors during the connection.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>A valid domain socket or named pipe. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="pipe_8hpp_source.html#l00078">78</a> of file <a class="el" href="pipe_8hpp_source.html">pipe.hpp</a>.</p>
</div>
</div>
<a id="a90b5e34a39ce85cbe0d9376647d86828"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a90b5e34a39ce85cbe0d9376647d86828">&#9670;&nbsp;</a></span>init()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool uvw::PipeHandle::init </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>Initializes the handle. </p>
<dl class="section return"><dt>Returns</dt><dd>True in case of success, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="pipe_8hpp_source.html#l00039">39</a> of file <a class="el" href="pipe_8hpp_source.html">pipe.hpp</a>.</p>
</div>
</div>
<a id="a8055bcd13c955ecc940a36f2f3a92230"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8055bcd13c955ecc940a36f2f3a92230">&#9670;&nbsp;</a></span>open()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void uvw::PipeHandle::open </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespaceuvw.html#a02b7ef3b5a65b0bec1602ef434806a27">FileHandle</a>&#160;</td>
<td class="paramname"><em>file</em></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>Opens an existing file descriptor or HANDLE as a pipe. </p>
<p>The passed file descriptor or HANDLE is not checked for its type, but its required that it represents a valid pipe.<br />
An <a class="el" href="structuvw_1_1ErrorEvent.html" title="The ErrorEvent event. ">ErrorEvent</a> event is emitted in case of errors.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">file</td><td>A valid file handle (either a file descriptor or a HANDLE). </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="pipe_8hpp_source.html#l00052">52</a> of file <a class="el" href="pipe_8hpp_source.html">pipe.hpp</a>.</p>
</div>
</div>
<a id="af15f10d5b58ef480a6c33e0b0f5387e8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af15f10d5b58ef480a6c33e0b0f5387e8">&#9670;&nbsp;</a></span>peer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::string uvw::PipeHandle::peer </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 class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the name of the Unix domain socket or the named pipe to which the handle is connected. </p>
<dl class="section return"><dt>Returns</dt><dd>The name of the Unix domain socket or the named pipe to which the handle is connected, an empty string in case of errors. </dd></dl>
<p class="definition">Definition at line <a class="el" href="pipe_8hpp_source.html#l00104">104</a> of file <a class="el" href="pipe_8hpp_source.html">pipe.hpp</a>.</p>
</div>
</div>
<a id="af2cfee410950543f291e73c0b3936047"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af2cfee410950543f291e73c0b3936047">&#9670;&nbsp;</a></span>pending() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void uvw::PipeHandle::pending </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>count</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the number of pending pipe this instance can handle. </p>
<p>This method can be used to set the number of pending pipe this instance handles when the pipe server is waiting for connections.<br />
Note that this setting applies to Windows only.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">count</td><td>The number of accepted pending pipe. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="pipe_8hpp_source.html#l00117">117</a> of file <a class="el" href="pipe_8hpp_source.html">pipe.hpp</a>.</p>
</div>
</div>
<a id="a23f3be6f4e53abadbf043714d6ce6582"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a23f3be6f4e53abadbf043714d6ce6582">&#9670;&nbsp;</a></span>pending() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int uvw::PipeHandle::pending </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 class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the number of pending pipe this instance can handle. </p>
<dl class="section return"><dt>Returns</dt><dd>The number of pending pipe this instance can handle. </dd></dl>
<p class="definition">Definition at line <a class="el" href="pipe_8hpp_source.html#l00125">125</a> of file <a class="el" href="pipe_8hpp_source.html">pipe.hpp</a>.</p>
</div>
</div>
<a id="ac0beb9456aeb67490d8c59396749aeab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0beb9456aeb67490d8c59396749aeab">&#9670;&nbsp;</a></span>receive()</h2>
<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="namespaceuvw.html#ad8b4c4aaf16bbe0b08218b42fbf32f0e">HandleType</a> uvw::PipeHandle::receive </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 class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to receive handles over IPC pipes. </p>
<p>Steps to be done:</p>
<ul>
<li>Call <code><a class="el" href="classuvw_1_1PipeHandle.html#a23f3be6f4e53abadbf043714d6ce6582" title="Gets the number of pending pipe this instance can handle. ">pending()</a></code>, if its greater than zero then proceed.</li>
<li>Initialize a handle of the given type, as returned by <code><a class="el" href="classuvw_1_1PipeHandle.html#ac0beb9456aeb67490d8c59396749aeab" title="Used to receive handles over IPC pipes. ">receive()</a></code>.</li>
<li>Call <code>accept(pipe, handle)</code>.</li>
</ul>
<dl class="section return"><dt>Returns</dt><dd>The type of the pending handle. Possible values are:</dd></dl>
<ul>
<li><code>HandleType::PIPE</code></li>
<li><code>HandleType::TCP</code></li>
<li><code>HandleType::UDP</code></li>
<li><code>HandleType::UNKNOWN</code> </li>
</ul>
<p class="definition">Definition at line <a class="el" href="pipe_8hpp_source.html#l00145">145</a> of file <a class="el" href="pipe_8hpp_source.html">pipe.hpp</a>.</p>
</div>
</div>
<a id="aaa128e5451c5a9372d44faab507409a4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaa128e5451c5a9372d44faab507409a4">&#9670;&nbsp;</a></span>sock()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::string uvw::PipeHandle::sock </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 class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the name of the Unix domain socket or the named pipe. </p>
<dl class="section return"><dt>Returns</dt><dd>The name of the Unix domain socket or the named pipe, an empty string in case of errors. </dd></dl>
<p class="definition">Definition at line <a class="el" href="pipe_8hpp_source.html#l00094">94</a> of file <a class="el" href="pipe_8hpp_source.html">pipe.hpp</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>src/uvw/<a class="el" href="pipe_8hpp_source.html">pipe.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>