with docs

git-svn-id: svn://db.shs.com.ru/pip@5 12ceb7fc-bf1f-11e4-8940-5bc7170c53b5
This commit is contained in:
2015-02-28 18:36:54 +00:00
parent 13336674eb
commit 02fdf8b415
726 changed files with 75434 additions and 0 deletions

View File

@@ -0,0 +1,880 @@
<!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.8"/>
<title>PIP: PIEthernet 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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
$(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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">PIP
&#160;<span id="projectnumber">0.4.1_alpha3</span>
</div>
<div id="projectbrief">Platform-Independent Primitives</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<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="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</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><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('class_p_i_ethernet.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark">&#160;</span>Pages</a></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 class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="class_p_i_ethernet-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">PIEthernet Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Ethernet device.
<a href="class_p_i_ethernet.html#details">More...</a></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for PIEthernet:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" frameborder="0" src="class_p_i_ethernet__inherit__graph.svg" width="114" height="262"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_p_i_ethernet_1_1_interface.html">Interface</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Network interface descriptor. <a href="struct_p_i_ethernet_1_1_interface.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet_1_1_interface_list.html">InterfaceList</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array of <em><a class="el" href="struct_p_i_ethernet_1_1_interface.html" title="Network interface descriptor. ">Interface</a></em> with some features. <a href="class_p_i_ethernet_1_1_interface_list.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a7abf73f51652b00af7a6198be2fa0f5c"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a7abf73f51652b00af7a6198be2fa0f5c">Type</a> { <a class="el" href="class_p_i_ethernet.html#a7abf73f51652b00af7a6198be2fa0f5ca17c6e599807b02ebaf8ab6decbd17c7b">UDP</a>,
<a class="el" href="class_p_i_ethernet.html#a7abf73f51652b00af7a6198be2fa0f5ca468f2c843283f472aa48487bebc38416">TCP_Client</a>,
<a class="el" href="class_p_i_ethernet.html#a7abf73f51652b00af7a6198be2fa0f5caf2c9526cd4b694f14a0d8a4693a5b76c">TCP_Server</a>
}</td></tr>
<tr class="memdesc:a7abf73f51652b00af7a6198be2fa0f5c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of PIEthernet. <a href="class_p_i_ethernet.html#a7abf73f51652b00af7a6198be2fa0f5c">More...</a><br /></td></tr>
<tr class="separator:a7abf73f51652b00af7a6198be2fa0f5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae03a64ce3d7d8a1e95b2212ab2497f55"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#ae03a64ce3d7d8a1e95b2212ab2497f55">Parameters</a> { <a class="el" href="class_p_i_ethernet.html#ae03a64ce3d7d8a1e95b2212ab2497f55a880142bb3993c7839af6d847beee1b34">ReuseAddress</a> = 0x1,
<a class="el" href="class_p_i_ethernet.html#ae03a64ce3d7d8a1e95b2212ab2497f55af792cda5436050309ee9368d6ac5e6f7">Broadcast</a> = 0x2
}</td></tr>
<tr class="memdesc:ae03a64ce3d7d8a1e95b2212ab2497f55"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parameters of PIEthernet. <a href="class_p_i_ethernet.html#ae03a64ce3d7d8a1e95b2212ab2497f55">More...</a><br /></td></tr>
<tr class="separator:ae03a64ce3d7d8a1e95b2212ab2497f55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2e219801b3a6c451c4aca63ad99b6374"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a2e219801b3a6c451c4aca63ad99b6374">InterfaceFlag</a> { <br />
&#160;&#160;<a class="el" href="class_p_i_ethernet.html#a2e219801b3a6c451c4aca63ad99b6374af0267ac1003b142861da4f3b13cd8eec">ifActive</a> = 0x1,
<a class="el" href="class_p_i_ethernet.html#a2e219801b3a6c451c4aca63ad99b6374a1ee5d68a37246b49b542d4e7a35129a5">ifRunning</a> = 0x2,
<a class="el" href="class_p_i_ethernet.html#a2e219801b3a6c451c4aca63ad99b6374a968abc4436cda4f3a7d6f9d5b73a5161">ifBroadcast</a> = 0x4,
<a class="el" href="class_p_i_ethernet.html#a2e219801b3a6c451c4aca63ad99b6374a221bac530c63ca6256286ae46d4cf2da">ifMulticast</a> = 0x8,
<br />
&#160;&#160;<a class="el" href="class_p_i_ethernet.html#a2e219801b3a6c451c4aca63ad99b6374ae5762f8e14d0d44e59d98d40a5e61d47">ifLoopback</a> = 0x10,
<a class="el" href="class_p_i_ethernet.html#a2e219801b3a6c451c4aca63ad99b6374a57217604fea835e4aaec5ad6f16101a5">ifPTP</a> = 0x20
<br />
}</td></tr>
<tr class="memdesc:a2e219801b3a6c451c4aca63ad99b6374"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flags of network interface. <a href="class_p_i_ethernet.html#a2e219801b3a6c451c4aca63ad99b6374">More...</a><br /></td></tr>
<tr class="separator:a2e219801b3a6c451c4aca63ad99b6374"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a26d086cc06bc533006ac4fca2c3bab33"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a26d086cc06bc533006ac4fca2c3bab33"></a>
typedef <a class="el" href="class_p_i_flags.html">PIFlags</a>&lt; <a class="el" href="class_p_i_ethernet.html#a2e219801b3a6c451c4aca63ad99b6374">InterfaceFlag</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a26d086cc06bc533006ac4fca2c3bab33">InterfaceFlags</a></td></tr>
<tr class="memdesc:a26d086cc06bc533006ac4fca2c3bab33"><td class="mdescLeft">&#160;</td><td class="mdescRight">PIFlags of network interface flags <br /></td></tr>
<tr class="separator:a26d086cc06bc533006ac4fca2c3bab33"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_class_p_i_thread"><td colspan="2" onclick="javascript:toggleInherit('pub_types_class_p_i_thread')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="class_p_i_thread.html">PIThread</a></td></tr>
<tr class="memitem:a3ddcafb0b09d3ed258a519882986a77b inherit pub_types_class_p_i_thread"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#a3ddcafb0b09d3ed258a519882986a77b">Priority</a> { <br />
&#160;&#160;<a class="el" href="class_p_i_thread.html#a3ddcafb0b09d3ed258a519882986a77ba4dbd54fc5158a029c682b718f48312d4">piLowerst</a>,
<a class="el" href="class_p_i_thread.html#a3ddcafb0b09d3ed258a519882986a77ba46703d0258b11d41c52a266b2b10b6d9">piLow</a>,
<a class="el" href="class_p_i_thread.html#a3ddcafb0b09d3ed258a519882986a77babd362bfacabbd61d69793cceb449425c">piNormal</a>,
<a class="el" href="class_p_i_thread.html#a3ddcafb0b09d3ed258a519882986a77ba0e6861fee3e57cf6ba026a7553e69576">piHigh</a>,
<br />
&#160;&#160;<a class="el" href="class_p_i_thread.html#a3ddcafb0b09d3ed258a519882986a77ba18babfebe41163fbb810eb41357a6347">piHighest</a>
<br />
}</td></tr>
<tr class="memdesc:a3ddcafb0b09d3ed258a519882986a77b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Priority of thread. <a href="class_p_i_thread.html#a3ddcafb0b09d3ed258a519882986a77b">More...</a><br /></td></tr>
<tr class="separator:a3ddcafb0b09d3ed258a519882986a77b inherit pub_types_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><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:a6a5a47b716613af3c224d1a6909f0751"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6a5a47b716613af3c224d1a6909f0751"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a6a5a47b716613af3c224d1a6909f0751">PIEthernet</a> ()</td></tr>
<tr class="memdesc:a6a5a47b716613af3c224d1a6909f0751"><td class="mdescLeft">&#160;</td><td class="mdescRight">Contructs UDP PIEthernet with empty read address. <br /></td></tr>
<tr class="separator:a6a5a47b716613af3c224d1a6909f0751"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa47c8e516e88c2cb479bd62934bf2660"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa47c8e516e88c2cb479bd62934bf2660"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#aa47c8e516e88c2cb479bd62934bf2660">PIEthernet</a> (<a class="el" href="class_p_i_ethernet.html#a7abf73f51652b00af7a6198be2fa0f5c">Type</a> <a class="el" href="class_p_i_ethernet.html#af42a7ca0266f28bc9a389aca1618f43f">type</a>, const <a class="el" href="class_p_i_string.html">PIString</a> &amp;ip_port=<a class="el" href="class_p_i_string.html">PIString</a>(), const <a class="el" href="class_p_i_flags.html">PIFlags</a>&lt; <a class="el" href="class_p_i_ethernet.html#ae03a64ce3d7d8a1e95b2212ab2497f55">Parameters</a> &gt; params=0)</td></tr>
<tr class="memdesc:aa47c8e516e88c2cb479bd62934bf2660"><td class="mdescLeft">&#160;</td><td class="mdescRight">Contructs PIEthernet with type "type", read address "ip_port" and parameters "params". <br /></td></tr>
<tr class="separator:aa47c8e516e88c2cb479bd62934bf2660"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4da57633bb41886a07a0a01139022ce9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4da57633bb41886a07a0a01139022ce9"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a4da57633bb41886a07a0a01139022ce9">setReadAddress</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;<a class="el" href="class_p_i_ethernet.html#ae49bc185dedf39646ea445fd57e21283">ip</a>, int <a class="el" href="class_p_i_ethernet.html#ad6b354929e62f909918d73633ea49135">port</a>)</td></tr>
<tr class="memdesc:a4da57633bb41886a07a0a01139022ce9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set read address. <br /></td></tr>
<tr class="separator:a4da57633bb41886a07a0a01139022ce9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76652ae5f391e8957c864be224d46937"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a76652ae5f391e8957c864be224d46937"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a76652ae5f391e8957c864be224d46937">setReadAddress</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;ip_port)</td></tr>
<tr class="memdesc:a76652ae5f391e8957c864be224d46937"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set read address in format "i.i.i.i:p". <br /></td></tr>
<tr class="separator:a76652ae5f391e8957c864be224d46937"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a281ffec154f8a604da5f8e8494740b63"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a281ffec154f8a604da5f8e8494740b63"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a281ffec154f8a604da5f8e8494740b63">setReadIP</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;<a class="el" href="class_p_i_ethernet.html#ae49bc185dedf39646ea445fd57e21283">ip</a>)</td></tr>
<tr class="memdesc:a281ffec154f8a604da5f8e8494740b63"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set read IP. <br /></td></tr>
<tr class="separator:a281ffec154f8a604da5f8e8494740b63"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a13f17f1b0022b15d05879c0228bd4bba"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a13f17f1b0022b15d05879c0228bd4bba"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a13f17f1b0022b15d05879c0228bd4bba">setReadPort</a> (int <a class="el" href="class_p_i_ethernet.html#ad6b354929e62f909918d73633ea49135">port</a>)</td></tr>
<tr class="memdesc:a13f17f1b0022b15d05879c0228bd4bba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set read port. <br /></td></tr>
<tr class="separator:a13f17f1b0022b15d05879c0228bd4bba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa66a8ec37d66b17e0d1cf52dc3f9f00"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afa66a8ec37d66b17e0d1cf52dc3f9f00"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#afa66a8ec37d66b17e0d1cf52dc3f9f00">setSendAddress</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;<a class="el" href="class_p_i_ethernet.html#ae49bc185dedf39646ea445fd57e21283">ip</a>, int <a class="el" href="class_p_i_ethernet.html#ad6b354929e62f909918d73633ea49135">port</a>)</td></tr>
<tr class="memdesc:afa66a8ec37d66b17e0d1cf52dc3f9f00"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set send address. <br /></td></tr>
<tr class="separator:afa66a8ec37d66b17e0d1cf52dc3f9f00"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2f490fa2749860c2d8c58dd691e4663"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa2f490fa2749860c2d8c58dd691e4663"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#aa2f490fa2749860c2d8c58dd691e4663">setSendAddress</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;ip_port)</td></tr>
<tr class="memdesc:aa2f490fa2749860c2d8c58dd691e4663"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set send address in format "i.i.i.i:p". <br /></td></tr>
<tr class="separator:aa2f490fa2749860c2d8c58dd691e4663"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f90001f1f3b49da411421fc15256a5c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5f90001f1f3b49da411421fc15256a5c"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a5f90001f1f3b49da411421fc15256a5c">setSendIP</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;<a class="el" href="class_p_i_ethernet.html#ae49bc185dedf39646ea445fd57e21283">ip</a>)</td></tr>
<tr class="memdesc:a5f90001f1f3b49da411421fc15256a5c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set send IP. <br /></td></tr>
<tr class="separator:a5f90001f1f3b49da411421fc15256a5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0866eb6385dda7b6988b29fedc45fc48"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0866eb6385dda7b6988b29fedc45fc48"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a0866eb6385dda7b6988b29fedc45fc48">setSendPort</a> (int <a class="el" href="class_p_i_ethernet.html#ad6b354929e62f909918d73633ea49135">port</a>)</td></tr>
<tr class="memdesc:a0866eb6385dda7b6988b29fedc45fc48"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set send port. <br /></td></tr>
<tr class="separator:a0866eb6385dda7b6988b29fedc45fc48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a53052c78cb24aca1e1a65d8c14e1dd7c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a53052c78cb24aca1e1a65d8c14e1dd7c"></a>
<a class="el" href="class_p_i_string.html">PIString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a53052c78cb24aca1e1a65d8c14e1dd7c">readAddress</a> () const </td></tr>
<tr class="memdesc:a53052c78cb24aca1e1a65d8c14e1dd7c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns read address in format "i.i.i.i:p". <br /></td></tr>
<tr class="separator:a53052c78cb24aca1e1a65d8c14e1dd7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa04de0ef1cab98a7bc80cc43ca550f18"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa04de0ef1cab98a7bc80cc43ca550f18"></a>
<a class="el" href="class_p_i_string.html">PIString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#aa04de0ef1cab98a7bc80cc43ca550f18">readIP</a> () const </td></tr>
<tr class="memdesc:aa04de0ef1cab98a7bc80cc43ca550f18"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns read IP. <br /></td></tr>
<tr class="separator:aa04de0ef1cab98a7bc80cc43ca550f18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac93db4b6831c0304955c74c666d716f4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac93db4b6831c0304955c74c666d716f4"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#ac93db4b6831c0304955c74c666d716f4">readPort</a> () const </td></tr>
<tr class="memdesc:ac93db4b6831c0304955c74c666d716f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns read port. <br /></td></tr>
<tr class="separator:ac93db4b6831c0304955c74c666d716f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f1c3496e88242f1637666a9a0ac9c86"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9f1c3496e88242f1637666a9a0ac9c86"></a>
<a class="el" href="class_p_i_string.html">PIString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a9f1c3496e88242f1637666a9a0ac9c86">sendAddress</a> () const </td></tr>
<tr class="memdesc:a9f1c3496e88242f1637666a9a0ac9c86"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns send address in format "i.i.i.i:p". <br /></td></tr>
<tr class="separator:a9f1c3496e88242f1637666a9a0ac9c86"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa134cd7aecf18f151a09c497b19e0fa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaa134cd7aecf18f151a09c497b19e0fa"></a>
<a class="el" href="class_p_i_string.html">PIString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#aaa134cd7aecf18f151a09c497b19e0fa">sendIP</a> () const </td></tr>
<tr class="memdesc:aaa134cd7aecf18f151a09c497b19e0fa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns send IP. <br /></td></tr>
<tr class="separator:aaa134cd7aecf18f151a09c497b19e0fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a428a2e1cdf265f4b363240b4f8f40183"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a428a2e1cdf265f4b363240b4f8f40183"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a428a2e1cdf265f4b363240b4f8f40183">sendPort</a> () const </td></tr>
<tr class="memdesc:a428a2e1cdf265f4b363240b4f8f40183"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns send port. <br /></td></tr>
<tr class="separator:a428a2e1cdf265f4b363240b4f8f40183"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2edcd2272537c2250b4542c09e7f5d2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa2edcd2272537c2250b4542c09e7f5d2"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#aa2edcd2272537c2250b4542c09e7f5d2">setParameters</a> (<a class="el" href="class_p_i_flags.html">PIFlags</a>&lt; <a class="el" href="class_p_i_ethernet.html#ae03a64ce3d7d8a1e95b2212ab2497f55">PIEthernet::Parameters</a> &gt; parameters_)</td></tr>
<tr class="memdesc:aa2edcd2272537c2250b4542c09e7f5d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set parameters to "parameters_". You should to reopen PIEthernet to apply them. <br /></td></tr>
<tr class="separator:aa2edcd2272537c2250b4542c09e7f5d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a158851a3cde91615d8feaac4edb805fb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a158851a3cde91615d8feaac4edb805fb"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a158851a3cde91615d8feaac4edb805fb">setParameter</a> (<a class="el" href="class_p_i_ethernet.html#ae03a64ce3d7d8a1e95b2212ab2497f55">PIEthernet::Parameters</a> parameter, bool on=true)</td></tr>
<tr class="memdesc:a158851a3cde91615d8feaac4edb805fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set parameter "parameter" to state "on". You should to reopen PIEthernet to apply this. <br /></td></tr>
<tr class="separator:a158851a3cde91615d8feaac4edb805fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2131c00ba019a17cbf68c2b90fc8ec0f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2131c00ba019a17cbf68c2b90fc8ec0f"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a2131c00ba019a17cbf68c2b90fc8ec0f">isParameterSet</a> (<a class="el" href="class_p_i_ethernet.html#ae03a64ce3d7d8a1e95b2212ab2497f55">PIEthernet::Parameters</a> parameter) const </td></tr>
<tr class="memdesc:a2131c00ba019a17cbf68c2b90fc8ec0f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns if parameter "parameter" is set. <br /></td></tr>
<tr class="separator:a2131c00ba019a17cbf68c2b90fc8ec0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69d52300d09db298d90ebcf02b1006d9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a69d52300d09db298d90ebcf02b1006d9"></a>
<a class="el" href="class_p_i_flags.html">PIFlags</a>&lt; <a class="el" href="class_p_i_ethernet.html#ae03a64ce3d7d8a1e95b2212ab2497f55">PIEthernet::Parameters</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a69d52300d09db298d90ebcf02b1006d9">parameters</a> () const </td></tr>
<tr class="memdesc:a69d52300d09db298d90ebcf02b1006d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns parameters. <br /></td></tr>
<tr class="separator:a69d52300d09db298d90ebcf02b1006d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af42a7ca0266f28bc9a389aca1618f43f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af42a7ca0266f28bc9a389aca1618f43f"></a>
<a class="el" href="class_p_i_ethernet.html#a7abf73f51652b00af7a6198be2fa0f5c">Type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#af42a7ca0266f28bc9a389aca1618f43f">type</a> () const </td></tr>
<tr class="memdesc:af42a7ca0266f28bc9a389aca1618f43f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns PIEthernet type. <br /></td></tr>
<tr class="separator:af42a7ca0266f28bc9a389aca1618f43f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e2bd7559bfb46784bda61f88ad055b4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6e2bd7559bfb46784bda61f88ad055b4"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a6e2bd7559bfb46784bda61f88ad055b4">readTimeout</a> () const </td></tr>
<tr class="memdesc:a6e2bd7559bfb46784bda61f88ad055b4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns read timeout. <br /></td></tr>
<tr class="separator:a6e2bd7559bfb46784bda61f88ad055b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a377813eb8c2b6c223a543ce8a001ef99"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a377813eb8c2b6c223a543ce8a001ef99"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a377813eb8c2b6c223a543ce8a001ef99">writeTimeout</a> () const </td></tr>
<tr class="memdesc:a377813eb8c2b6c223a543ce8a001ef99"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns write timeout. <br /></td></tr>
<tr class="separator:a377813eb8c2b6c223a543ce8a001ef99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a414c18f256488c471093178137526776"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a414c18f256488c471093178137526776"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a414c18f256488c471093178137526776">setReadTimeout</a> (double ms)</td></tr>
<tr class="memdesc:a414c18f256488c471093178137526776"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set timeout for read. <br /></td></tr>
<tr class="separator:a414c18f256488c471093178137526776"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae15ac03c2fdcab779650759b932c4660"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae15ac03c2fdcab779650759b932c4660"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#ae15ac03c2fdcab779650759b932c4660">setWriteTimeout</a> (double ms)</td></tr>
<tr class="memdesc:ae15ac03c2fdcab779650759b932c4660"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set timeout for write. <br /></td></tr>
<tr class="separator:ae15ac03c2fdcab779650759b932c4660"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99df6e4eccbecb0b704678b8df273dec"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a99df6e4eccbecb0b704678b8df273dec"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a99df6e4eccbecb0b704678b8df273dec">joinMulticastGroup</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;group)</td></tr>
<tr class="memdesc:a99df6e4eccbecb0b704678b8df273dec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Join to multicast group with address "group". Use only for UDP. <br /></td></tr>
<tr class="separator:a99df6e4eccbecb0b704678b8df273dec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0213b620b1b79ee14dd6756bb11175c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac0213b620b1b79ee14dd6756bb11175c"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#ac0213b620b1b79ee14dd6756bb11175c">leaveMulticastGroup</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;group)</td></tr>
<tr class="memdesc:ac0213b620b1b79ee14dd6756bb11175c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Leave multicast group with address "group". Use only for UDP. <br /></td></tr>
<tr class="separator:ac0213b620b1b79ee14dd6756bb11175c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa7091f6fbba9f955eaba767e5a254f2e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa7091f6fbba9f955eaba767e5a254f2e"></a>
const <a class="el" href="class_p_i_string_list.html">PIStringList</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#aa7091f6fbba9f955eaba767e5a254f2e">multicastGroups</a> () const </td></tr>
<tr class="memdesc:aa7091f6fbba9f955eaba767e5a254f2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns joined multicast groups. Use only for UDP. <br /></td></tr>
<tr class="separator:aa7091f6fbba9f955eaba767e5a254f2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac09a74cc735c5e80e79b3f771a2a289c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac09a74cc735c5e80e79b3f771a2a289c"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#ac09a74cc735c5e80e79b3f771a2a289c">connect</a> ()</td></tr>
<tr class="memdesc:ac09a74cc735c5e80e79b3f771a2a289c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Connect to TCP server with address <em><a class="el" href="class_p_i_ethernet.html#a53052c78cb24aca1e1a65d8c14e1dd7c" title="Returns read address in format &quot;i.i.i.i:p&quot;. ">readAddress()</a></em>. Use only for TCP_Client. <br /></td></tr>
<tr class="separator:ac09a74cc735c5e80e79b3f771a2a289c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59b3f77ff2b8d62dacd6366a4d0879d3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a59b3f77ff2b8d62dacd6366a4d0879d3"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a59b3f77ff2b8d62dacd6366a4d0879d3">connect</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;<a class="el" href="class_p_i_ethernet.html#ae49bc185dedf39646ea445fd57e21283">ip</a>, int <a class="el" href="class_p_i_ethernet.html#ad6b354929e62f909918d73633ea49135">port</a>)</td></tr>
<tr class="memdesc:a59b3f77ff2b8d62dacd6366a4d0879d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Connect to TCP server with address "ip":"port". Use only for TCP_Client. <br /></td></tr>
<tr class="separator:a59b3f77ff2b8d62dacd6366a4d0879d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a262d31ac59d8a3539899be651a6e56e7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a262d31ac59d8a3539899be651a6e56e7"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a262d31ac59d8a3539899be651a6e56e7">connect</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;ip_port)</td></tr>
<tr class="memdesc:a262d31ac59d8a3539899be651a6e56e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Connect to TCP server with address "ip_port". Use only for TCP_Client. <br /></td></tr>
<tr class="separator:a262d31ac59d8a3539899be651a6e56e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6917b5530a9b4daa4030e49892db3887"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6917b5530a9b4daa4030e49892db3887"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a6917b5530a9b4daa4030e49892db3887">isConnected</a> () const </td></tr>
<tr class="memdesc:a6917b5530a9b4daa4030e49892db3887"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns if PIEthernet connected to TCP server. Use only for TCP_Client. <br /></td></tr>
<tr class="separator:a6917b5530a9b4daa4030e49892db3887"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b756229579e309044186b776989db16"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8b756229579e309044186b776989db16"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a8b756229579e309044186b776989db16">listen</a> (bool threaded=false)</td></tr>
<tr class="memdesc:a8b756229579e309044186b776989db16"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start listen for incoming TCP connections on address <em><a class="el" href="class_p_i_ethernet.html#a53052c78cb24aca1e1a65d8c14e1dd7c" title="Returns read address in format &quot;i.i.i.i:p&quot;. ">readAddress()</a></em>. Use only for TCP_Server. <br /></td></tr>
<tr class="separator:a8b756229579e309044186b776989db16"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac01db2157f9518237e915fabb360e40c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac01db2157f9518237e915fabb360e40c"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#ac01db2157f9518237e915fabb360e40c">listen</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;<a class="el" href="class_p_i_ethernet.html#ae49bc185dedf39646ea445fd57e21283">ip</a>, int <a class="el" href="class_p_i_ethernet.html#ad6b354929e62f909918d73633ea49135">port</a>, bool threaded=false)</td></tr>
<tr class="memdesc:ac01db2157f9518237e915fabb360e40c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start listen for incoming TCP connections on address "ip":"port". Use only for TCP_Server. <br /></td></tr>
<tr class="separator:ac01db2157f9518237e915fabb360e40c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a606a5cac3eca4126a5fd6ad2f29763ab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a606a5cac3eca4126a5fd6ad2f29763ab"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a606a5cac3eca4126a5fd6ad2f29763ab">listen</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;ip_port, bool threaded=false)</td></tr>
<tr class="memdesc:a606a5cac3eca4126a5fd6ad2f29763ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start listen for incoming TCP connections on address "ip_port". Use only for TCP_Server. <br /></td></tr>
<tr class="separator:a606a5cac3eca4126a5fd6ad2f29763ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af01b2a4c78bce376ba6cfcf4dd2907c1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af01b2a4c78bce376ba6cfcf4dd2907c1"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#af01b2a4c78bce376ba6cfcf4dd2907c1">send</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;<a class="el" href="class_p_i_ethernet.html#ae49bc185dedf39646ea445fd57e21283">ip</a>, int <a class="el" href="class_p_i_ethernet.html#ad6b354929e62f909918d73633ea49135">port</a>, const void *<a class="el" href="class_p_i_thread.html#aa3c4138dc000e34fb74140d0a5be3afe">data</a>, int size, bool threaded=false)</td></tr>
<tr class="memdesc:af01b2a4c78bce376ba6cfcf4dd2907c1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send data "data" with size "size" to address "ip":"port". <br /></td></tr>
<tr class="separator:af01b2a4c78bce376ba6cfcf4dd2907c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8c88ae9984347a23e2d5743dec5739e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae8c88ae9984347a23e2d5743dec5739e"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#ae8c88ae9984347a23e2d5743dec5739e">send</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;ip_port, const void *<a class="el" href="class_p_i_thread.html#aa3c4138dc000e34fb74140d0a5be3afe">data</a>, int size, bool threaded=false)</td></tr>
<tr class="memdesc:ae8c88ae9984347a23e2d5743dec5739e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send data "data" with size "size" to address "ip_port". <br /></td></tr>
<tr class="separator:ae8c88ae9984347a23e2d5743dec5739e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77b555fc82243b3e998cf2b008008f0f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a77b555fc82243b3e998cf2b008008f0f"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a77b555fc82243b3e998cf2b008008f0f">send</a> (const void *<a class="el" href="class_p_i_thread.html#aa3c4138dc000e34fb74140d0a5be3afe">data</a>, int size, bool threaded=false)</td></tr>
<tr class="memdesc:a77b555fc82243b3e998cf2b008008f0f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send data "data" with size "size" to address <em><a class="el" href="class_p_i_ethernet.html#a9f1c3496e88242f1637666a9a0ac9c86" title="Returns send address in format &quot;i.i.i.i:p&quot;. ">sendAddress()</a></em> for UDP or <em><a class="el" href="class_p_i_ethernet.html#a53052c78cb24aca1e1a65d8c14e1dd7c" title="Returns read address in format &quot;i.i.i.i:p&quot;. ">readAddress()</a></em> for TCP_Client. <br /></td></tr>
<tr class="separator:a77b555fc82243b3e998cf2b008008f0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b42711033d1c21ea978b4c3deed0962"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8b42711033d1c21ea978b4c3deed0962"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a8b42711033d1c21ea978b4c3deed0962">send</a> (const <a class="el" href="class_p_i_byte_array.html">PIByteArray</a> &amp;<a class="el" href="class_p_i_thread.html#aa3c4138dc000e34fb74140d0a5be3afe">data</a>, bool threaded=false)</td></tr>
<tr class="memdesc:a8b42711033d1c21ea978b4c3deed0962"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send data "data" to address <em><a class="el" href="class_p_i_ethernet.html#a9f1c3496e88242f1637666a9a0ac9c86" title="Returns send address in format &quot;i.i.i.i:p&quot;. ">sendAddress()</a></em> for UDP or <em><a class="el" href="class_p_i_ethernet.html#a53052c78cb24aca1e1a65d8c14e1dd7c" title="Returns read address in format &quot;i.i.i.i:p&quot;. ">readAddress()</a></em> for TCP_Client. <br /></td></tr>
<tr class="separator:a8b42711033d1c21ea978b4c3deed0962"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28595d8f88cdedf9e5572068ab116fa8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a28595d8f88cdedf9e5572068ab116fa8"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a28595d8f88cdedf9e5572068ab116fa8">read</a> (void *read_to, int max_size)</td></tr>
<tr class="memdesc:a28595d8f88cdedf9e5572068ab116fa8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wait for some data and read it to "read_to". <br /></td></tr>
<tr class="separator:a28595d8f88cdedf9e5572068ab116fa8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06c2ca73668cbdefc9fad4749b465ff0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a06c2ca73668cbdefc9fad4749b465ff0"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a06c2ca73668cbdefc9fad4749b465ff0">write</a> (const void *<a class="el" href="class_p_i_thread.html#aa3c4138dc000e34fb74140d0a5be3afe">data</a>, int max_size)</td></tr>
<tr class="memdesc:a06c2ca73668cbdefc9fad4749b465ff0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send data "read_to" with size "max_size" to address <em><a class="el" href="class_p_i_ethernet.html#a9f1c3496e88242f1637666a9a0ac9c86" title="Returns send address in format &quot;i.i.i.i:p&quot;. ">sendAddress()</a></em> for UDP or <em><a class="el" href="class_p_i_ethernet.html#a53052c78cb24aca1e1a65d8c14e1dd7c" title="Returns read address in format &quot;i.i.i.i:p&quot;. ">readAddress()</a></em> for TCP_Client. <br /></td></tr>
<tr class="separator:a06c2ca73668cbdefc9fad4749b465ff0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9dbe618372c2ad3f5a5e02b638b2aaf1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9dbe618372c2ad3f5a5e02b638b2aaf1"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a9dbe618372c2ad3f5a5e02b638b2aaf1">write</a> (const <a class="el" href="class_p_i_byte_array.html">PIByteArray</a> &amp;<a class="el" href="class_p_i_thread.html#aa3c4138dc000e34fb74140d0a5be3afe">data</a>)</td></tr>
<tr class="memdesc:a9dbe618372c2ad3f5a5e02b638b2aaf1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send data "data" to address <em><a class="el" href="class_p_i_ethernet.html#a9f1c3496e88242f1637666a9a0ac9c86" title="Returns send address in format &quot;i.i.i.i:p&quot;. ">sendAddress()</a></em> for UDP or <em><a class="el" href="class_p_i_ethernet.html#a53052c78cb24aca1e1a65d8c14e1dd7c" title="Returns read address in format &quot;i.i.i.i:p&quot;. ">readAddress()</a></em> for TCP_Client. <br /></td></tr>
<tr class="separator:a9dbe618372c2ad3f5a5e02b638b2aaf1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac4bac35deda7848e7c16e770c64b08ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac4bac35deda7848e7c16e770c64b08ee"></a>
<a class="el" href="class_p_i_string.html">PIString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#ac4bac35deda7848e7c16e770c64b08ee">constructFullPath</a> () const </td></tr>
<tr class="memdesc:ac4bac35deda7848e7c16e770c64b08ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reimplement to construct full unambiguous string, describes this device, default returns <em><a class="el" href="class_p_i_ethernet.html#ae80b62a0c52c5e0985e4fa3f39aadfea" title="Reimplement to construct full unambiguous string prefix. Creating devices by unambiguous string...">fullPathPrefix()</a></em> + "://" + <em>path()</em> <br /></td></tr>
<tr class="separator:ac4bac35deda7848e7c16e770c64b08ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_class_p_i_thread"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_p_i_thread')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_p_i_thread.html">PIThread</a></td></tr>
<tr class="memitem:adaa3b942365cb17b3e985648128e5f7e inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adaa3b942365cb17b3e985648128e5f7e"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#adaa3b942365cb17b3e985648128e5f7e">PIThread</a> (void *<a class="el" href="class_p_i_thread.html#aa3c4138dc000e34fb74140d0a5be3afe">data</a>, ThreadFunc func, bool startNow=false, int loop_delay=-1)</td></tr>
<tr class="memdesc:adaa3b942365cb17b3e985648128e5f7e inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Contructs thread with custom data "data", external function "func" and main loop delay "loop_delay". <br /></td></tr>
<tr class="separator:adaa3b942365cb17b3e985648128e5f7e inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a538752277df4d58134b05ef080ed6b04 inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a538752277df4d58134b05ef080ed6b04"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#a538752277df4d58134b05ef080ed6b04">PIThread</a> (bool startNow=false, int loop_delay=-1)</td></tr>
<tr class="memdesc:a538752277df4d58134b05ef080ed6b04 inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Contructs thread with main loop delay "loop_delay". <br /></td></tr>
<tr class="separator:a538752277df4d58134b05ef080ed6b04 inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a221e15d1a4093b7db6cc579fc8be69b6 inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a221e15d1a4093b7db6cc579fc8be69b6"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#a221e15d1a4093b7db6cc579fc8be69b6">setData</a> (void *d)</td></tr>
<tr class="memdesc:a221e15d1a4093b7db6cc579fc8be69b6 inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set common data passed to external function. <br /></td></tr>
<tr class="separator:a221e15d1a4093b7db6cc579fc8be69b6 inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85c22bf31dae02180827f2952e3594ee inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a85c22bf31dae02180827f2952e3594ee"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#a85c22bf31dae02180827f2952e3594ee">setSlot</a> (ThreadFunc func)</td></tr>
<tr class="memdesc:a85c22bf31dae02180827f2952e3594ee inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set external function that will be executed after every <em><a class="el" href="class_p_i_thread.html#a8c9cacfd381e0e02eb6e52810d48ce2e" title="Function executed at every &quot;timer_delay&quot; msecs until thread was stopped. ">run()</a></em> <br /></td></tr>
<tr class="separator:a85c22bf31dae02180827f2952e3594ee inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade6ddabe46917c5cef2f5da1dd613a69 inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ade6ddabe46917c5cef2f5da1dd613a69"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#ade6ddabe46917c5cef2f5da1dd613a69">setPriority</a> (<a class="el" href="class_p_i_thread.html#a3ddcafb0b09d3ed258a519882986a77b">PIThread::Priority</a> prior)</td></tr>
<tr class="memdesc:ade6ddabe46917c5cef2f5da1dd613a69 inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set priority of thread. <br /></td></tr>
<tr class="separator:ade6ddabe46917c5cef2f5da1dd613a69 inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3c4138dc000e34fb74140d0a5be3afe inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa3c4138dc000e34fb74140d0a5be3afe"></a>
void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#aa3c4138dc000e34fb74140d0a5be3afe">data</a> () const </td></tr>
<tr class="memdesc:aa3c4138dc000e34fb74140d0a5be3afe inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns common data passed to external function. <br /></td></tr>
<tr class="separator:aa3c4138dc000e34fb74140d0a5be3afe inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adcc0d49a7914cba2b3edc86c454ee3a6 inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adcc0d49a7914cba2b3edc86c454ee3a6"></a>
<a class="el" href="class_p_i_thread.html#a3ddcafb0b09d3ed258a519882986a77b">PIThread::Priority</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#adcc0d49a7914cba2b3edc86c454ee3a6">priority</a> () const </td></tr>
<tr class="memdesc:adcc0d49a7914cba2b3edc86c454ee3a6 inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return priority of thread. <br /></td></tr>
<tr class="separator:adcc0d49a7914cba2b3edc86c454ee3a6 inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46720d79609ec893d9eb5eaa2354c414 inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a46720d79609ec893d9eb5eaa2354c414"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#a46720d79609ec893d9eb5eaa2354c414">isRunning</a> () const </td></tr>
<tr class="memdesc:a46720d79609ec893d9eb5eaa2354c414 inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return <code>true</code> if thread is running. <br /></td></tr>
<tr class="separator:a46720d79609ec893d9eb5eaa2354c414 inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87a8b9315e3e2c0eb8bfeb864474da57 inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a87a8b9315e3e2c0eb8bfeb864474da57"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#a87a8b9315e3e2c0eb8bfeb864474da57">needLockRun</a> (bool need)</td></tr>
<tr class="memdesc:a87a8b9315e3e2c0eb8bfeb864474da57 inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set necessity of lock every <em>run</em> with internal mutex. <br /></td></tr>
<tr class="separator:a87a8b9315e3e2c0eb8bfeb864474da57 inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeaff22c99b5f5ba444671d658eba2f14 inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeaff22c99b5f5ba444671d658eba2f14"></a>
<a class="el" href="class_p_i_mutex.html">PIMutex</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#aeaff22c99b5f5ba444671d658eba2f14">mutex</a> ()</td></tr>
<tr class="memdesc:aeaff22c99b5f5ba444671d658eba2f14 inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return internal mutex. <br /></td></tr>
<tr class="separator:aeaff22c99b5f5ba444671d658eba2f14 inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5fb7161b42840be7fb2f738046887b39 inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#a5fb7161b42840be7fb2f738046887b39">start</a> (int timer_delay)</td></tr>
<tr class="memdesc:a5fb7161b42840be7fb2f738046887b39 inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start thread. <a href="#a5fb7161b42840be7fb2f738046887b39">More...</a><br /></td></tr>
<tr class="separator:a5fb7161b42840be7fb2f738046887b39 inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a38785bbce4ef9afb7116cea78beffa08 inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#a38785bbce4ef9afb7116cea78beffa08">start</a> (ThreadFunc func, int timer_delay)</td></tr>
<tr class="memdesc:a38785bbce4ef9afb7116cea78beffa08 inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start thread. <a href="#a38785bbce4ef9afb7116cea78beffa08">More...</a><br /></td></tr>
<tr class="separator:a38785bbce4ef9afb7116cea78beffa08 inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44a9fe015ea8288a0a336b614ff2962b inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#a44a9fe015ea8288a0a336b614ff2962b">startOnce</a> ()</td></tr>
<tr class="memdesc:a44a9fe015ea8288a0a336b614ff2962b inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start thread without internal loop. <a href="#a44a9fe015ea8288a0a336b614ff2962b">More...</a><br /></td></tr>
<tr class="separator:a44a9fe015ea8288a0a336b614ff2962b inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad50035fe7d3a2557178b6b46f6fa4861 inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#ad50035fe7d3a2557178b6b46f6fa4861">startOnce</a> (ThreadFunc func)</td></tr>
<tr class="memdesc:ad50035fe7d3a2557178b6b46f6fa4861 inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start thread without internal loop. <a href="#ad50035fe7d3a2557178b6b46f6fa4861">More...</a><br /></td></tr>
<tr class="separator:ad50035fe7d3a2557178b6b46f6fa4861 inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37e179466edd8011aca3a07e10153e62 inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#a37e179466edd8011aca3a07e10153e62">stop</a> (bool wait)</td></tr>
<tr class="memdesc:a37e179466edd8011aca3a07e10153e62 inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stop thread. <a href="#a37e179466edd8011aca3a07e10153e62">More...</a><br /></td></tr>
<tr class="separator:a37e179466edd8011aca3a07e10153e62 inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2004de7b6aa59ecb50321571b932ec20 inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#a2004de7b6aa59ecb50321571b932ec20">terminate</a> ()</td></tr>
<tr class="memdesc:a2004de7b6aa59ecb50321571b932ec20 inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Strongly stop thread. <a href="#a2004de7b6aa59ecb50321571b932ec20">More...</a><br /></td></tr>
<tr class="separator:a2004de7b6aa59ecb50321571b932ec20 inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8bcffcc0d12bdd6d8ddd455a15241313 inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#a8bcffcc0d12bdd6d8ddd455a15241313">waitForStart</a> (int timeout_msecs)</td></tr>
<tr class="memdesc:a8bcffcc0d12bdd6d8ddd455a15241313 inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wait for thread start. <a href="#a8bcffcc0d12bdd6d8ddd455a15241313">More...</a><br /></td></tr>
<tr class="separator:a8bcffcc0d12bdd6d8ddd455a15241313 inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae325266c7f3484ad52c0a5c690cc222c inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#ae325266c7f3484ad52c0a5c690cc222c">waitForFinish</a> (int timeout_msecs)</td></tr>
<tr class="memdesc:ae325266c7f3484ad52c0a5c690cc222c inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wait for thread finish. <a href="#ae325266c7f3484ad52c0a5c690cc222c">More...</a><br /></td></tr>
<tr class="separator:ae325266c7f3484ad52c0a5c690cc222c inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a221de2cf94a569a223bfc4456c0f4fed inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a221de2cf94a569a223bfc4456c0f4fed"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#a221de2cf94a569a223bfc4456c0f4fed">lock</a> ()</td></tr>
<tr class="memdesc:a221de2cf94a569a223bfc4456c0f4fed inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Lock internal mutex. <br /></td></tr>
<tr class="separator:a221de2cf94a569a223bfc4456c0f4fed inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a82baf1fe4608234ba76b68540100ee73 inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a82baf1fe4608234ba76b68540100ee73"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#a82baf1fe4608234ba76b68540100ee73">unlock</a> ()</td></tr>
<tr class="memdesc:a82baf1fe4608234ba76b68540100ee73 inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unlock internal mutex. <br /></td></tr>
<tr class="separator:a82baf1fe4608234ba76b68540100ee73 inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b91eb8632e75e0f00a625f28a0bedd1 inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6b91eb8632e75e0f00a625f28a0bedd1"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#a6b91eb8632e75e0f00a625f28a0bedd1">started</a> ()</td></tr>
<tr class="memdesc:a6b91eb8632e75e0f00a625f28a0bedd1 inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Raise on thread start. <br /></td></tr>
<tr class="separator:a6b91eb8632e75e0f00a625f28a0bedd1 inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa6350430814f777fdce81f99cbba4c1a inherit pub_methods_class_p_i_thread"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa6350430814f777fdce81f99cbba4c1a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_thread.html#aa6350430814f777fdce81f99cbba4c1a">stopped</a> ()</td></tr>
<tr class="memdesc:aa6350430814f777fdce81f99cbba4c1a inherit pub_methods_class_p_i_thread"><td class="mdescLeft">&#160;</td><td class="mdescRight">Raise on thread stop. <br /></td></tr>
<tr class="separator:aa6350430814f777fdce81f99cbba4c1a inherit pub_methods_class_p_i_thread"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_class_p_i_object"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_p_i_object')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_p_i_object.html">PIObject</a></td></tr>
<tr class="memitem:a779d66bab882a51ef6389d2e212f2bd6 inherit pub_methods_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a779d66bab882a51ef6389d2e212f2bd6"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a779d66bab882a51ef6389d2e212f2bd6">PIObject</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;<a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>=<a class="el" href="class_p_i_string.html">PIString</a>())</td></tr>
<tr class="memdesc:a779d66bab882a51ef6389d2e212f2bd6 inherit pub_methods_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Contructs <a class="el" href="class_p_i_object.html" title="This is base class for any classes which use events -> handlers mechanism. ">PIObject</a> with name "name". <br /></td></tr>
<tr class="separator:a779d66bab882a51ef6389d2e212f2bd6 inherit pub_methods_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee2242a0210f2a009d63764e01a37338 inherit pub_methods_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aee2242a0210f2a009d63764e01a37338"></a>
<a class="el" href="class_p_i_string.html">PIString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a> () const </td></tr>
<tr class="memdesc:aee2242a0210f2a009d63764e01a37338 inherit pub_methods_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns object name. <br /></td></tr>
<tr class="separator:aee2242a0210f2a009d63764e01a37338 inherit pub_methods_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5da8208d12e37e5277db308939208150 inherit pub_methods_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5da8208d12e37e5277db308939208150"></a>
virtual const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a5da8208d12e37e5277db308939208150">className</a> () const </td></tr>
<tr class="memdesc:a5da8208d12e37e5277db308939208150 inherit pub_methods_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns object class name. <br /></td></tr>
<tr class="separator:a5da8208d12e37e5277db308939208150 inherit pub_methods_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41060ba64a882ef4c3b24dc868c5635c inherit pub_methods_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a41060ba64a882ef4c3b24dc868c5635c"></a>
virtual const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a41060ba64a882ef4c3b24dc868c5635c">superClassName</a> () const </td></tr>
<tr class="memdesc:a41060ba64a882ef4c3b24dc868c5635c inherit pub_methods_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns object superclass name. <br /></td></tr>
<tr class="separator:a41060ba64a882ef4c3b24dc868c5635c inherit pub_methods_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a286d39fdf2dacf8bc1f26c8744d8bf18 inherit pub_methods_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a286d39fdf2dacf8bc1f26c8744d8bf18"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a286d39fdf2dacf8bc1f26c8744d8bf18">debug</a> () const </td></tr>
<tr class="memdesc:a286d39fdf2dacf8bc1f26c8744d8bf18 inherit pub_methods_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return if debug of this object is active. <br /></td></tr>
<tr class="separator:a286d39fdf2dacf8bc1f26c8744d8bf18 inherit pub_methods_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8eb211f42dfcf7b7a1f32acabbfd6ada inherit pub_methods_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8eb211f42dfcf7b7a1f32acabbfd6ada"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a8eb211f42dfcf7b7a1f32acabbfd6ada">setName</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;<a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>)</td></tr>
<tr class="memdesc:a8eb211f42dfcf7b7a1f32acabbfd6ada inherit pub_methods_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set object name. <br /></td></tr>
<tr class="separator:a8eb211f42dfcf7b7a1f32acabbfd6ada inherit pub_methods_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9a0ec972d4864287fae4d1a0edcd9dc5 inherit pub_methods_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9a0ec972d4864287fae4d1a0edcd9dc5"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a9a0ec972d4864287fae4d1a0edcd9dc5">setDebug</a> (bool <a class="el" href="class_p_i_object.html#a286d39fdf2dacf8bc1f26c8744d8bf18">debug</a>)</td></tr>
<tr class="memdesc:a9a0ec972d4864287fae4d1a0edcd9dc5 inherit pub_methods_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set object debug active. <br /></td></tr>
<tr class="separator:a9a0ec972d4864287fae4d1a0edcd9dc5 inherit pub_methods_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb8178ed4012f204d2c89a8413bbcd2d inherit pub_methods_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeb8178ed4012f204d2c89a8413bbcd2d"></a>
const PIMap&lt; <a class="el" href="class_p_i_string.html">PIString</a>, <br class="typebreak" />
<a class="el" href="class_p_i_variant.html">PIVariant</a> &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#aeb8178ed4012f204d2c89a8413bbcd2d">properties</a> () const </td></tr>
<tr class="memdesc:aeb8178ed4012f204d2c89a8413bbcd2d inherit pub_methods_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns properties of the object. <br /></td></tr>
<tr class="separator:aeb8178ed4012f204d2c89a8413bbcd2d inherit pub_methods_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a68dbd55885a081be717ff818dcb31bcc inherit pub_methods_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a68dbd55885a081be717ff818dcb31bcc"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a68dbd55885a081be717ff818dcb31bcc">propertiesCount</a> () const </td></tr>
<tr class="memdesc:a68dbd55885a081be717ff818dcb31bcc inherit pub_methods_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns properties count of the object. <br /></td></tr>
<tr class="separator:a68dbd55885a081be717ff818dcb31bcc inherit pub_methods_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0cadfad8b61e8c994abde7d2d4853ac inherit pub_methods_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad0cadfad8b61e8c994abde7d2d4853ac"></a>
<a class="el" href="class_p_i_variant.html">PIVariant</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#ad0cadfad8b61e8c994abde7d2d4853ac">property</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;<a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>) const </td></tr>
<tr class="memdesc:ad0cadfad8b61e8c994abde7d2d4853ac inherit pub_methods_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns property with name "name". <br /></td></tr>
<tr class="separator:ad0cadfad8b61e8c994abde7d2d4853ac inherit pub_methods_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a647e2f79b975cf88d636a2ca2dadfb9c inherit pub_methods_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a647e2f79b975cf88d636a2ca2dadfb9c"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a647e2f79b975cf88d636a2ca2dadfb9c">setProperty</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;<a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>, const <a class="el" href="class_p_i_variant.html">PIVariant</a> &amp;value)</td></tr>
<tr class="memdesc:a647e2f79b975cf88d636a2ca2dadfb9c inherit pub_methods_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set property with name "name" to "value". If there is no such property in object it will be added. <br /></td></tr>
<tr class="separator:a647e2f79b975cf88d636a2ca2dadfb9c inherit pub_methods_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d6bd4c57aa01dc41e1b28720f9604a7 inherit pub_methods_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8d6bd4c57aa01dc41e1b28720f9604a7"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a8d6bd4c57aa01dc41e1b28720f9604a7">isPropertyExists</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;<a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>) const </td></tr>
<tr class="memdesc:a8d6bd4c57aa01dc41e1b28720f9604a7 inherit pub_methods_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns if property with name "name" exists. <br /></td></tr>
<tr class="separator:a8d6bd4c57aa01dc41e1b28720f9604a7 inherit pub_methods_class_p_i_object"><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:a482e4a9f3730768f62eaecc36b82a636"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a482e4a9f3730768f62eaecc36b82a636"></a>
static <a class="el" href="class_p_i_ethernet_1_1_interface_list.html">InterfaceList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a482e4a9f3730768f62eaecc36b82a636">interfaces</a> ()</td></tr>
<tr class="memdesc:a482e4a9f3730768f62eaecc36b82a636"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns all system network interfaces. <br /></td></tr>
<tr class="separator:a482e4a9f3730768f62eaecc36b82a636"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91b83d7459a4265bca9362d531dbf773"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a91b83d7459a4265bca9362d531dbf773"></a>
static <a class="el" href="class_p_i_string_list.html">PIStringList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a91b83d7459a4265bca9362d531dbf773">allAddresses</a> ()</td></tr>
<tr class="memdesc:a91b83d7459a4265bca9362d531dbf773"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns all system network IP addresses. <br /></td></tr>
<tr class="separator:a91b83d7459a4265bca9362d531dbf773"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_static_methods_class_p_i_object"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_class_p_i_object')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="class_p_i_object.html">PIObject</a></td></tr>
<tr class="memitem:af4581f822cb17c489e34da1abca2764a inherit pub_static_methods_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af4581f822cb17c489e34da1abca2764a"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#af4581f822cb17c489e34da1abca2764a">piDisconnect</a> (<a class="el" href="class_p_i_object.html">PIObject</a> *src, const <a class="el" href="class_p_i_string.html">PIString</a> &amp;sig)</td></tr>
<tr class="memdesc:af4581f822cb17c489e34da1abca2764a inherit pub_static_methods_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disconnect object "src" from all connections with event name "sig". <br /></td></tr>
<tr class="separator:af4581f822cb17c489e34da1abca2764a inherit pub_static_methods_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d556c03cc2ba29fd2515abc470e3393 inherit pub_static_methods_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1d556c03cc2ba29fd2515abc470e3393"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a1d556c03cc2ba29fd2515abc470e3393">piDisconnect</a> (<a class="el" href="class_p_i_object.html">PIObject</a> *src)</td></tr>
<tr class="memdesc:a1d556c03cc2ba29fd2515abc470e3393 inherit pub_static_methods_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disconnect object "src" from all connections, i.e. all connections where object "src" is emitter. <br /></td></tr>
<tr class="separator:a1d556c03cc2ba29fd2515abc470e3393 inherit pub_static_methods_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe05189de1d6ebbf44a2e16cfe200848 inherit pub_static_methods_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afe05189de1d6ebbf44a2e16cfe200848"></a>
static <a class="el" href="class_p_i_object.html">PIObject</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#afe05189de1d6ebbf44a2e16cfe200848">findByName</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;<a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>)</td></tr>
<tr class="memdesc:afe05189de1d6ebbf44a2e16cfe200848 inherit pub_static_methods_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns PIObject* with name "name" or 0, if there is no object found. <br /></td></tr>
<tr class="separator:afe05189de1d6ebbf44a2e16cfe200848 inherit pub_static_methods_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:aeab32d357e600e3428a3c40db782df1e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeab32d357e600e3428a3c40db782df1e"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#aeab32d357e600e3428a3c40db782df1e">propertyChanged</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;<a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>)</td></tr>
<tr class="memdesc:aeab32d357e600e3428a3c40db782df1e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Virtual function executes after property with name "name" has been changed. <br /></td></tr>
<tr class="separator:aeab32d357e600e3428a3c40db782df1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae80b62a0c52c5e0985e4fa3f39aadfea"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae80b62a0c52c5e0985e4fa3f39aadfea"></a>
<a class="el" href="class_p_i_string.html">PIString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#ae80b62a0c52c5e0985e4fa3f39aadfea">fullPathPrefix</a> () const </td></tr>
<tr class="memdesc:ae80b62a0c52c5e0985e4fa3f39aadfea"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reimplement to construct full unambiguous string prefix. <a class="el" href="class_p_i_i_o_device.html#PIIODevice_sec7">Creating devices by unambiguous string</a>. <br /></td></tr>
<tr class="separator:ae80b62a0c52c5e0985e4fa3f39aadfea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a884e1f63790d644916fb54da4603ba2d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a884e1f63790d644916fb54da4603ba2d"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a884e1f63790d644916fb54da4603ba2d">configureFromFullPath</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;full_path)</td></tr>
<tr class="memdesc:a884e1f63790d644916fb54da4603ba2d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reimplement to configure your device with parameters of full unambiguous string. Default implementation does nothing. <br /></td></tr>
<tr class="separator:a884e1f63790d644916fb54da4603ba2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af6a952895c0e75d5420b5671c929721a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af6a952895c0e75d5420b5671c929721a"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#af6a952895c0e75d5420b5671c929721a">configureDevice</a> (const void *e_main, const void *e_parent=0)</td></tr>
<tr class="memdesc:af6a952895c0e75d5420b5671c929721a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reimplement to configure device from entries "e_main" and "e_parent", cast arguments to <em><a class="el" href="class_p_i_config_1_1_entry.html" title="Entry of configuration file ">PIConfig::Entry</a>*</em>. <br /></td></tr>
<tr class="separator:af6a952895c0e75d5420b5671c929721a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2adc07e00ede7ca18bfa93e94290a9f9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2adc07e00ede7ca18bfa93e94290a9f9"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a2adc07e00ede7ca18bfa93e94290a9f9">received</a> (const void *<a class="el" href="class_p_i_thread.html#aa3c4138dc000e34fb74140d0a5be3afe">data</a>, int size)</td></tr>
<tr class="memdesc:a2adc07e00ede7ca18bfa93e94290a9f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes when any read function was successful. Default implementation does nothing. <br /></td></tr>
<tr class="separator:a2adc07e00ede7ca18bfa93e94290a9f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c9a8d104603bcb93b7b5f096b3105bb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9c9a8d104603bcb93b7b5f096b3105bb"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a9c9a8d104603bcb93b7b5f096b3105bb">init</a> ()</td></tr>
<tr class="memdesc:a9c9a8d104603bcb93b7b5f096b3105bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function executed before first <em><a class="el" href="class_p_i_ethernet.html#a6168aeef5b82bb0f8befa17366f1b116" title="Reimplement to open device, return value will be set to &quot;opened_&quot; variable. ">openDevice()</a></em> or from constructor. <br /></td></tr>
<tr class="separator:a9c9a8d104603bcb93b7b5f096b3105bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6168aeef5b82bb0f8befa17366f1b116"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6168aeef5b82bb0f8befa17366f1b116"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a6168aeef5b82bb0f8befa17366f1b116">openDevice</a> ()</td></tr>
<tr class="memdesc:a6168aeef5b82bb0f8befa17366f1b116"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reimplement to open device, return value will be set to "opened_" variable. <br /></td></tr>
<tr class="separator:a6168aeef5b82bb0f8befa17366f1b116"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5229b3d4d175a6144a189a7204e02204"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5229b3d4d175a6144a189a7204e02204"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a5229b3d4d175a6144a189a7204e02204">closeDevice</a> ()</td></tr>
<tr class="memdesc:a5229b3d4d175a6144a189a7204e02204"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reimplement to close device, inverse return value will be set to "opened_" variable. <br /></td></tr>
<tr class="separator:a5229b3d4d175a6144a189a7204e02204"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_class_p_i_i_o_device"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_p_i_i_o_device')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="class_p_i_i_o_device.html">PIIODevice</a></td></tr>
<tr class="memitem:a3c744704af365358af074e1089e20068 inherit pro_methods_class_p_i_i_o_device"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3c744704af365358af074e1089e20068"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_i_o_device.html#a3c744704af365358af074e1089e20068">threadedRead</a> (uchar *readed, int size)</td></tr>
<tr class="memdesc:a3c744704af365358af074e1089e20068 inherit pro_methods_class_p_i_i_o_device"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function executed when thread read some data, default implementation execute external slot "ret_func_". <br /></td></tr>
<tr class="separator:a3c744704af365358af074e1089e20068 inherit pro_methods_class_p_i_i_o_device"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_class_p_i_object"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_p_i_object')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="class_p_i_object.html">PIObject</a></td></tr>
<tr class="memitem:a2f43644909496ba11ca294a67ed18deb inherit pro_methods_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2f43644909496ba11ca294a67ed18deb"></a>
<a class="el" href="class_p_i_object.html">PIObject</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a2f43644909496ba11ca294a67ed18deb">emitter</a> () const </td></tr>
<tr class="memdesc:a2f43644909496ba11ca294a67ed18deb inherit pro_methods_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns PIObject* which has raised an event. This value is correct only in definition of some event handler. <br /></td></tr>
<tr class="separator:a2f43644909496ba11ca294a67ed18deb inherit pro_methods_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Events</h2></td></tr>
<tr class="memitem:aae2f98a5e99d82d5520e352bb2c87a76"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aae2f98a5e99d82d5520e352bb2c87a76"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#aae2f98a5e99d82d5520e352bb2c87a76">newConnection</a> (<a class="el" href="class_p_i_ethernet.html">PIEthernet</a> *client)</td></tr>
<tr class="memdesc:aae2f98a5e99d82d5520e352bb2c87a76"><td class="mdescLeft">&#160;</td><td class="mdescRight">Raise on new TCP connection received. <br /></td></tr>
<tr class="separator:aae2f98a5e99d82d5520e352bb2c87a76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a80df2b0b931858d93065fa32e1682bc7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a80df2b0b931858d93065fa32e1682bc7"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a80df2b0b931858d93065fa32e1682bc7">connected</a> ()</td></tr>
<tr class="memdesc:a80df2b0b931858d93065fa32e1682bc7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Raise if succesfull TCP connection. <br /></td></tr>
<tr class="separator:a80df2b0b931858d93065fa32e1682bc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e7319514519c950760c760f605f330f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0e7319514519c950760c760f605f330f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a0e7319514519c950760c760f605f330f">disconnected</a> (bool withError)</td></tr>
<tr class="memdesc:a0e7319514519c950760c760f605f330f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Raise if TCP connection was closed. <br /></td></tr>
<tr class="separator:a0e7319514519c950760c760f605f330f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Configurable parameters</h2></td></tr>
<tr class="memitem:ae49bc185dedf39646ea445fd57e21283"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae49bc185dedf39646ea445fd57e21283"></a>
string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#ae49bc185dedf39646ea445fd57e21283">ip</a></td></tr>
<tr class="memdesc:ae49bc185dedf39646ea445fd57e21283"><td class="mdescLeft">&#160;</td><td class="mdescRight">read ip, default "" <br /></td></tr>
<tr class="separator:ae49bc185dedf39646ea445fd57e21283"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6b354929e62f909918d73633ea49135"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad6b354929e62f909918d73633ea49135"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#ad6b354929e62f909918d73633ea49135">port</a></td></tr>
<tr class="memdesc:ad6b354929e62f909918d73633ea49135"><td class="mdescLeft">&#160;</td><td class="mdescRight">read port, default 0 <br /></td></tr>
<tr class="separator:ad6b354929e62f909918d73633ea49135"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd3b6f9ba04b899316f8bd7067ec03e7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abd3b6f9ba04b899316f8bd7067ec03e7"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#abd3b6f9ba04b899316f8bd7067ec03e7">broadcast</a></td></tr>
<tr class="memdesc:abd3b6f9ba04b899316f8bd7067ec03e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Broadcast parameter, default false. <br /></td></tr>
<tr class="separator:abd3b6f9ba04b899316f8bd7067ec03e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a079e3664394cae2bd1a7981bbfd580ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a079e3664394cae2bd1a7981bbfd580ee"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_ethernet.html#a079e3664394cae2bd1a7981bbfd580ee">reuseAddress</a></td></tr>
<tr class="memdesc:a079e3664394cae2bd1a7981bbfd580ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">ReuseAddress parameter, default false. <br /></td></tr>
<tr class="separator:a079e3664394cae2bd1a7981bbfd580ee"><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 related_class_p_i_i_o_device"><td colspan="2" onclick="javascript:toggleInherit('related_class_p_i_i_o_device')"><img src="closed.png" alt="-"/>&#160;Related Functions inherited from <a class="el" href="class_p_i_i_o_device.html">PIIODevice</a></td></tr>
<tr class="memitem:add5b851e98d22dd4d7482a8e509113dc inherit related_class_p_i_i_o_device"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:add5b851e98d22dd4d7482a8e509113dc inherit related_class_p_i_i_o_device"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_p_i_i_o_device.html#add5b851e98d22dd4d7482a8e509113dc">readDeviceSetting</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &amp;<a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>, const T &amp;def, const <a class="el" href="class_p_i_config_1_1_entry.html">PIConfig::Entry</a> *em, const <a class="el" href="class_p_i_config_1_1_entry.html">PIConfig::Entry</a> *ep)</td></tr>
<tr class="memdesc:add5b851e98d22dd4d7482a8e509113dc inherit related_class_p_i_i_o_device"><td class="mdescLeft">&#160;</td><td class="mdescRight">Service function. useful for configuring devices. <a href="#add5b851e98d22dd4d7482a8e509113dc">More...</a><br /></td></tr>
<tr class="separator:add5b851e98d22dd4d7482a8e509113dc inherit related_class_p_i_i_o_device"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a672a05d4391737b8fecd4524f1a47bda inherit related_class_p_i_i_o_device"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a672a05d4391737b8fecd4524f1a47bda"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_i_o_device.html#a672a05d4391737b8fecd4524f1a47bda">REGISTER_DEVICE</a>(class)</td></tr>
<tr class="memdesc:a672a05d4391737b8fecd4524f1a47bda inherit related_class_p_i_i_o_device"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use this macro to enable automatic creation instances of your class with <em>createFromFullPath()</em> function. <br /></td></tr>
<tr class="separator:a672a05d4391737b8fecd4524f1a47bda inherit related_class_p_i_i_o_device"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5adabd429443716b75771317ec43301b inherit related_class_p_i_i_o_device"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5adabd429443716b75771317ec43301b"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_i_o_device.html#a5adabd429443716b75771317ec43301b">PIIODEVICE</a>(class)</td></tr>
<tr class="memdesc:a5adabd429443716b75771317ec43301b inherit related_class_p_i_i_o_device"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use this macro instead of PIOBJECT when describe your own <a class="el" href="class_p_i_i_o_device.html" title="Base class for input/output classes. ">PIIODevice</a>. <br /></td></tr>
<tr class="separator:a5adabd429443716b75771317ec43301b inherit related_class_p_i_i_o_device"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header related_class_p_i_object"><td colspan="2" onclick="javascript:toggleInherit('related_class_p_i_object')"><img src="closed.png" alt="-"/>&#160;Related Functions inherited from <a class="el" href="class_p_i_object.html">PIObject</a></td></tr>
<tr class="memitem:a722b67a967e55918f6921de66ecffce9 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a722b67a967e55918f6921de66ecffce9"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a722b67a967e55918f6921de66ecffce9">piCoutObj</a></td></tr>
<tr class="memdesc:a722b67a967e55918f6921de66ecffce9 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Macro used for conditional (piDebug and <a class="el" href="class_p_i_object.html#a286d39fdf2dacf8bc1f26c8744d8bf18" title="Return if debug of this object is active. ">PIObject::debug()</a>) output to <a class="el" href="class_p_i_cout.html" title="Class for formatted output similar std::cout. ">PICout</a> for subclasses of <a class="el" href="class_p_i_object.html" title="This is base class for any classes which use events -> handlers mechanism. ">PIObject</a>. <br /></td></tr>
<tr class="separator:a722b67a967e55918f6921de66ecffce9 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:affa62b02040517a34b3f173d804e487f inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="affa62b02040517a34b3f173d804e487f"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#affa62b02040517a34b3f173d804e487f">PIOBJECT</a>(<a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>)</td></tr>
<tr class="memdesc:affa62b02040517a34b3f173d804e487f inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">you should use this macro after class declaration to use EVENT and EVENT_HANDLER and correct piCoutObj output <br /></td></tr>
<tr class="separator:affa62b02040517a34b3f173d804e487f inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ce1840f79eac65344a4c5823f5034d4 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4ce1840f79eac65344a4c5823f5034d4"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a4ce1840f79eac65344a4c5823f5034d4">PIOBJECT_PARENT</a>(<a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>)</td></tr>
<tr class="memdesc:a4ce1840f79eac65344a4c5823f5034d4 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">you should use this macro after class declaration to use EVENT and EVENT_HANDLER of parent class <br /></td></tr>
<tr class="separator:a4ce1840f79eac65344a4c5823f5034d4 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab605cf0454d34cc72c65bfed2abd696a inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab605cf0454d34cc72c65bfed2abd696a"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#ab605cf0454d34cc72c65bfed2abd696a">EVENT_HANDLER0</a>(ret, <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>)&#160;&#160;&#160;ret <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>()</td></tr>
<tr class="memdesc:ab605cf0454d34cc72c65bfed2abd696a inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">declare event handler "event" with name "name" and return type "ret", ret <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338" title="Returns object name. ">name()</a> <br /></td></tr>
<tr class="separator:ab605cf0454d34cc72c65bfed2abd696a inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56defa004e9b7efb2db50b3a43ca7225 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a56defa004e9b7efb2db50b3a43ca7225"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a56defa004e9b7efb2db50b3a43ca7225">EVENT_HANDLER1</a>(ret, <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>, type0, var0)&#160;&#160;&#160;ret <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>(type0 var0)</td></tr>
<tr class="memdesc:a56defa004e9b7efb2db50b3a43ca7225 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">declare event handler "event" with name "name" and return type "ret", ret name(type0 var0) <br /></td></tr>
<tr class="separator:a56defa004e9b7efb2db50b3a43ca7225 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb64b696544ee4ee8715add9747c1293 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abb64b696544ee4ee8715add9747c1293"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#abb64b696544ee4ee8715add9747c1293">EVENT_HANDLER2</a>(ret, <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>, type0, var0, type1, var1)&#160;&#160;&#160;ret <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>(type0 var0, type1 var1)</td></tr>
<tr class="memdesc:abb64b696544ee4ee8715add9747c1293 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">declare event handler "event" with name "name" and return type "ret", ret name(type0 var0, type1 var1) <br /></td></tr>
<tr class="separator:abb64b696544ee4ee8715add9747c1293 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af90eced49fbdb43f5fc631fa7e7a44fb inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af90eced49fbdb43f5fc631fa7e7a44fb"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#af90eced49fbdb43f5fc631fa7e7a44fb">EVENT_HANDLER3</a>(ret, <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>, type0, var0, type1, var1, type2, var2)&#160;&#160;&#160;ret <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>(type0 var0, type1 var1, type2 var2)</td></tr>
<tr class="memdesc:af90eced49fbdb43f5fc631fa7e7a44fb inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">declare event handler "event" with name "name" and return type "ret", ret name(type0 var0, type1 var1, type2 var2) <br /></td></tr>
<tr class="separator:af90eced49fbdb43f5fc631fa7e7a44fb inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8a8499ba07a4cc16c0b15c51b197d9f inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae8a8499ba07a4cc16c0b15c51b197d9f"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#ae8a8499ba07a4cc16c0b15c51b197d9f">EVENT_HANDLER4</a>(ret, <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>, type0, var0, type1, var1, type2, var2, type3, var3)&#160;&#160;&#160;ret <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>(type0 var0, type1 var1, type2 var2, type3 var3)</td></tr>
<tr class="memdesc:ae8a8499ba07a4cc16c0b15c51b197d9f inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">declare event handler "event" with name "name" and return type "ret", ret name(type0 var0, type1 var1, type2 var2, type3 var3) <br /></td></tr>
<tr class="separator:ae8a8499ba07a4cc16c0b15c51b197d9f inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae92ae8e64fbb4c6fa7d87cc1e93d55c0 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae92ae8e64fbb4c6fa7d87cc1e93d55c0"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#ae92ae8e64fbb4c6fa7d87cc1e93d55c0">EVENT_HANDLER</a>&#160;&#160;&#160;<a class="el" href="class_p_i_object.html#ab605cf0454d34cc72c65bfed2abd696a">EVENT_HANDLER0</a></td></tr>
<tr class="memdesc:ae92ae8e64fbb4c6fa7d87cc1e93d55c0 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">EVENT_HANDLER is synonym of EVENT_HANDLER0. <br /></td></tr>
<tr class="separator:ae92ae8e64fbb4c6fa7d87cc1e93d55c0 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a338377c8ec10707dd26a168b8aef5c31 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a338377c8ec10707dd26a168b8aef5c31"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a338377c8ec10707dd26a168b8aef5c31">EVENT_VHANDLER0</a>(ret, <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>)&#160;&#160;&#160;virtual ret <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>()</td></tr>
<tr class="memdesc:a338377c8ec10707dd26a168b8aef5c31 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">declare virtual event handler "event" with name "name" and return type "ret", virtual ret <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338" title="Returns object name. ">name()</a> <br /></td></tr>
<tr class="separator:a338377c8ec10707dd26a168b8aef5c31 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf138848427466a7ae91ada5876f926d inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abf138848427466a7ae91ada5876f926d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#abf138848427466a7ae91ada5876f926d">EVENT_VHANDLER1</a>(ret, <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>, type0, var0)&#160;&#160;&#160;virtual ret <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>(type0 var0)</td></tr>
<tr class="memdesc:abf138848427466a7ae91ada5876f926d inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">declare virtual event handler "event" with name "name" and return type "ret", virtual ret name(type0 var0) <br /></td></tr>
<tr class="separator:abf138848427466a7ae91ada5876f926d inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0ba4a14c77b8d968dc13918f9b2d384 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad0ba4a14c77b8d968dc13918f9b2d384"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#ad0ba4a14c77b8d968dc13918f9b2d384">EVENT_VHANDLER2</a>(ret, <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>, type0, var0, type1, var1)&#160;&#160;&#160;virtual ret <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>(type0 var0, type1 var1)</td></tr>
<tr class="memdesc:ad0ba4a14c77b8d968dc13918f9b2d384 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">declare virtual event handler "event" with name "name" and return type "ret", virtual ret name(type0 var0, type1 var1) <br /></td></tr>
<tr class="separator:ad0ba4a14c77b8d968dc13918f9b2d384 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f47b429ac594cebdca1567e1b9a1021 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4f47b429ac594cebdca1567e1b9a1021"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a4f47b429ac594cebdca1567e1b9a1021">EVENT_VHANDLER3</a>(ret, <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>, type0, var0, type1, var1, type2, var2)&#160;&#160;&#160;virtual ret <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>(type0 var0, type1 var1, type2 var2)</td></tr>
<tr class="memdesc:a4f47b429ac594cebdca1567e1b9a1021 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">declare virtual event handler "event" with name "name" and return type "ret", virtual ret name(type0 var0, type1 var1, type2 var2) <br /></td></tr>
<tr class="separator:a4f47b429ac594cebdca1567e1b9a1021 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96b2461314db11f3b68942bcd4b9d13d inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a96b2461314db11f3b68942bcd4b9d13d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a96b2461314db11f3b68942bcd4b9d13d">EVENT_VHANDLER4</a>(ret, <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>, type0, var0, type1, var1, type2, var2, type3, var3)&#160;&#160;&#160;virtual ret <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>(type0 var0, type1 var1, type2 var2, type3 var3)</td></tr>
<tr class="memdesc:a96b2461314db11f3b68942bcd4b9d13d inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">declare virtual event handler "event" with name "name" and return type "ret", virtual ret name(type0 var0, type1 var1, type2 var2, type3 var3) <br /></td></tr>
<tr class="separator:a96b2461314db11f3b68942bcd4b9d13d inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a26a0e3181ebb2a90c11e9a7eb906a99e inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a26a0e3181ebb2a90c11e9a7eb906a99e"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a26a0e3181ebb2a90c11e9a7eb906a99e">EVENT_VHANDLER</a>&#160;&#160;&#160;<a class="el" href="class_p_i_object.html#a338377c8ec10707dd26a168b8aef5c31">EVENT_VHANDLER0</a></td></tr>
<tr class="memdesc:a26a0e3181ebb2a90c11e9a7eb906a99e inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">EVENT_VHANDLER is synonym of EVENT_VHANDLER0. <br /></td></tr>
<tr class="separator:a26a0e3181ebb2a90c11e9a7eb906a99e inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4fa760299649bc8aeaa0dcf4d605be70 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4fa760299649bc8aeaa0dcf4d605be70"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a4fa760299649bc8aeaa0dcf4d605be70">EVENT0</a>(<a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>)&#160;&#160;&#160;void <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>();</td></tr>
<tr class="memdesc:a4fa760299649bc8aeaa0dcf4d605be70 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">declare event "event" with name "name", void <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338" title="Returns object name. ">name()</a>; <br /></td></tr>
<tr class="separator:a4fa760299649bc8aeaa0dcf4d605be70 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7083e0b630c70def2ce05d60d70a45b9 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7083e0b630c70def2ce05d60d70a45b9"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a7083e0b630c70def2ce05d60d70a45b9">EVENT1</a>(<a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>, type0, var0)&#160;&#160;&#160;void <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>(type0 var0);</td></tr>
<tr class="memdesc:a7083e0b630c70def2ce05d60d70a45b9 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">declare event "event" with name "name", void name(type0 var0); <br /></td></tr>
<tr class="separator:a7083e0b630c70def2ce05d60d70a45b9 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91d380b7235ad11b4830c4c2e8860618 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a91d380b7235ad11b4830c4c2e8860618"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a91d380b7235ad11b4830c4c2e8860618">EVENT2</a>(<a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>, type0, var0, type1, var1)&#160;&#160;&#160;void <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>(type0 var0, type1 var1);</td></tr>
<tr class="memdesc:a91d380b7235ad11b4830c4c2e8860618 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">declare event "event" with name "name", void name(type0 var0, type1 var1); <br /></td></tr>
<tr class="separator:a91d380b7235ad11b4830c4c2e8860618 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a685a85b0791e73158dc0173b4e18dd00 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a685a85b0791e73158dc0173b4e18dd00"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a685a85b0791e73158dc0173b4e18dd00">EVENT3</a>(<a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>, type0, var0, type1, var1, type2, var2)&#160;&#160;&#160;void <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>(type0 var0, type1 var1, type2 var2);</td></tr>
<tr class="memdesc:a685a85b0791e73158dc0173b4e18dd00 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">declare event "event" with name "name", void name(type0 var0, type1 var1, type2 var2); <br /></td></tr>
<tr class="separator:a685a85b0791e73158dc0173b4e18dd00 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59032ae5e0b94cdfb52be1f24d5e8252 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a59032ae5e0b94cdfb52be1f24d5e8252"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a59032ae5e0b94cdfb52be1f24d5e8252">EVENT4</a>(<a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>, type0, var0, type1, var1, type2, var2, type3, var3)&#160;&#160;&#160;void <a class="el" href="class_p_i_object.html#aee2242a0210f2a009d63764e01a37338">name</a>(type0 var0, type1 var1, type2 var2, type3 var3);</td></tr>
<tr class="memdesc:a59032ae5e0b94cdfb52be1f24d5e8252 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">declare event "event" with name "name", void name(type0 var0, type1 var1, type2 var2, type3 var3); <br /></td></tr>
<tr class="separator:a59032ae5e0b94cdfb52be1f24d5e8252 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7877e997621e1161f058fce90febd464 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7877e997621e1161f058fce90febd464"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a7877e997621e1161f058fce90febd464">EVENT</a>&#160;&#160;&#160;<a class="el" href="class_p_i_object.html#a4fa760299649bc8aeaa0dcf4d605be70">EVENT0</a></td></tr>
<tr class="memdesc:a7877e997621e1161f058fce90febd464 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">EVENT is synonym of EVENT0. <br /></td></tr>
<tr class="separator:a7877e997621e1161f058fce90febd464 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac86f9567fcbe10d7e49685e0a01b8427 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac86f9567fcbe10d7e49685e0a01b8427"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#ac86f9567fcbe10d7e49685e0a01b8427">CONNECTU</a>(src, event, dest, handler)</td></tr>
<tr class="memdesc:ac86f9567fcbe10d7e49685e0a01b8427 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">connect event "event" from object "src" to event handler "handler". "Event" and "handler" must has equal argument lists. <br /></td></tr>
<tr class="separator:ac86f9567fcbe10d7e49685e0a01b8427 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a38e74a7ce99df00a10517f5ce4aa66c5 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a38e74a7ce99df00a10517f5ce4aa66c5"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a38e74a7ce99df00a10517f5ce4aa66c5">CONNECT0</a>(ret, src, event, dest, handler)</td></tr>
<tr class="memdesc:a38e74a7ce99df00a10517f5ce4aa66c5 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" with check of event and handler exists <br /></td></tr>
<tr class="separator:a38e74a7ce99df00a10517f5ce4aa66c5 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a36132851189bb01db4957595111a28db inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a36132851189bb01db4957595111a28db"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a36132851189bb01db4957595111a28db">CONNECT1</a>(ret, type0, src, event, dest, handler)</td></tr>
<tr class="memdesc:a36132851189bb01db4957595111a28db inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" with check of event and handler exists <br /></td></tr>
<tr class="separator:a36132851189bb01db4957595111a28db inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a850bbf4e8361a106c99da4c46f684247 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a850bbf4e8361a106c99da4c46f684247"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a850bbf4e8361a106c99da4c46f684247">CONNECT2</a>(ret, type0, type1, src, event, dest, handler)</td></tr>
<tr class="memdesc:a850bbf4e8361a106c99da4c46f684247 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" with check of event and handler exists <br /></td></tr>
<tr class="separator:a850bbf4e8361a106c99da4c46f684247 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab45dbd69bde3cde22d4aba27ed585407 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab45dbd69bde3cde22d4aba27ed585407"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#ab45dbd69bde3cde22d4aba27ed585407">CONNECT3</a>(ret, type0, type1, type2, src, event, dest, handler)</td></tr>
<tr class="memdesc:ab45dbd69bde3cde22d4aba27ed585407 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" with check of event and handler exists <br /></td></tr>
<tr class="separator:ab45dbd69bde3cde22d4aba27ed585407 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34e41d730c07354e07333def3d854019 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a34e41d730c07354e07333def3d854019"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a34e41d730c07354e07333def3d854019">CONNECT4</a>(ret, type0, type1, type2, type3, src, event, dest, handler)</td></tr>
<tr class="memdesc:a34e41d730c07354e07333def3d854019 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" with check of event and handler exists <br /></td></tr>
<tr class="separator:a34e41d730c07354e07333def3d854019 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65528c74adc6691eac2c7a2f39328064 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65528c74adc6691eac2c7a2f39328064"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a65528c74adc6691eac2c7a2f39328064">CONNECT</a>&#160;&#160;&#160;<a class="el" href="class_p_i_object.html#a38e74a7ce99df00a10517f5ce4aa66c5">CONNECT0</a></td></tr>
<tr class="memdesc:a65528c74adc6691eac2c7a2f39328064 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">CONNECT is synonym of CONNECT0. <br /></td></tr>
<tr class="separator:a65528c74adc6691eac2c7a2f39328064 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaaba5b68617a43903056bc175b8cd162 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaaba5b68617a43903056bc175b8cd162"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#aaaba5b68617a43903056bc175b8cd162">WEAK_CONNECT0</a>(ret, src, event, dest, handler)</td></tr>
<tr class="memdesc:aaaba5b68617a43903056bc175b8cd162 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" without check of event exists <br /></td></tr>
<tr class="separator:aaaba5b68617a43903056bc175b8cd162 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37d80492e781bf82b9c22c56977da81e inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a37d80492e781bf82b9c22c56977da81e"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a37d80492e781bf82b9c22c56977da81e">WEAK_CONNECT1</a>(ret, type0, src, event, dest, handler)</td></tr>
<tr class="memdesc:a37d80492e781bf82b9c22c56977da81e inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" without check of event exists <br /></td></tr>
<tr class="separator:a37d80492e781bf82b9c22c56977da81e inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34134cc70172ef5a8d38ba8eb0db327d inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a34134cc70172ef5a8d38ba8eb0db327d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a34134cc70172ef5a8d38ba8eb0db327d">WEAK_CONNECT2</a>(ret, type0, type1, src, event, dest, handler)</td></tr>
<tr class="memdesc:a34134cc70172ef5a8d38ba8eb0db327d inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" without check of event exists <br /></td></tr>
<tr class="separator:a34134cc70172ef5a8d38ba8eb0db327d inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a601eb7e6e4c3c1a2ba741abbaf271fed inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a601eb7e6e4c3c1a2ba741abbaf271fed"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a601eb7e6e4c3c1a2ba741abbaf271fed">WEAK_CONNECT3</a>(ret, type0, type1, type2, src, event, dest, handler)</td></tr>
<tr class="memdesc:a601eb7e6e4c3c1a2ba741abbaf271fed inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" without check of event exists <br /></td></tr>
<tr class="separator:a601eb7e6e4c3c1a2ba741abbaf271fed inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a483ad0828f2c221308d95fd07ba1ee6e inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a483ad0828f2c221308d95fd07ba1ee6e"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a483ad0828f2c221308d95fd07ba1ee6e">WEAK_CONNECT4</a>(ret, type0, type1, type2, type3, src, event, dest, handler)</td></tr>
<tr class="memdesc:a483ad0828f2c221308d95fd07ba1ee6e inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" without check of event exists <br /></td></tr>
<tr class="separator:a483ad0828f2c221308d95fd07ba1ee6e inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52fc22658e025b4c15c8a2454d81b289 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a52fc22658e025b4c15c8a2454d81b289"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a52fc22658e025b4c15c8a2454d81b289">WEAK_CONNECT</a>&#160;&#160;&#160;<a class="el" href="class_p_i_object.html#aaaba5b68617a43903056bc175b8cd162">WEAK_CONNECT0</a></td></tr>
<tr class="memdesc:a52fc22658e025b4c15c8a2454d81b289 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">WEAK_CONNECT is synonym of WEAK_CONNECT0. <br /></td></tr>
<tr class="separator:a52fc22658e025b4c15c8a2454d81b289 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed7fd8edaccbbca33c51417ca43ac32a inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aed7fd8edaccbbca33c51417ca43ac32a"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#aed7fd8edaccbbca33c51417ca43ac32a">DISCONNECT0</a>(ret, src, event, dest, handler)</td></tr>
<tr class="memdesc:aed7fd8edaccbbca33c51417ca43ac32a inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">piDisconnect event "event" from object "src" from event handler "handler" with return type "ret" from object "dest" <br /></td></tr>
<tr class="separator:aed7fd8edaccbbca33c51417ca43ac32a inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae030e8deb226c636d2df22076391f12c inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae030e8deb226c636d2df22076391f12c"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#ae030e8deb226c636d2df22076391f12c">DISCONNECT1</a>(ret, type0, src, event, dest, handler)</td></tr>
<tr class="memdesc:ae030e8deb226c636d2df22076391f12c inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">piDisconnect event "event" from object "src" from event handler "handler" with return type "ret" from object "dest" <br /></td></tr>
<tr class="separator:ae030e8deb226c636d2df22076391f12c inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f0609bfd7dfcd4512d76480bc114dab inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8f0609bfd7dfcd4512d76480bc114dab"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a8f0609bfd7dfcd4512d76480bc114dab">DISCONNECT2</a>(ret, type0, type1, src, event, dest, handler)</td></tr>
<tr class="memdesc:a8f0609bfd7dfcd4512d76480bc114dab inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">piDisconnect event "event" from object "src" from event handler "handler" with return type "ret" from object "dest" <br /></td></tr>
<tr class="separator:a8f0609bfd7dfcd4512d76480bc114dab inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2789f99d1916f231fc579f00370fa6f inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af2789f99d1916f231fc579f00370fa6f"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#af2789f99d1916f231fc579f00370fa6f">DISCONNECT3</a>(ret, type0, type1, type2, src, event, dest, handler)</td></tr>
<tr class="memdesc:af2789f99d1916f231fc579f00370fa6f inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">piDisconnect event "event" from object "src" from event handler "handler" with return type "ret" from object "dest" <br /></td></tr>
<tr class="separator:af2789f99d1916f231fc579f00370fa6f inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aedf429d3192da764163c1377cad310e3 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aedf429d3192da764163c1377cad310e3"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#aedf429d3192da764163c1377cad310e3">DISCONNECT4</a>(ret, type0, type1, type2, type3, src, event, dest, handler)</td></tr>
<tr class="memdesc:aedf429d3192da764163c1377cad310e3 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">piDisconnect event "event" from object "src" from event handler "handler" with return type "ret" from object "dest" <br /></td></tr>
<tr class="separator:aedf429d3192da764163c1377cad310e3 inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a587604e6f3570c0fc32794384d4d0d1f inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a587604e6f3570c0fc32794384d4d0d1f"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a587604e6f3570c0fc32794384d4d0d1f">DISCONNECT</a>&#160;&#160;&#160;<a class="el" href="class_p_i_object.html#aed7fd8edaccbbca33c51417ca43ac32a">DISCONNECT0</a></td></tr>
<tr class="memdesc:a587604e6f3570c0fc32794384d4d0d1f inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">DISCONNECT is synonym of DISCONNECT0. <br /></td></tr>
<tr class="separator:a587604e6f3570c0fc32794384d4d0d1f inherit related_class_p_i_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f7b0da6b28ced23e1deee48dde17c98 inherit related_class_p_i_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3f7b0da6b28ced23e1deee48dde17c98"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_object.html#a3f7b0da6b28ced23e1deee48dde17c98">HANDLER</a>(handler)</td></tr>
<tr class="memdesc:a3f7b0da6b28ced23e1deee48dde17c98 inherit related_class_p_i_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns pointer to events handler "handler". <br /></td></tr>
<tr class="separator:a3f7b0da6b28ced23e1deee48dde17c98 inherit related_class_p_i_object"><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>Ethernet device. </p>
<h1><a class="anchor" id="PIEthernet_sec0"></a>
Synopsis</h1>
<p>PIEthernet designed to work with IPv4 network by two protocols: UDP and TCP. This class allow you send and receive packets to/from another computer through network.</p>
<h1><a class="anchor" id="PIEthernet_sec1"></a>
IPv4</h1>
<h1><a class="anchor" id="PIEthernet_sec2"></a>
UDP</h1>
<p>User Datagram Protocol</p>
<h1><a class="anchor" id="PIEthernet_sec3"></a>
TCP</h1>
<p>Transmission Control Protocol </p>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a class="anchor" id="a7abf73f51652b00af7a6198be2fa0f5c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="class_p_i_ethernet.html#a7abf73f51652b00af7a6198be2fa0f5c">PIEthernet::Type</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Type of PIEthernet. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a7abf73f51652b00af7a6198be2fa0f5ca17c6e599807b02ebaf8ab6decbd17c7b"></a>UDP&#160;</td><td class="fielddoc">
<p>UDP - User Datagram Protocol </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7abf73f51652b00af7a6198be2fa0f5ca468f2c843283f472aa48487bebc38416"></a>TCP_Client&#160;</td><td class="fielddoc">
<p>TCP client - allow connection to TCP server </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7abf73f51652b00af7a6198be2fa0f5caf2c9526cd4b694f14a0d8a4693a5b76c"></a>TCP_Server&#160;</td><td class="fielddoc">
<p>TCP server - receive connections from TCP clients </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ae03a64ce3d7d8a1e95b2212ab2497f55"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="class_p_i_ethernet.html#ae03a64ce3d7d8a1e95b2212ab2497f55">PIEthernet::Parameters</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Parameters of PIEthernet. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ae03a64ce3d7d8a1e95b2212ab2497f55a880142bb3993c7839af6d847beee1b34"></a>ReuseAddress&#160;</td><td class="fielddoc">
<p>Rebind address if there is already binded </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ae03a64ce3d7d8a1e95b2212ab2497f55af792cda5436050309ee9368d6ac5e6f7"></a>Broadcast&#160;</td><td class="fielddoc">
<p>Broadcast send </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="a2e219801b3a6c451c4aca63ad99b6374"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="class_p_i_ethernet.html#a2e219801b3a6c451c4aca63ad99b6374">PIEthernet::InterfaceFlag</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Flags of network interface. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a2e219801b3a6c451c4aca63ad99b6374af0267ac1003b142861da4f3b13cd8eec"></a>ifActive&#160;</td><td class="fielddoc">
<p>Is active </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a2e219801b3a6c451c4aca63ad99b6374a1ee5d68a37246b49b542d4e7a35129a5"></a>ifRunning&#160;</td><td class="fielddoc">
<p>Is running </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a2e219801b3a6c451c4aca63ad99b6374a968abc4436cda4f3a7d6f9d5b73a5161"></a>ifBroadcast&#160;</td><td class="fielddoc">
<p>Support broadcast </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a2e219801b3a6c451c4aca63ad99b6374a221bac530c63ca6256286ae46d4cf2da"></a>ifMulticast&#160;</td><td class="fielddoc">
<p>Support multicast </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a2e219801b3a6c451c4aca63ad99b6374ae5762f8e14d0d44e59d98d40a5e61d47"></a>ifLoopback&#160;</td><td class="fielddoc">
<p>Is loopback </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a2e219801b3a6c451c4aca63ad99b6374a57217604fea835e4aaec5ad6f16101a5"></a>ifPTP&#160;</td><td class="fielddoc">
<p>Is point-to-point </p>
</td></tr>
</table>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="class_p_i_ethernet.html">PIEthernet</a></li>
<li class="footer">Generated on Sun Nov 2 2014 22:29:35 for PIP by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.8 </li>
</ul>
</div>
</body>
</html>