479 lines
36 KiB
HTML
479 lines
36 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
|
<meta name="generator" content="Doxygen 1.8.13"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>My Project: core::TCPSession Class Reference</title>
|
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="jquery.js"></script>
|
|
<script type="text/javascript" src="dynsections.js"></script>
|
|
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="search/searchdata.js"></script>
|
|
<script type="text/javascript" src="search/search.js"></script>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
</head>
|
|
<body>
|
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
|
<div id="titlearea">
|
|
<table cellspacing="0" cellpadding="0">
|
|
<tbody>
|
|
<tr style="height: 56px;">
|
|
<td id="projectalign" style="padding-left: 0.5em;">
|
|
<div id="projectname">My Project
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.8.13 -->
|
|
<script type="text/javascript">
|
|
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
|
</script>
|
|
<script type="text/javascript" src="menudata.js"></script>
|
|
<script type="text/javascript" src="menu.js"></script>
|
|
<script type="text/javascript">
|
|
$(function() {
|
|
initMenu('',true,false,'search.php','Search');
|
|
$(document).ready(function() { init_search(); });
|
|
});
|
|
</script>
|
|
<div id="main-nav"></div>
|
|
<!-- window showing the filter options -->
|
|
<div id="MSearchSelectWindow"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
|
</div>
|
|
|
|
<!-- iframe showing the search results (closed by default) -->
|
|
<div id="MSearchResultsWindow">
|
|
<iframe src="javascript:void(0)" frameborder="0"
|
|
name="MSearchResults" id="MSearchResults">
|
|
</iframe>
|
|
</div>
|
|
|
|
<div id="nav-path" class="navpath">
|
|
<ul>
|
|
<li class="navelem"><b>core</b></li><li class="navelem"><a class="el" href="classcore_1_1TCPSession.html">TCPSession</a></li> </ul>
|
|
</div>
|
|
</div><!-- top -->
|
|
<div class="header">
|
|
<div class="summary">
|
|
<a href="#pub-methods">Public Member Functions</a> |
|
|
<a href="#pub-attribs">Public Attributes</a> |
|
|
<a href="#pro-methods">Protected Member Functions</a> |
|
|
<a href="classcore_1_1TCPSession-members.html">List of all members</a> </div>
|
|
<div class="headertitle">
|
|
<div class="title">core::TCPSession Class Reference</div> </div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p><code>#include <<a class="el" href="TCPSession_8h_source.html">TCPSession.h</a>></code></p>
|
|
<div class="dynheader">
|
|
Inheritance diagram for core::TCPSession:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="classcore_1_1TCPSession__inherit__graph.png" border="0" usemap="#core_1_1TCPSession_inherit__map" alt="Inheritance graph"/></div>
|
|
<map name="core_1_1TCPSession_inherit__map" id="core_1_1TCPSession_inherit__map">
|
|
<area shape="rect" id="node5" href="classcore_1_1TLSSession.html" title="core::TLSSession" alt="" coords="18,304,145,331"/>
|
|
<area shape="rect" id="node2" href="classcore_1_1TCPSocket.html" title="core::TCPSocket" alt="" coords="20,155,143,181"/>
|
|
<area shape="rect" id="node3" href="classcore_1_1Socket.html" title="core::Socket" alt="" coords="33,80,129,107"/>
|
|
<area shape="rect" id="node4" href="classcore_1_1Object.html" title="core::Object" alt="" coords="35,5,128,32"/>
|
|
<area shape="rect" id="node6" href="classcore_1_1TerminalSession.html" title="core::TerminalSession" alt="" coords="5,379,157,405"/>
|
|
<area shape="rect" id="node7" href="classcore_1_1ConsoleSession.html" title="core::ConsoleSession" alt="" coords="6,453,157,480"/>
|
|
</map>
|
|
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
|
|
<div class="dynheader">
|
|
Collaboration diagram for core::TCPSession:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="classcore_1_1TCPSession__coll__graph.png" border="0" usemap="#core_1_1TCPSession_coll__map" alt="Collaboration graph"/></div>
|
|
<map name="core_1_1TCPSession_coll__map" id="core_1_1TCPSession_coll__map">
|
|
<area shape="rect" id="node2" href="classcore_1_1TCPSocket.html" title="core::TCPSocket" alt="" coords="104,373,227,400"/>
|
|
<area shape="rect" id="node8" href="classcore_1_1TCPServer.html" title="core::TCPServer" alt="" coords="247,477,367,504"/>
|
|
<area shape="rect" id="node3" href="classcore_1_1Socket.html" title="core::Socket" alt="" coords="5,284,101,311"/>
|
|
<area shape="rect" id="node4" href="classcore_1_1Object.html" title="core::Object" alt="" coords="89,5,183,32"/>
|
|
<area shape="rect" id="node6" href="classcore_1_1Command.html" title="core::Command" alt="" coords="241,81,356,108"/>
|
|
<area shape="rect" id="node7" href="classcore_1_1IPAddress.html" title="core::IPAddress" alt="" coords="78,132,194,159"/>
|
|
<area shape="rect" id="node5" href="classcore_1_1EPoll.html" title="core::EPoll" alt="" coords="174,183,261,209"/>
|
|
<area shape="rect" id="node9" href="classcore_1_1CommandList.html" title="core::CommandList" alt="" coords="311,233,447,260"/>
|
|
<area shape="rect" id="node10" href="classcore_1_1IPAddressList.html" title="core::IPAddressList" alt="" coords="379,373,517,400"/>
|
|
</map>
|
|
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
|
|
<table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
|
Public Member Functions</h2></td></tr>
|
|
<tr class="memitem:a66e485cd2ba804e6ee4ac11eba3e4fa0"><td class="memItemLeft" align="right" valign="top"><a id="a66e485cd2ba804e6ee4ac11eba3e4fa0"></a>
|
|
 </td><td class="memItemRight" valign="bottom"><b>TCPSession</b> (<a class="el" href="classcore_1_1EPoll.html">EPoll</a> &ePoll, <a class="el" href="classcore_1_1TCPServer.html">TCPServer</a> &server)</td></tr>
