Skip to content
This repository has been archived by the owner on Apr 6, 2019. It is now read-only.

Commit

Permalink
fix conflicting file names for windows compilation (#21) and update d…
Browse files Browse the repository at this point in the history
…oc (#22)
  • Loading branch information
Cylix authored Sep 26, 2017
1 parent 1fa58db commit bbc7957
Show file tree
Hide file tree
Showing 57 changed files with 698 additions and 307 deletions.
6 changes: 3 additions & 3 deletions docs/html/classtacopie_1_1io__service-members.html
Original file line number Diff line number Diff line change
Expand Up @@ -77,10 +77,10 @@
<tr class="even"><td class="entry"><a class="el" href="classtacopie_1_1io__service.html#ad5da7503d8fec083c6d28455ec9e21c7">io_service</a>(const io_service &amp;)=delete</td><td class="entry"><a class="el" href="classtacopie_1_1io__service.html">tacopie::io_service</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classtacopie_1_1io__service.html#a980652008516b38357d405c16eda07fa">operator=</a>(const io_service &amp;)=delete</td><td class="entry"><a class="el" href="classtacopie_1_1io__service.html">tacopie::io_service</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classtacopie_1_1io__service.html#a7e2b0700c0a4591f86c344df8748b3a5">set_nb_workers</a>(std::size_t nb_threads)</td><td class="entry"><a class="el" href="classtacopie_1_1io__service.html">tacopie::io_service</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>set_rd_callback</b>(const tcp_socket &amp;socket, const event_callback_t &amp;event_callback) (defined in <a class="el" href="classtacopie_1_1io__service.html">tacopie::io_service</a>)</td><td class="entry"><a class="el" href="classtacopie_1_1io__service.html">tacopie::io_service</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_wr_callback</b>(const tcp_socket &amp;socket, const event_callback_t &amp;event_callback) (defined in <a class="el" href="classtacopie_1_1io__service.html">tacopie::io_service</a>)</td><td class="entry"><a class="el" href="classtacopie_1_1io__service.html">tacopie::io_service</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classtacopie_1_1io__service.html#a8094c1fec76c6821cc0c008fe524c89a">set_rd_callback</a>(const tcp_socket &amp;socket, const event_callback_t &amp;event_callback)</td><td class="entry"><a class="el" href="classtacopie_1_1io__service.html">tacopie::io_service</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classtacopie_1_1io__service.html#a7c4f56c7790c7ba52b09837a42aaffb1">set_wr_callback</a>(const tcp_socket &amp;socket, const event_callback_t &amp;event_callback)</td><td class="entry"><a class="el" href="classtacopie_1_1io__service.html">tacopie::io_service</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classtacopie_1_1io__service.html#a9f4c8bce3c0f6d660515b0b5eb109df8">track</a>(const tcp_socket &amp;socket, const event_callback_t &amp;rd_callback=nullptr, const event_callback_t &amp;wr_callback=nullptr)</td><td class="entry"><a class="el" href="classtacopie_1_1io__service.html">tacopie::io_service</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>untrack</b>(const tcp_socket &amp;socket) (defined in <a class="el" href="classtacopie_1_1io__service.html">tacopie::io_service</a>)</td><td class="entry"><a class="el" href="classtacopie_1_1io__service.html">tacopie::io_service</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classtacopie_1_1io__service.html#a9a7672f0894a0fc1a3e6c593ca6df22c">untrack</a>(const tcp_socket &amp;socket)</td><td class="entry"><a class="el" href="classtacopie_1_1io__service.html">tacopie::io_service</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classtacopie_1_1io__service.html#aa57db619baeaa6db0aeb22e67b895cd7">wait_for_removal</a>(const tcp_socket &amp;socket)</td><td class="entry"><a class="el" href="classtacopie_1_1io__service.html">tacopie::io_service</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classtacopie_1_1io__service.html#ae423d7e4b13f07fe41fb051345ffbf8d">~io_service</a>(void)</td><td class="entry"><a class="el" href="classtacopie_1_1io__service.html">tacopie::io_service</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
Expand Down
165 changes: 155 additions & 10 deletions docs/html/classtacopie_1_1io__service.html
Original file line number Diff line number Diff line change
Expand Up @@ -100,18 +100,13 @@
<tr class="separator:a980652008516b38357d405c16eda07fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e2b0700c0a4591f86c344df8748b3a5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtacopie_1_1io__service.html#a7e2b0700c0a4591f86c344df8748b3a5">set_nb_workers</a> (std::size_t nb_threads)</td></tr>
<tr class="separator:a7e2b0700c0a4591f86c344df8748b3a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f4c8bce3c0f6d660515b0b5eb109df8"><td class="memItemLeft" align="right" valign="top"><a id="a9f4c8bce3c0f6d660515b0b5eb109df8"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtacopie_1_1io__service.html#a9f4c8bce3c0f6d660515b0b5eb109df8">track</a> (const <a class="el" href="classtacopie_1_1tcp__socket.html">tcp_socket</a> &amp;socket, const <a class="el" href="classtacopie_1_1io__service.html#abb66850c32d9c724f4418d77bd04bcfd">event_callback_t</a> &amp;rd_callback=nullptr, const <a class="el" href="classtacopie_1_1io__service.html#abb66850c32d9c724f4418d77bd04bcfd">event_callback_t</a> &amp;wr_callback=nullptr)</td></tr>
<tr class="memdesc:a9f4c8bce3c0f6d660515b0b5eb109df8"><td class="mdescLeft">&#160;</td><td class="mdescRight">track &amp; untrack socket <br /></td></tr>
<tr class="memitem:a9f4c8bce3c0f6d660515b0b5eb109df8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtacopie_1_1io__service.html#a9f4c8bce3c0f6d660515b0b5eb109df8">track</a> (const <a class="el" href="classtacopie_1_1tcp__socket.html">tcp_socket</a> &amp;socket, const <a class="el" href="classtacopie_1_1io__service.html#abb66850c32d9c724f4418d77bd04bcfd">event_callback_t</a> &amp;rd_callback=nullptr, const <a class="el" href="classtacopie_1_1io__service.html#abb66850c32d9c724f4418d77bd04bcfd">event_callback_t</a> &amp;wr_callback=nullptr)</td></tr>
<tr class="separator:a9f4c8bce3c0f6d660515b0b5eb109df8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8094c1fec76c6821cc0c008fe524c89a"><td class="memItemLeft" align="right" valign="top"><a id="a8094c1fec76c6821cc0c008fe524c89a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>set_rd_callback</b> (const <a class="el" href="classtacopie_1_1tcp__socket.html">tcp_socket</a> &amp;socket, const <a class="el" href="classtacopie_1_1io__service.html#abb66850c32d9c724f4418d77bd04bcfd">event_callback_t</a> &amp;event_callback)</td></tr>
<tr class="memitem:a8094c1fec76c6821cc0c008fe524c89a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtacopie_1_1io__service.html#a8094c1fec76c6821cc0c008fe524c89a">set_rd_callback</a> (const <a class="el" href="classtacopie_1_1tcp__socket.html">tcp_socket</a> &amp;socket, const <a class="el" href="classtacopie_1_1io__service.html#abb66850c32d9c724f4418d77bd04bcfd">event_callback_t</a> &amp;event_callback)</td></tr>
<tr class="separator:a8094c1fec76c6821cc0c008fe524c89a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c4f56c7790c7ba52b09837a42aaffb1"><td class="memItemLeft" align="right" valign="top"><a id="a7c4f56c7790c7ba52b09837a42aaffb1"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>set_wr_callback</b> (const <a class="el" href="classtacopie_1_1tcp__socket.html">tcp_socket</a> &amp;socket, const <a class="el" href="classtacopie_1_1io__service.html#abb66850c32d9c724f4418d77bd04bcfd">event_callback_t</a> &amp;event_callback)</td></tr>
<tr class="memitem:a7c4f56c7790c7ba52b09837a42aaffb1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtacopie_1_1io__service.html#a7c4f56c7790c7ba52b09837a42aaffb1">set_wr_callback</a> (const <a class="el" href="classtacopie_1_1tcp__socket.html">tcp_socket</a> &amp;socket, const <a class="el" href="classtacopie_1_1io__service.html#abb66850c32d9c724f4418d77bd04bcfd">event_callback_t</a> &amp;event_callback)</td></tr>
<tr class="separator:a7c4f56c7790c7ba52b09837a42aaffb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9a7672f0894a0fc1a3e6c593ca6df22c"><td class="memItemLeft" align="right" valign="top"><a id="a9a7672f0894a0fc1a3e6c593ca6df22c"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>untrack</b> (const <a class="el" href="classtacopie_1_1tcp__socket.html">tcp_socket</a> &amp;socket)</td></tr>
<tr class="memitem:a9a7672f0894a0fc1a3e6c593ca6df22c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtacopie_1_1io__service.html#a9a7672f0894a0fc1a3e6c593ca6df22c">untrack</a> (const <a class="el" href="classtacopie_1_1tcp__socket.html">tcp_socket</a> &amp;socket)</td></tr>
<tr class="separator:a9a7672f0894a0fc1a3e6c593ca6df22c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa57db619baeaa6db0aeb22e67b895cd7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtacopie_1_1io__service.html#aa57db619baeaa6db0aeb22e67b895cd7">wait_for_removal</a> (const <a class="el" href="classtacopie_1_1tcp__socket.html">tcp_socket</a> &amp;socket)</td></tr>
<tr class="separator:aa57db619baeaa6db0aeb22e67b895cd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
Expand Down Expand Up @@ -184,6 +179,150 @@ <h2 class="memtitle"><span class="permalink"><a href="#a7e2b0700c0a4591f86c344df
</dd>
</dl>

</div>
</div>
<a id="a8094c1fec76c6821cc0c008fe524c89a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8094c1fec76c6821cc0c008fe524c89a">&#9670;&nbsp;</a></span>set_rd_callback()</h2>

<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void tacopie::io_service::set_rd_callback </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classtacopie_1_1tcp__socket.html">tcp_socket</a> &amp;&#160;</td>
<td class="paramname"><em>socket</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classtacopie_1_1io__service.html#abb66850c32d9c724f4418d77bd04bcfd">event_callback_t</a> &amp;&#160;</td>
<td class="paramname"><em>event_callback</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>update the read callback if socket is not tracked yet, track it</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">socket</td><td>socket to be tracked </td></tr>
<tr><td class="paramname">event_callback</td><td>callback to be executed on read event </td></tr>
</table>
</dd>
</dl>

</div>
</div>
<a id="a7c4f56c7790c7ba52b09837a42aaffb1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7c4f56c7790c7ba52b09837a42aaffb1">&#9670;&nbsp;</a></span>set_wr_callback()</h2>

<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void tacopie::io_service::set_wr_callback </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classtacopie_1_1tcp__socket.html">tcp_socket</a> &amp;&#160;</td>
<td class="paramname"><em>socket</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classtacopie_1_1io__service.html#abb66850c32d9c724f4418d77bd04bcfd">event_callback_t</a> &amp;&#160;</td>
<td class="paramname"><em>event_callback</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>update the write callback if socket is not tracked yet, track it</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">socket</td><td>socket to be tracked </td></tr>
<tr><td class="paramname">event_callback</td><td>callback to be executed on write event </td></tr>
</table>
</dd>
</dl>

</div>
</div>
<a id="a9f4c8bce3c0f6d660515b0b5eb109df8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9f4c8bce3c0f6d660515b0b5eb109df8">&#9670;&nbsp;</a></span>track()</h2>

<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void tacopie::io_service::track </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classtacopie_1_1tcp__socket.html">tcp_socket</a> &amp;&#160;</td>
<td class="paramname"><em>socket</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classtacopie_1_1io__service.html#abb66850c32d9c724f4418d77bd04bcfd">event_callback_t</a> &amp;&#160;</td>
<td class="paramname"><em>rd_callback</em> = <code>nullptr</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classtacopie_1_1io__service.html#abb66850c32d9c724f4418d77bd04bcfd">event_callback_t</a> &amp;&#160;</td>
<td class="paramname"><em>wr_callback</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>track socket add socket to <a class="el" href="classtacopie_1_1io__service.html">io_service</a> tracking for read/write operation socket is polled only if read or write callback is defined</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">socket</td><td>socket to be tracked </td></tr>
<tr><td class="paramname">rd_callback</td><td>callback to be executed on read event </td></tr>
<tr><td class="paramname">wr_callback</td><td>callback to be executed on write event </td></tr>
</table>
</dd>
</dl>

</div>
</div>
<a id="a9a7672f0894a0fc1a3e6c593ca6df22c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9a7672f0894a0fc1a3e6c593ca6df22c">&#9670;&nbsp;</a></span>untrack()</h2>

<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void tacopie::io_service::untrack </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classtacopie_1_1tcp__socket.html">tcp_socket</a> &amp;&#160;</td>
<td class="paramname"><em>socket</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>remove socket from <a class="el" href="classtacopie_1_1io__service.html">io_service</a> tracking socket is marked for untracking and will effectively be removed asynchronously from tracking once</p><ul>
<li>poll wakes up</li>
<li>no callback are being executed for that socket</li>
</ul>
<p>re-adding track while socket is pending for untrack is fine and will simply cancel the untrack operation</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">socket</td><td>socket to be untracked </td></tr>
</table>
</dd>
</dl>

</div>
</div>
<a id="aa57db619baeaa6db0aeb22e67b895cd7"></a>
Expand All @@ -201,7 +340,13 @@ <h2 class="memtitle"><span class="permalink"><a href="#aa57db619baeaa6db0aeb22e6
</tr>
</table>
</div><div class="memdoc">
<p>wait until the socket has been effectively removed basically wait until all pending callbacks are executed </p>
<p>wait until the socket has been effectively removed basically wait until all pending callbacks are executed</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">socket</td><td>socket to wait for </td></tr>
</table>
</dd>
</dl>

</div>
</div>
Expand Down
6 changes: 5 additions & 1 deletion docs/html/classtacopie_1_1self__pipe.html
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,8 @@
<div class="title">tacopie::self_pipe Class Reference</div> </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="self__pipe_8hpp_source.html">self_pipe.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
Expand Down Expand Up @@ -100,7 +102,9 @@
<tr class="memitem:a4f55a34bd882d59bdcc73b87222ba3d8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtacopie_1_1self__pipe.html#a4f55a34bd882d59bdcc73b87222ba3d8">clr_buffer</a> (void)</td></tr>
<tr class="separator:a4f55a34bd882d59bdcc73b87222ba3d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Function Documentation</h2>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>used to force poll to wake up simply make poll watch for read events on one side of the pipe and write to the other side </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a4f55a34bd882d59bdcc73b87222ba3d8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4f55a34bd882d59bdcc73b87222ba3d8">&#9670;&nbsp;</a></span>clr_buffer()</h2>

Expand Down
6 changes: 5 additions & 1 deletion docs/html/classtacopie_1_1tcp__client.html
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,8 @@
<div class="title">tacopie::tcp_client Class Reference</div> </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="tcp__client_8hpp_source.html">tcp_client.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
Expand Down Expand Up @@ -138,7 +140,9 @@
<tr class="memitem:a8c290d681186edb0578051c04f3c0762"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtacopie_1_1tcp__client.html#a8c290d681186edb0578051c04f3c0762">set_on_disconnection_handler</a> (const <a class="el" href="classtacopie_1_1tcp__client.html#aca5df52e5ee6fa673cf212532ada1453">disconnection_handler_t</a> &amp;disconnection_handler)</td></tr>
<tr class="separator:a8c290d681186edb0578051c04f3c0762"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Typedef Documentation</h2>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a class="el" href="classtacopie_1_1tcp__server.html">tacopie::tcp_server</a> is the class providing TCP Client features. The <a class="el" href="classtacopie_1_1tcp__client.html">tcp_client</a> works entirely asynchronously </p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="acdf9dea8bac6c56f7b04ce38b9432322"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acdf9dea8bac6c56f7b04ce38b9432322">&#9670;&nbsp;</a></span>async_read_callback_t</h2>

Expand Down
Loading

0 comments on commit bbc7957

Please sign in to comment.