|
|
<tr class="separator:a66e485cd2ba804e6ee4ac11eba3e4fa0"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aad593104afcfaabef3c965fe5e0a9dd5"><td class="memItemLeft" align="right" valign="top"><a id="aad593104afcfaabef3c965fe5e0a9dd5"></a>
|
|
 </td><td class="memItemRight" valign="bottom"><b>TCPSession</b> (<a class="el" href="classcore_1_1EPoll.html">EPoll</a> &ePoll, <a class="el" href="classcore_1_1TCPServer.html">TCPServer</a> &server, std::string text)</td></tr>
|
|
<tr class="separator:aad593104afcfaabef3c965fe5e0a9dd5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a50037cbfc515650e04054e5481785981"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1TCPSession.html#a50037cbfc515650e04054e5481785981">output</a> (std::stringstream &data)</td></tr>
|
|
<tr class="separator:a50037cbfc515650e04054e5481785981"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae86d38bd7b58bfb8f8a22c1e2354c3df"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1TCPSession.html#ae86d38bd7b58bfb8f8a22c1e2354c3df">send</a> (std::string data)</td></tr>
|
|
<tr class="separator:ae86d38bd7b58bfb8f8a22c1e2354c3df"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aae6bcaf66594f92984e6419b14e8221f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1TCPSession.html#aae6bcaf66594f92984e6419b14e8221f">sendToAll</a> (std::string data)</td></tr>
|
|
<tr class="separator:aae6bcaf66594f92984e6419b14e8221f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2219e98dc33f9da2fec1d75597081dfb"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1TCPSession.html#a2219e98dc33f9da2fec1d75597081dfb">sendToAll</a> (<a class="el" href="classcore_1_1SessionFilter.html">SessionFilter</a> filter, std::string data)</td></tr>
|
|
<tr class="separator:a2219e98dc33f9da2fec1d75597081dfb"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="inherit_header pub_methods_classcore_1_1TCPSocket"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classcore_1_1TCPSocket')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classcore_1_1TCPSocket.html">core::TCPSocket</a></td></tr>
|
|
<tr class="memitem:a09089f0bc701edcf6c148958fd29d374 inherit pub_methods_classcore_1_1TCPSocket"><td class="memItemLeft" align="right" valign="top"><a id="a09089f0bc701edcf6c148958fd29d374"></a>
|
|
 </td><td class="memItemRight" valign="bottom"><b>TCPSocket</b> (<a class="el" href="classcore_1_1EPoll.html">EPoll</a> &ePoll)</td></tr>
|
|
<tr class="separator:a09089f0bc701edcf6c148958fd29d374 inherit pub_methods_classcore_1_1TCPSocket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aa7ffbbd17827ffe769684fa8345862d6 inherit pub_methods_classcore_1_1TCPSocket"><td class="memItemLeft" align="right" valign="top"><a id="aa7ffbbd17827ffe769684fa8345862d6"></a>
|
|
 </td><td class="memItemRight" valign="bottom"><b>TCPSocket</b> (<a class="el" href="classcore_1_1EPoll.html">EPoll</a> &ePoll, std::string text)</td></tr>
|
|
<tr class="separator:aa7ffbbd17827ffe769684fa8345862d6 inherit pub_methods_classcore_1_1TCPSocket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a22dae8f5b7989d206fab918297e0df94 inherit pub_methods_classcore_1_1TCPSocket"><td class="memItemLeft" align="right" valign="top"><a id="a22dae8f5b7989d206fab918297e0df94"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><b>connect</b> (<a class="el" href="classcore_1_1IPAddress.html">IPAddress</a> &address)</td></tr>
|
|
<tr class="separator:a22dae8f5b7989d206fab918297e0df94 inherit pub_methods_classcore_1_1TCPSocket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="inherit_header pub_methods_classcore_1_1Socket"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classcore_1_1Socket')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classcore_1_1Socket.html">core::Socket</a></td></tr>
|
|
<tr class="memitem:a0009f3813f6d64285f3dad602e4e01cf inherit pub_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top"><a id="a0009f3813f6d64285f3dad602e4e01cf"></a>
|
|
 </td><td class="memItemRight" valign="bottom"><b>Socket</b> (<a class="el" href="classcore_1_1EPoll.html">EPoll</a> &ePoll)</td></tr>
|
|
<tr class="separator:a0009f3813f6d64285f3dad602e4e01cf inherit pub_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a36f8a8fda1d79995228b52c2fa01873b inherit pub_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top"><a id="a36f8a8fda1d79995228b52c2fa01873b"></a>
|
|
 </td><td class="memItemRight" valign="bottom"><b>Socket</b> (<a class="el" href="classcore_1_1EPoll.html">EPoll</a> &ePoll, std::string text)</td></tr>
|
|
<tr class="separator:a36f8a8fda1d79995228b52c2fa01873b inherit pub_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af2d1b6de7a64a9d446b0305b6ec47b31 inherit pub_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1Socket.html#af2d1b6de7a64a9d446b0305b6ec47b31">shutdown</a> (std::string text="unknown")</td></tr>
|
|
<tr class="separator:af2d1b6de7a64a9d446b0305b6ec47b31 inherit pub_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac44f6ae3196a8a3e09a6a85fcf495762 inherit pub_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1Socket.html#ac44f6ae3196a8a3e09a6a85fcf495762">setDescriptor</a> (int descriptor)</td></tr>
|
|
<tr class="memdesc:ac44f6ae3196a8a3e09a6a85fcf495762 inherit pub_methods_classcore_1_1Socket"><td class="mdescLeft"> </td><td class="mdescRight">Set the descriptor for the socket. <a href="classcore_1_1Socket.html#ac44f6ae3196a8a3e09a6a85fcf495762">More...</a><br /></td></tr>
|
|
<tr class="separator:ac44f6ae3196a8a3e09a6a85fcf495762 inherit pub_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a06ba54744530439d4131e6aba4623d08 inherit pub_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top"><a id="a06ba54744530439d4131e6aba4623d08"></a>
|
|
int </td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1Socket.html#a06ba54744530439d4131e6aba4623d08">getDescriptor</a> ()</td></tr>
|
|
<tr class="memdesc:a06ba54744530439d4131e6aba4623d08 inherit pub_methods_classcore_1_1Socket"><td class="mdescLeft"> </td><td class="mdescRight">Get the descriptor for the socket. <br /></td></tr>
|
|
<tr class="separator:a06ba54744530439d4131e6aba4623d08 inherit pub_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4c9a3396693ff919eb827729f9e72b03 inherit pub_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1Socket.html#a4c9a3396693ff919eb827729f9e72b03">eventReceived</a> (struct epoll_event event)</td></tr>
|
|
<tr class="memdesc:a4c9a3396693ff919eb827729f9e72b03 inherit pub_methods_classcore_1_1Socket"><td class="mdescLeft"> </td><td class="mdescRight">Parse epoll event and call specified callbacks. <a href="classcore_1_1Socket.html#a4c9a3396693ff919eb827729f9e72b03">More...</a><br /></td></tr>
|
|
<tr class="separator:a4c9a3396693ff919eb827729f9e72b03 inherit pub_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1413c826307ef0f29d7457770af675e3 inherit pub_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1Socket.html#a1413c826307ef0f29d7457770af675e3">write</a> (std::string data)</td></tr>
|
|
<tr class="separator:a1413c826307ef0f29d7457770af675e3 inherit pub_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4855594af113428eacdaa7448d661121 inherit pub_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top"><a id="a4855594af113428eacdaa7448d661121"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><b>write</b> (char *buffer, int length)</td></tr>
|
|
<tr class="separator:a4855594af113428eacdaa7448d661121 inherit pub_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad67b0f95127bd987b98323120f40f6ed inherit pub_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top"><a id="ad67b0f95127bd987b98323120f40f6ed"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><b>output</b> (std::stringstream &out)</td></tr>
|
|
<tr class="separator:ad67b0f95127bd987b98323120f40f6ed inherit pub_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a23b9824653bbe4652a716acb828665b1 inherit pub_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top"><a id="a23b9824653bbe4652a716acb828665b1"></a>
|
|
virtual void </td><td class="memItemRight" valign="bottom"><b>onRegistered</b> ()</td></tr>
|
|
<tr class="separator:a23b9824653bbe4652a716acb828665b1 inherit pub_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aa1d380db54a5b2efbc859e3744bd898b inherit pub_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1Socket.html#aa1d380db54a5b2efbc859e3744bd898b">onUnregister</a> ()</td></tr>
|
|
<tr class="memdesc:aa1d380db54a5b2efbc859e3744bd898b inherit pub_methods_classcore_1_1Socket"><td class="mdescLeft"> </td><td class="mdescRight">Called when the socket has finished unregistering for the epoll processing. <a href="classcore_1_1Socket.html#aa1d380db54a5b2efbc859e3744bd898b">More...</a><br /></td></tr>
|
|
<tr class="separator:aa1d380db54a5b2efbc859e3744bd898b inherit pub_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a43247bfe43c2be5ab3863d9057d46b7c inherit pub_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top"><a id="a43247bfe43c2be5ab3863d9057d46b7c"></a>
|
|
bool </td><td class="memItemRight" valign="bottom"><b>needsToWrite</b> ()</td></tr>
|
|
<tr class="separator:a43247bfe43c2be5ab3863d9057d46b7c inherit pub_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
|
|
Public Attributes</h2></td></tr>
|
|
<tr class="memitem:a2c39191d695d79891989ea628f42c0a8"><td class="memItemLeft" align="right" valign="top"><a id="a2c39191d695d79891989ea628f42c0a8"></a>
|
|
<a class="el" href="classcore_1_1Command.html">Command</a> * </td><td class="memItemRight" valign="bottom"><b>grab</b> = NULL</td></tr>
|
|
<tr class="separator:a2c39191d695d79891989ea628f42c0a8"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a265d9493fa544e601b5ad5fb1663340c"><td class="memItemLeft" align="right" valign="top"><a id="a265d9493fa544e601b5ad5fb1663340c"></a>
|
|
<a class="el" href="classcore_1_1TCPServer.html">TCPServer</a> & </td><td class="memItemRight" valign="bottom"><b>server</b></td></tr>
|
|
<tr class="separator:a265d9493fa544e601b5ad5fb1663340c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="inherit_header pub_attribs_classcore_1_1TCPSocket"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_classcore_1_1TCPSocket')"><img src="closed.png" alt="-"/> Public Attributes inherited from <a class="el" href="classcore_1_1TCPSocket.html">core::TCPSocket</a></td></tr>
|
|
<tr class="memitem:abe7d0a740dc0c19c058661270a6fb630 inherit pub_attribs_classcore_1_1TCPSocket"><td class="memItemLeft" align="right" valign="top"><a id="abe7d0a740dc0c19c058661270a6fb630"></a>
|
|
<a class="el" href="classcore_1_1IPAddress.html">IPAddress</a> </td><td class="memItemRight" valign="bottom"><b>ipAddress</b></td></tr>
|
|
<tr class="separator:abe7d0a740dc0c19c058661270a6fb630 inherit pub_attribs_classcore_1_1TCPSocket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="inherit_header pub_attribs_classcore_1_1Socket"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_classcore_1_1Socket')"><img src="closed.png" alt="-"/> Public Attributes inherited from <a class="el" href="classcore_1_1Socket.html">core::Socket</a></td></tr>
|
|
<tr class="memitem:a26ce6667b1d883e7a77fcd46ead03f6b inherit pub_attribs_classcore_1_1Socket"><td class="memItemLeft" ><a id="a26ce6667b1d883e7a77fcd46ead03f6b"></a>
|
|
class {</td></tr>
|
|
<tr class="memitem:a26ce6667b1d883e7a77fcd46ead03f6b inherit pub_attribs_classcore_1_1Socket"><td class="memItemLeft" valign="top">} </td><td class="memItemRight" valign="bottom"><b>bufferSize</b></td></tr>
|
|
<tr class="separator:a26ce6667b1d883e7a77fcd46ead03f6b inherit pub_attribs_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:addc8b96547fb9cc921f9fb0e398d4882 inherit pub_attribs_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top"><a id="addc8b96547fb9cc921f9fb0e398d4882"></a>
|
|
bool </td><td class="memItemRight" valign="bottom"><b>active</b> = false</td></tr>
|
|
<tr class="separator:addc8b96547fb9cc921f9fb0e398d4882 inherit pub_attribs_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="inherit_header pub_attribs_classcore_1_1Object"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_classcore_1_1Object')"><img src="closed.png" alt="-"/> Public Attributes inherited from <a class="el" href="classcore_1_1Object.html">core::Object</a></td></tr>
|
|
<tr class="memitem:aa096b2bab35f1019c91077ef3ec106ce inherit pub_attribs_classcore_1_1Object"><td class="memItemLeft" align="right" valign="top"><a id="aa096b2bab35f1019c91077ef3ec106ce"></a>
|
|
std::string </td><td class="memItemRight" valign="bottom"><b>name</b></td></tr>
|
|
<tr class="separator:aa096b2bab35f1019c91077ef3ec106ce inherit pub_attribs_classcore_1_1Object"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad503c264c529c41c25528c34421c83df inherit pub_attribs_classcore_1_1Object"><td class="memItemLeft" align="right" valign="top"><a id="ad503c264c529c41c25528c34421c83df"></a>
|
|
std::string </td><td class="memItemRight" valign="bottom"><b>tag</b></td></tr>
|
|
<tr class="separator:ad503c264c529c41c25528c34421c83df inherit pub_attribs_classcore_1_1Object"><td class="memSeparator" colspan="2"> </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:aa87aca65cece02a107e7c288a925271f"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1TCPSession.html#aa87aca65cece02a107e7c288a925271f">onDataReceived</a> (std::string data) override</td></tr>
|
|
<tr class="memdesc:aa87aca65cece02a107e7c288a925271f"><td class="mdescLeft"> </td><td class="mdescRight">Called when data is received from the socket. <a href="#aa87aca65cece02a107e7c288a925271f">More...</a><br /></td></tr>
|
|
<tr class="separator:aa87aca65cece02a107e7c288a925271f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a77600a18d75f1efee00b3dc626b1e98b"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1TCPSession.html#a77600a18d75f1efee00b3dc626b1e98b">onRegister</a> () override</td></tr>
|
|
<tr class="memdesc:a77600a18d75f1efee00b3dc626b1e98b"><td class="mdescLeft"> </td><td class="mdescRight">Called when the socket has finished registering with the epoll processing. <a href="#a77600a18d75f1efee00b3dc626b1e98b">More...</a><br /></td></tr>
|
|
<tr class="separator:a77600a18d75f1efee00b3dc626b1e98b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8595f53d21b603a494d246b24dfa8be3"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1TCPSession.html#a8595f53d21b603a494d246b24dfa8be3">onConnected</a> (std::stringstream &out)</td></tr>
|
|
<tr class="separator:a8595f53d21b603a494d246b24dfa8be3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aed35285cd2a2624bb219b51d3847634e"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1TCPSession.html#aed35285cd2a2624bb219b51d3847634e">protocol</a> (std::stringstream &out, std::string data)</td></tr>
|
|
<tr class="separator:aed35285cd2a2624bb219b51d3847634e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="inherit_header pro_methods_classcore_1_1Socket"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classcore_1_1Socket')"><img src="closed.png" alt="-"/> Protected Member Functions inherited from <a class="el" href="classcore_1_1Socket.html">core::Socket</a></td></tr>
|
|
<tr class="memitem:a71c77a162698b9c074a7497beab7b5d8 inherit pro_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top"><a id="a71c77a162698b9c074a7497beab7b5d8"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><b>setBufferSize</b> (int length)</td></tr>
|
|
<tr class="separator:a71c77a162698b9c074a7497beab7b5d8 inherit pro_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af6c06db2441633ae9979affe72930abc inherit pro_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top"><a id="af6c06db2441633ae9979affe72930abc"></a>
|
|
virtual void </td><td class="memItemRight" valign="bottom"><b>onDataReceived</b> (char *buffer, int len)</td></tr>
|
|
<tr class="separator:af6c06db2441633ae9979affe72930abc inherit pro_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af455ec6f793473f529507af26aa54695 inherit pro_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1Socket.html#af455ec6f793473f529507af26aa54695">receiveData</a> (char *buffer, int bufferLength)</td></tr>
|
|
<tr class="separator:af455ec6f793473f529507af26aa54695 inherit pro_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </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 pro_attribs_classcore_1_1Socket"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classcore_1_1Socket')"><img src="closed.png" alt="-"/> Protected Attributes inherited from <a class="el" href="classcore_1_1Socket.html">core::Socket</a></td></tr>
|
|
<tr class="memitem:a3b0b139ac7da581f0d969f6ae9a0c97c inherit pro_attribs_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top"><a id="a3b0b139ac7da581f0d969f6ae9a0c97c"></a>
|
|
<a class="el" href="classcore_1_1EPoll.html">EPoll</a> & </td><td class="memItemRight" valign="bottom"><b>ePoll</b></td></tr>
|
|
<tr class="separator:a3b0b139ac7da581f0d969f6ae9a0c97c inherit pro_attribs_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aa09db6c6298d20ea76c6e65f8bffd3dc inherit pro_attribs_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top"><a id="aa09db6c6298d20ea76c6e65f8bffd3dc"></a>
|
|
bool </td><td class="memItemRight" valign="bottom"><b>shutDown</b> = false</td></tr>
|
|
<tr class="separator:aa09db6c6298d20ea76c6e65f8bffd3dc inherit pro_attribs_classcore_1_1Socket"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p><a class="el" href="classcore_1_1TCPSession.html">TCPSession</a></p>
|
|
<p><a class="el" href="classcore_1_1TCPSession.html">TCPSession</a> defines the nature of the interaction with the client and stores persistent data for a defined session. BMASession objects are not sockets but instead provide a communications control mechanism. Protocol conversations are provided through extensions from this object. </p>
|
|
</div><h2 class="groupheader">Member Function Documentation</h2>
|
|
<a id="a8595f53d21b603a494d246b24dfa8be3"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8595f53d21b603a494d246b24dfa8be3">◆ </a></span>onConnected()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void core::TCPSession::onConnected </td>
|
|
<td>(</td>
|
|
<td class="paramtype">std::stringstream & </td>
|
|
<td class="paramname"><em>out</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>This method is called from within the protocol method when protocol is called on the initial connection where the data is an empty string. Use this method to deliver a message to the connection upon connection. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aa87aca65cece02a107e7c288a925271f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa87aca65cece02a107e7c288a925271f">◆ </a></span>onDataReceived()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void core::TCPSession::onDataReceived </td>
|
|
<td>(</td>
|
|
<td class="paramtype">std::string </td>
|
|
<td class="paramname"><em>data</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Called when data is received from the socket. </p>
|
|
<p>The onConnected method is called when the socket is ready to communicate. Writing to the socket can begin on this call to initiate a contact with the remote device. The onDataReceived method is called when the socket has received an event from epoll and there is data ready to be read from the socket. The default handler will pull the data and put it into the streambuf for the socket. EPOLLIN</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">data</td><td>the data that has been received from the socket. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p>Reimplemented from <a class="el" href="classcore_1_1Socket.html#ac8d6a2c54696eb6fc2024cf6bcf6b4e5">core::Socket</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a77600a18d75f1efee00b3dc626b1e98b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a77600a18d75f1efee00b3dc626b1e98b">◆ </a></span>onRegister()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void core::TCPSession::onRegister </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Called when the socket has finished registering with the epoll processing. </p>
|
|
<p>The onRegister method is called before the socket is registered with ePoll so objects extending the <a class="el" href="classcore_1_1Socket.html">Socket</a> definition can initialize the socket before receiving events. Evoked when the descriptor is set using setDescriptor for the socket. </p>
|
|
|
|
<p>Reimplemented from <a class="el" href="classcore_1_1Socket.html#a81e5ee3e17834166d97c6e8b7dfe0da0">core::Socket</a>.</p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classcore_1_1TLSSession.html#a76cec7cf4851eb27abe77a2339344c6d">core::TLSSession</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a50037cbfc515650e04054e5481785981"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a50037cbfc515650e04054e5481785981">◆ </a></span>output()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void core::TCPSession::output </td>
|
|
<td>(</td>
|
|
<td class="paramtype">std::stringstream & </td>
|
|
<td class="paramname"><em>out</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>The output method is called by a socket session (BMASession) and will output the detail information for the client socket. When extending BMATCPSocket or BMASession you can override the method to add attributes to the list. </p>
|
|
|
|
<p>Reimplemented from <a class="el" href="classcore_1_1TCPSocket.html#afacf7528ff3c9ac077d7b5a49e2116fd">core::TCPSocket</a>.</p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classcore_1_1TLSSession.html#ae55de8a035d1ddc560cf619b2030af43">core::TLSSession</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aed35285cd2a2624bb219b51d3847634e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aed35285cd2a2624bb219b51d3847634e">◆ </a></span>protocol()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void core::TCPSession::protocol </td>
|
|
<td>(</td>
|
|
<td class="paramtype">std::stringstream & </td>
|
|
<td class="paramname"><em>out</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">std::string </td>
|
|
<td class="paramname"><em>data</em> = <code>""</code> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>Override the protocol method to manage and control the session communications in your inherited session. If you do not override this method then the Session default will process the 'commands' added to the server object using the processRequest method on the session input. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classcore_1_1TLSSession.html#ad7f219581d1f7700ca1f88551cd01c74">core::TLSSession</a>, and <a class="el" href="classcore_1_1ConsoleSession.html#a9fc306ab91d0f2a6990984040ecb3e47">core::ConsoleSession</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ae86d38bd7b58bfb8f8a22c1e2354c3df"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae86d38bd7b58bfb8f8a22c1e2354c3df">◆ </a></span>send()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void core::TCPSession::send </td>
|
|
<td>(</td>
|
|
<td class="paramtype">std::string </td>
|
|
<td class="paramname"><em>data</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>The send method is used to output the contents of the out stream to the session containing the stream. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aae6bcaf66594f92984e6419b14e8221f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aae6bcaf66594f92984e6419b14e8221f">◆ </a></span>sendToAll() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void core::TCPSession::sendToAll </td>
|
|
<td>(</td>
|
|
<td class="paramtype">std::string </td>
|
|
<td class="paramname"><em>data</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>Use this sendToAll method to output the contents of the out stream to all the connections on the server excluding the sender session. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a2219e98dc33f9da2fec1d75597081dfb"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2219e98dc33f9da2fec1d75597081dfb">◆ </a></span>sendToAll() <span class="overload">[2/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void core::TCPSession::sendToAll </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classcore_1_1SessionFilter.html">SessionFilter</a> </td>
|
|
<td class="paramname"><em>filter</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">std::string </td>
|
|
<td class="paramname"><em>data</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>Use this sendToAll method to output the contents of the out stream to all the connections on the server excluding the sender session and the entries identified by the passed in filter object. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<hr/>The documentation for this class was generated from the following files:<ul>
|
|
<li><a class="el" href="TCPSession_8h_source.html">TCPSession.h</a></li>
|
|
<li>TCPSession.cpp</li>
|
|
</ul>
|
|
</div><!-- contents -->
|
|
<!-- start footer part -->
|
|
<hr class="footer"/><address class="footer"><small>
|
|
Generated by  <a href="http://www.doxygen.org/index.html">
|
|
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
|
</a> 1.8.13
|
|
</small></address>
|
|
</body>
|
|
</html>
|