372 lines
64 KiB
HTML
372 lines
64 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"/>
|
|
<title>SLikeNet: Source/include/slikenet/peerinterface.h Source File</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);
|
|
</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">SLikeNet
|
|
 <span id="projectnumber">0.1.3</span>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.8.2 -->
|
|
<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.xhtml"><span>Main Page</span></a></li>
|
|
<li><a href="../../pages.xhtml"><span>Related Pages</span></a></li>
|
|
<li><a href="../../modules.xhtml"><span>Modules</span></a></li>
|
|
<li><a href="../../namespaces.xhtml"><span>Namespaces</span></a></li>
|
|
<li><a href="../../annotated.xhtml"><span>Classes</span></a></li>
|
|
<li class="current"><a href="../../files.xhtml"><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="../../files.xhtml"><span>File List</span></a></li>
|
|
<li><a href="../../globals.xhtml"><span>File 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('dd/d85/peerinterface_8h_source.xhtml','../../');});
|
|
</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"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(12)"><span class="SelectionMark"> </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="headertitle">
|
|
<div class="title">peerinterface.h</div> </div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
<a href="../../dd/d85/peerinterface_8h.xhtml">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
|
|
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Original work: Copyright (c) 2014, Oculus VR, Inc.</span></div>
|
|
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> * All rights reserved.</span></div>
|
|
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> *</span></div>
|
|
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * This source code is licensed under the BSD-style license found in the</span></div>
|
|
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * RakNet License.txt file in the licenses directory of this source tree. An additional grant </span></div>
|
|
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * of patent rights can be found in the RakNet Patents.txt file in the same directory.</span></div>
|
|
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
|
|
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> *</span></div>
|
|
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * Modified work: Copyright (c) 2017, SLikeSoft UG (haftungsbeschränkt)</span></div>
|
|
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> *</span></div>
|
|
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * This source code was modified by SLikeSoft. Modifications are licensed under the MIT-style</span></div>
|
|
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> * license found in the license.txt file in the root directory of this source tree.</span></div>
|
|
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> */</span></div>
|
|
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> </div>
|
|
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> </div>
|
|
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
|
|
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
|
|
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#ifndef __RAK_PEER_INTERFACE_H</span></div>
|
|
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor"></span><span class="preprocessor">#define __RAK_PEER_INTERFACE_H</span></div>
|
|
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor"></span></div>
|
|
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include "<a class="code" href="../../d7/d03/_packet_priority_8h.xhtml" title="This file contains enumerations for packet priority and reliability enumerations.">PacketPriority.h</a>"</span></div>
|
|
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include "<a class="code" href="../../d9/d49/types_8h.xhtml" title="Types used by RakNet, most of which involve user code.">types.h</a>"</span></div>
|
|
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "<a class="code" href="../../dd/dc5/memoryoverride_8h.xhtml" title="If _USE_RAK_MEMORY_OVERRIDE is defined, memory allocations go through rakMalloc, rakRealloc, and rakFree.">memoryoverride.h</a>"</span></div>
|
|
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include "<a class="code" href="../../db/dbd/_export_8h.xhtml">Export.h</a>"</span></div>
|
|
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="../../d9/d7f/_d_s___list_8h.xhtml">DS_List.h</a>"</span></div>
|
|
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="../../dc/df7/smartptr_8h.xhtml">smartptr.h</a>"</span></div>
|
|
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "<a class="code" href="../../df/ded/socket2_8h.xhtml">socket2.h</a>"</span></div>
|
|
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div>
|
|
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="keyword">namespace </span>SLNet</div>
|
|
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> {</div>
|
|
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="comment">// Forward declarations</span></div>
|
|
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keyword">class </span>BitStream;</div>
|
|
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keyword">class </span>PluginInterface2;</div>
|
|
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keyword">struct </span>RPCMap;</div>
|
|
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keyword">struct </span>RakNetStatistics;</div>
|
|
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keyword">struct </span>RakNetBandwidth;</div>
|
|
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keyword">class </span>RouterInterface;</div>
|
|
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keyword">class </span>NetworkIDManager;</div>
|
|
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div>
|
|
<div class="line"><a name="l00047"></a><span class="lineno"><a class="code" href="../../da/d27/class_s_l_net_1_1_rak_peer_interface.xhtml"> 47</a></span> <span class="keyword">class </span><a class="code" href="../../db/dbd/_export_8h.xhtml#ab0579394e418800d5c85e46ad6fcd61d">RAK_DLL_EXPORT</a> <a class="code" href="../../da/d27/class_s_l_net_1_1_rak_peer_interface.xhtml" title="The main interface for network communications.">RakPeerInterface</a></div>
|
|
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> {</div>
|
|
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keyword">public</span>:</div>
|
|
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  <span class="comment">// GetInstance() and DestroyInstance(instance*)</span></div>
|
|
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  <a class="code" href="../../db/dbd/_export_8h.xhtml#af3e49377f340027d211b2814949efc48">STATIC_FACTORY_DECLARATIONS</a>(<a class="code" href="../../da/d27/class_s_l_net_1_1_rak_peer_interface.xhtml" title="The main interface for network communications.">RakPeerInterface</a>)</div>
|
|
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div>
|
|
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  </div>
|
|
<div class="line"><a name="l00054"></a><span class="lineno"><a class="code" href="../../da/d27/class_s_l_net_1_1_rak_peer_interface.xhtml#a80e1bedeb306c872cae6cbc7ef6e0c9d"> 54</a></span>  virtual ~<a class="code" href="../../da/d27/class_s_l_net_1_1_rak_peer_interface.xhtml" title="The main interface for network communications.">RakPeerInterface</a>() {}</div>
|
|
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> </div>
|
|
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  <span class="comment">// --------------------------------------------------------------------------------------------Major Low Level Functions - Functions needed by most users--------------------------------------------------------------------------------------------</span></div>
|
|
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="comment"></span> <span class="keyword">virtual</span> <a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#aced2e22b5f3b0b55dfadd3d9c6d578b9">StartupResult</a> Startup( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> maxConnections, <a class="code" href="../../dc/d06/struct_s_l_net_1_1_socket_descriptor.xhtml" title="Describes the local socket to use for RakPeer::Startup.">SocketDescriptor</a> *socketDescriptors, <span class="keywordtype">unsigned</span> socketDescriptorCount, <span class="keywordtype">int</span> threadPriority=-99999 )=0;</div>
|
|
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div>
|
|
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> InitializeSecurity( <span class="keyword">const</span> <span class="keywordtype">char</span> *publicKey, <span class="keyword">const</span> <span class="keywordtype">char</span> *privateKey, <span class="keywordtype">bool</span> bRequireClientKey = <span class="keyword">false</span> )=0;</div>
|
|
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> </div>
|
|
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> DisableSecurity( <span class="keywordtype">void</span> )=0;</div>
|
|
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> </div>
|
|
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> AddToSecurityExceptionList(<span class="keyword">const</span> <span class="keywordtype">char</span> *ip)=0;</div>
|
|
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> </div>
|
|
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> RemoveFromSecurityExceptionList(<span class="keyword">const</span> <span class="keywordtype">char</span> *ip)=0;</div>
|
|
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> </div>
|
|
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> IsInSecurityExceptionList(<span class="keyword">const</span> <span class="keywordtype">char</span> *ip)=0;</div>
|
|
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
|
|
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> SetMaximumIncomingConnections( <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> numberAllowed )=0;</div>
|
|
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> </div>
|
|
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> GetMaximumIncomingConnections( <span class="keywordtype">void</span> ) <span class="keyword">const</span>=0;</div>
|
|
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> </div>
|
|
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> NumberOfConnections(<span class="keywordtype">void</span>) <span class="keyword">const</span>=0;</div>
|
|
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div>
|
|
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> SetIncomingPassword( <span class="keyword">const</span> <span class="keywordtype">char</span>* passwordData, <span class="keywordtype">int</span> passwordDataLength )=0;</div>
|
|
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> </div>
|
|
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> GetIncomingPassword( <span class="keywordtype">char</span>* passwordData, <span class="keywordtype">int</span> *passwordDataLength )=0;</div>
|
|
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> </div>
|
|
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  <span class="keyword">virtual</span> <a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#ad85150b9d0728bb436c26e00b4ba7c3a">ConnectionAttemptResult</a> Connect( <span class="keyword">const</span> <span class="keywordtype">char</span>* host, <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> remotePort, <span class="keyword">const</span> <span class="keywordtype">char</span> *passwordData, <span class="keywordtype">int</span> passwordDataLength, <a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#d0/dc8/struct_s_l_net_1_1_public_key" title="Passed to RakPeerInterface::Connect()">PublicKey</a> *publicKey=0, <span class="keywordtype">unsigned</span> connectionSocketIndex=0, <span class="keywordtype">unsigned</span> sendConnectionAttemptCount=12, <span class="keywordtype">unsigned</span> timeBetweenSendConnectionAttemptsMS=500, <a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#a26b4eb1be8467562f791e3c5af4a67ae">SLNet::TimeMS</a> timeoutTime=0 )=0;</div>
|
|
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> </div>
|
|
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  <span class="keyword">virtual</span> <a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#ad85150b9d0728bb436c26e00b4ba7c3a">ConnectionAttemptResult</a> ConnectWithSocket(<span class="keyword">const</span> <span class="keywordtype">char</span>* host, <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> remotePort, <span class="keyword">const</span> <span class="keywordtype">char</span> *passwordData, <span class="keywordtype">int</span> passwordDataLength, <a class="code" href="../../d1/dde/class_s_l_net_1_1_rak_net_socket2.xhtml">RakNetSocket2</a>* socket, <a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#d0/dc8/struct_s_l_net_1_1_public_key" title="Passed to RakPeerInterface::Connect()">PublicKey</a> *publicKey=0, <span class="keywordtype">unsigned</span> sendConnectionAttemptCount=12, <span class="keywordtype">unsigned</span> timeBetweenSendConnectionAttemptsMS=500, <a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#a26b4eb1be8467562f791e3c5af4a67ae">SLNet::TimeMS</a> timeoutTime=0)=0;</div>
|
|
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> </div>
|
|
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  <span class="comment">//virtual bool Console2LobbyConnect( void *networkServiceId, const char *passwordData, int passwordDataLength )=0;</span></div>
|
|
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> </div>
|
|
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> Shutdown( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> blockDuration, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> orderingChannel=0, <a class="code" href="../../d7/d03/_packet_priority_8h.xhtml#a659378374e516180f93640c79f59705c" title="These enumerations are used to describe when packets are delivered.">PacketPriority</a> disconnectionNotificationPriority=<a class="code" href="../../d7/d03/_packet_priority_8h.xhtml#a659378374e516180f93640c79f59705cadb8ee22a232a2787f32ba28da55c43c1">LOW_PRIORITY</a> )=0;</div>
|
|
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> </div>
|
|
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> IsActive( <span class="keywordtype">void</span> ) <span class="keyword">const</span>=0;</div>
|
|
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> </div>
|
|
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> GetConnectionList( <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> *remoteSystems, <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> *numberOfSystems ) <span class="keyword">const</span>=0;</div>
|
|
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> </div>
|
|
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  <span class="keyword">virtual</span> <a class="code" href="../../df/df2/_native_types_8h.xhtml#a6eb1e68cc391dd753bc8ce896dbb8315">uint32_t</a> GetNextSendReceipt(<span class="keywordtype">void</span>)=0;</div>
|
|
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> </div>
|
|
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  <span class="keyword">virtual</span> <a class="code" href="../../df/df2/_native_types_8h.xhtml#a6eb1e68cc391dd753bc8ce896dbb8315">uint32_t</a> IncrementNextSendReceipt(<span class="keywordtype">void</span>)=0;</div>
|
|
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> </div>
|
|
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  <span class="keyword">virtual</span> <a class="code" href="../../df/df2/_native_types_8h.xhtml#a6eb1e68cc391dd753bc8ce896dbb8315">uint32_t</a> Send( <span class="keyword">const</span> <span class="keywordtype">char</span> *data, <span class="keyword">const</span> <span class="keywordtype">int</span> length, <a class="code" href="../../d7/d03/_packet_priority_8h.xhtml#a659378374e516180f93640c79f59705c" title="These enumerations are used to describe when packets are delivered.">PacketPriority</a> priority, <a class="code" href="../../d7/d03/_packet_priority_8h.xhtml#ae41fa01235e99dced384d137fa874a7e">PacketReliability</a> reliability, <span class="keywordtype">char</span> orderingChannel, <span class="keyword">const</span> <a class="code" href="../../d3/da8/struct_s_l_net_1_1_address_or_g_u_i_d.xhtml">AddressOrGUID</a> systemIdentifier, <span class="keywordtype">bool</span> broadcast, <a class="code" href="../../df/df2/_native_types_8h.xhtml#a6eb1e68cc391dd753bc8ce896dbb8315">uint32_t</a> forceReceiptNumber=0 )=0;</div>
|
|
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> </div>
|
|
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> SendLoopback( <span class="keyword">const</span> <span class="keywordtype">char</span> *data, <span class="keyword">const</span> <span class="keywordtype">int</span> length )=0;</div>
|
|
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> </div>
|
|
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  <span class="keyword">virtual</span> <a class="code" href="../../df/df2/_native_types_8h.xhtml#a6eb1e68cc391dd753bc8ce896dbb8315">uint32_t</a> Send( <span class="keyword">const</span> <a class="code" href="../../df/d75/class_s_l_net_1_1_bit_stream.xhtml">SLNet::BitStream</a> * bitStream, <a class="code" href="../../d7/d03/_packet_priority_8h.xhtml#a659378374e516180f93640c79f59705c" title="These enumerations are used to describe when packets are delivered.">PacketPriority</a> priority, <a class="code" href="../../d7/d03/_packet_priority_8h.xhtml#ae41fa01235e99dced384d137fa874a7e">PacketReliability</a> reliability, <span class="keywordtype">char</span> orderingChannel, <span class="keyword">const</span> <a class="code" href="../../d3/da8/struct_s_l_net_1_1_address_or_g_u_i_d.xhtml">AddressOrGUID</a> systemIdentifier, <span class="keywordtype">bool</span> broadcast, <a class="code" href="../../df/df2/_native_types_8h.xhtml#a6eb1e68cc391dd753bc8ce896dbb8315">uint32_t</a> forceReceiptNumber=0 )=0;</div>
|
|
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> </div>
|
|
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  <span class="keyword">virtual</span> <a class="code" href="../../df/df2/_native_types_8h.xhtml#a6eb1e68cc391dd753bc8ce896dbb8315">uint32_t</a> SendList( <span class="keyword">const</span> <span class="keywordtype">char</span> **data, <span class="keyword">const</span> <span class="keywordtype">int</span> *lengths, <span class="keyword">const</span> <span class="keywordtype">int</span> numParameters, <a class="code" href="../../d7/d03/_packet_priority_8h.xhtml#a659378374e516180f93640c79f59705c" title="These enumerations are used to describe when packets are delivered.">PacketPriority</a> priority, <a class="code" href="../../d7/d03/_packet_priority_8h.xhtml#ae41fa01235e99dced384d137fa874a7e">PacketReliability</a> reliability, <span class="keywordtype">char</span> orderingChannel, <span class="keyword">const</span> <a class="code" href="../../d3/da8/struct_s_l_net_1_1_address_or_g_u_i_d.xhtml">AddressOrGUID</a> systemIdentifier, <span class="keywordtype">bool</span> broadcast, <a class="code" href="../../df/df2/_native_types_8h.xhtml#a6eb1e68cc391dd753bc8ce896dbb8315">uint32_t</a> forceReceiptNumber=0 )=0;</div>
|
|
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> </div>
|
|
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>  <span class="keyword">virtual</span> <a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#d8/d23/struct_s_l_net_1_1_packet" title="This represents a user message from another system.">Packet</a>* Receive( <span class="keywordtype">void</span> )=0;</div>
|
|
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> </div>
|
|
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> DeallocatePacket( <a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#d8/d23/struct_s_l_net_1_1_packet" title="This represents a user message from another system.">Packet</a> *packet )=0;</div>
|
|
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> </div>
|
|
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>  <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> GetMaximumNumberOfPeers( <span class="keywordtype">void</span> ) <span class="keyword">const</span>=0;</div>
|
|
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> </div>
|
|
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  <span class="comment">// -------------------------------------------------------------------------------------------- Connection Management Functions--------------------------------------------------------------------------------------------</span></div>
|
|
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <span class="comment"></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> CloseConnection( <span class="keyword">const</span> <a class="code" href="../../d3/da8/struct_s_l_net_1_1_address_or_g_u_i_d.xhtml">AddressOrGUID</a> target, <span class="keywordtype">bool</span> sendDisconnectionNotification, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> orderingChannel=0, <a class="code" href="../../d7/d03/_packet_priority_8h.xhtml#a659378374e516180f93640c79f59705c" title="These enumerations are used to describe when packets are delivered.">PacketPriority</a> disconnectionNotificationPriority=<a class="code" href="../../d7/d03/_packet_priority_8h.xhtml#a659378374e516180f93640c79f59705cadb8ee22a232a2787f32ba28da55c43c1">LOW_PRIORITY</a> )=0;</div>
|
|
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> </div>
|
|
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>  <span class="keyword">virtual</span> <a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#ad3fc8b60e351dfe5eb05cdba41d8c7a3" title="Returned from RakPeerInterface::GetConnectionState()">ConnectionState</a> GetConnectionState(<span class="keyword">const</span> <a class="code" href="../../d3/da8/struct_s_l_net_1_1_address_or_g_u_i_d.xhtml">AddressOrGUID</a> systemIdentifier)=0;</div>
|
|
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> </div>
|
|
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> CancelConnectionAttempt( <span class="keyword">const</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> target )=0;</div>
|
|
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> </div>
|
|
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>  <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetIndexFromSystemAddress( <span class="keyword">const</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> systemAddress ) <span class="keyword">const</span>=0;</div>
|
|
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> </div>
|
|
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>  <span class="keyword">virtual</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> GetSystemAddressFromIndex( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index )=0;</div>
|
|
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> </div>
|
|
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  <span class="keyword">virtual</span> <a class="code" href="../../dd/d3f/struct_s_l_net_1_1_rak_net_g_u_i_d.xhtml">RakNetGUID</a> GetGUIDFromIndex( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index )=0;</div>
|
|
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> </div>
|
|
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> GetSystemList(<a class="code" href="../../d4/d78/class_data_structures_1_1_list.xhtml">DataStructures::List<SystemAddress></a> &addresses, <a class="code" href="../../d4/d78/class_data_structures_1_1_list.xhtml">DataStructures::List<RakNetGUID></a> &guids) <span class="keyword">const</span>=0;</div>
|
|
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> </div>
|
|
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> AddToBanList( <span class="keyword">const</span> <span class="keywordtype">char</span> *IP, <a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#a26b4eb1be8467562f791e3c5af4a67ae">SLNet::TimeMS</a> milliseconds=0 )=0;</div>
|
|
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> </div>
|
|
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> RemoveFromBanList( <span class="keyword">const</span> <span class="keywordtype">char</span> *IP )=0;</div>
|
|
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> </div>
|
|
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> ClearBanList( <span class="keywordtype">void</span> )=0;</div>
|
|
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> </div>
|
|
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> IsBanned( <span class="keyword">const</span> <span class="keywordtype">char</span> *IP )=0;</div>
|
|
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> </div>
|
|
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> SetLimitIPConnectionFrequency(<span class="keywordtype">bool</span> b)=0;</div>
|
|
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> </div>
|
|
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>  <span class="comment">// --------------------------------------------------------------------------------------------Pinging Functions - Functions dealing with the automatic ping mechanism--------------------------------------------------------------------------------------------</span></div>
|
|
<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="comment"></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> Ping( <span class="keyword">const</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> target )=0;</div>
|
|
<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> </div>
|
|
<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> Ping( <span class="keyword">const</span> <span class="keywordtype">char</span>* host, <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> remotePort, <span class="keywordtype">bool</span> onlyReplyOnAcceptingConnections, <span class="keywordtype">unsigned</span> connectionSocketIndex=0 )=0;</div>
|
|
<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> </div>
|
|
<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>  <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetAveragePing( <span class="keyword">const</span> <a class="code" href="../../d3/da8/struct_s_l_net_1_1_address_or_g_u_i_d.xhtml">AddressOrGUID</a> systemIdentifier )=0;</div>
|
|
<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> </div>
|
|
<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>  <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetLastPing( <span class="keyword">const</span> <a class="code" href="../../d3/da8/struct_s_l_net_1_1_address_or_g_u_i_d.xhtml">AddressOrGUID</a> systemIdentifier ) <span class="keyword">const</span>=0;</div>
|
|
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> </div>
|
|
<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>  <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetLowestPing( <span class="keyword">const</span> <a class="code" href="../../d3/da8/struct_s_l_net_1_1_address_or_g_u_i_d.xhtml">AddressOrGUID</a> systemIdentifier ) <span class="keyword">const</span>=0;</div>
|
|
<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> </div>
|
|
<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> SetOccasionalPing( <span class="keywordtype">bool</span> doPing )=0;</div>
|
|
<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> </div>
|
|
<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>  <span class="keyword">virtual</span> <a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#a7223b62c1b67121db1d975f2ab9b74c7">SLNet::Time</a> GetClockDifferential( <span class="keyword">const</span> <a class="code" href="../../d3/da8/struct_s_l_net_1_1_address_or_g_u_i_d.xhtml">AddressOrGUID</a> systemIdentifier )=0;</div>
|
|
<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> </div>
|
|
<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>  <span class="comment">// --------------------------------------------------------------------------------------------Static Data Functions - Functions dealing with API defined synchronized memory--------------------------------------------------------------------------------------------</span></div>
|
|
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="comment"></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> SetOfflinePingResponse( <span class="keyword">const</span> <span class="keywordtype">char</span> *data, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> length )=0;</div>
|
|
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> </div>
|
|
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> GetOfflinePingResponse( <span class="keywordtype">char</span> **data, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> *length )=0;</div>
|
|
<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> </div>
|
|
<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>  <span class="comment">//--------------------------------------------------------------------------------------------Network Functions - Functions dealing with the network in general--------------------------------------------------------------------------------------------</span></div>
|
|
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="comment"></span> <span class="keyword">virtual</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> GetInternalID( <span class="keyword">const</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> systemAddress=<a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#acea7714c995aae0e1feaf79c9e7f073d" title="Index of an invalid SystemAddress.">UNASSIGNED_SYSTEM_ADDRESS</a>, <span class="keyword">const</span> <span class="keywordtype">int</span> index=0 ) <span class="keyword">const</span>=0;</div>
|
|
<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> </div>
|
|
<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> SetInternalID(<a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> systemAddress, <span class="keywordtype">int</span> index=0)=0;</div>
|
|
<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> </div>
|
|
<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>  <span class="keyword">virtual</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> GetExternalID( <span class="keyword">const</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> target ) <span class="keyword">const</span>=0;</div>
|
|
<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> </div>
|
|
<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>  <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="../../dd/d3f/struct_s_l_net_1_1_rak_net_g_u_i_d.xhtml">RakNetGUID</a> GetMyGUID(<span class="keywordtype">void</span>) <span class="keyword">const</span>=0;</div>
|
|
<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> </div>
|
|
<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>  <span class="keyword">virtual</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> GetMyBoundAddress(<span class="keyword">const</span> <span class="keywordtype">int</span> socketIndex=0)=0;</div>
|
|
<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> </div>
|
|
<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>  <span class="keyword">static</span> <a class="code" href="../../df/df2/_native_types_8h.xhtml#ad27ed092432b64ff558d2254c278720f">uint64_t</a> Get64BitUniqueRandomNumber(<span class="keywordtype">void</span>);</div>
|
|
<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> </div>
|
|
<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>  <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="../../dd/d3f/struct_s_l_net_1_1_rak_net_g_u_i_d.xhtml">RakNetGUID</a>& GetGuidFromSystemAddress( <span class="keyword">const</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> input ) <span class="keyword">const</span>=0;</div>
|
|
<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> </div>
|
|
<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>  <span class="keyword">virtual</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> GetSystemAddressFromGuid( <span class="keyword">const</span> <a class="code" href="../../dd/d3f/struct_s_l_net_1_1_rak_net_g_u_i_d.xhtml">RakNetGUID</a> input ) <span class="keyword">const</span>=0;</div>
|
|
<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> </div>
|
|
<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> GetClientPublicKeyFromSystemAddress( <span class="keyword">const</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> input, <span class="keywordtype">char</span> *client_public_key ) <span class="keyword">const</span>=0;</div>
|
|
<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> </div>
|
|
<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> SetTimeoutTime(<a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#a26b4eb1be8467562f791e3c5af4a67ae">SLNet::TimeMS</a> timeMS, <span class="keyword">const</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> target )=0;</div>
|
|
<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> </div>
|
|
<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>  <span class="keyword">virtual</span> <a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#a26b4eb1be8467562f791e3c5af4a67ae">SLNet::TimeMS</a> GetTimeoutTime( <span class="keyword">const</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> target )=0;</div>
|
|
<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> </div>
|
|
<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>  <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetMTUSize( <span class="keyword">const</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> target ) <span class="keyword">const</span>=0;</div>
|
|
<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> </div>
|
|
<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>  <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> GetNumberOfAddresses( <span class="keywordtype">void</span> )=0;</div>
|
|
<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> </div>
|
|
<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>  <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* GetLocalIP( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index )=0;</div>
|
|
<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> </div>
|
|
<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> IsLocalIP( <span class="keyword">const</span> <span class="keywordtype">char</span> *ip )=0;</div>
|
|
<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> </div>
|
|
<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> AllowConnectionResponseIPMigration( <span class="keywordtype">bool</span> allow )=0;</div>
|
|
<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> </div>
|
|
<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> AdvertiseSystem( <span class="keyword">const</span> <span class="keywordtype">char</span> *host, <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> remotePort, <span class="keyword">const</span> <span class="keywordtype">char</span> *data, <span class="keywordtype">int</span> dataLength, <span class="keywordtype">unsigned</span> connectionSocketIndex=0 )=0;</div>
|
|
<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> </div>
|
|
<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> SetSplitMessageProgressInterval(<span class="keywordtype">int</span> interval)=0;</div>
|
|
<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> </div>
|
|
<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>  <span class="keyword">virtual</span> <span class="keywordtype">int</span> GetSplitMessageProgressInterval(<span class="keywordtype">void</span>) <span class="keyword">const</span>=0;</div>
|
|
<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> </div>
|
|
<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> SetUnreliableTimeout(<a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#a26b4eb1be8467562f791e3c5af4a67ae">SLNet::TimeMS</a> timeoutMS)=0;</div>
|
|
<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> </div>
|
|
<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> SendTTL( <span class="keyword">const</span> <span class="keywordtype">char</span>* host, <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> remotePort, <span class="keywordtype">int</span> ttl, <span class="keywordtype">unsigned</span> connectionSocketIndex=0 )=0;</div>
|
|
<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> </div>
|
|
<div class="line"><a name="l00496"></a><span class="lineno"> 496</span>  <span class="comment">// -------------------------------------------------------------------------------------------- Plugin Functions--------------------------------------------------------------------------------------------</span></div>
|
|
<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="comment"></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> AttachPlugin( <a class="code" href="../../de/d14/group___p_l_u_g_i_n___i_n_t_e_r_f_a_c_e___g_r_o_u_p.xhtml#db/d5e/class_s_l_net_1_1_plugin_interface2">PluginInterface2</a> *plugin )=0;</div>
|
|
<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> </div>
|
|
<div class="line"><a name="l00506"></a><span class="lineno"> 506</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> DetachPlugin( <a class="code" href="../../de/d14/group___p_l_u_g_i_n___i_n_t_e_r_f_a_c_e___g_r_o_u_p.xhtml#db/d5e/class_s_l_net_1_1_plugin_interface2">PluginInterface2</a> *messageHandler )=0;</div>
|
|
<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> </div>
|
|
<div class="line"><a name="l00508"></a><span class="lineno"> 508</span>  <span class="comment">// --------------------------------------------------------------------------------------------Miscellaneous Functions--------------------------------------------------------------------------------------------</span></div>
|
|
<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> <span class="comment"></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> PushBackPacket( <a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#d8/d23/struct_s_l_net_1_1_packet" title="This represents a user message from another system.">Packet</a> *packet, <span class="keywordtype">bool</span> pushAtHead )=0;</div>
|
|
<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> </div>
|
|
<div class="line"><a name="l00518"></a><span class="lineno"> 518</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> ChangeSystemAddress(<a class="code" href="../../dd/d3f/struct_s_l_net_1_1_rak_net_g_u_i_d.xhtml">RakNetGUID</a> guid, <span class="keyword">const</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> &systemAddress)=0;</div>
|
|
<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> </div>
|
|
<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>  <span class="keyword">virtual</span> <a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#d8/d23/struct_s_l_net_1_1_packet" title="This represents a user message from another system.">Packet</a>* AllocatePacket(<span class="keywordtype">unsigned</span> dataSize)=0;</div>
|
|
<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> </div>
|
|
<div class="line"><a name="l00531"></a><span class="lineno"> 531</span>  <span class="keyword">virtual</span> <a class="code" href="../../d1/dde/class_s_l_net_1_1_rak_net_socket2.xhtml">RakNetSocket2</a>* GetSocket( <span class="keyword">const</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> target )=0;</div>
|
|
<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> </div>
|
|
<div class="line"><a name="l00536"></a><span class="lineno"> 536</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> GetSockets( <a class="code" href="../../d4/d78/class_data_structures_1_1_list.xhtml">DataStructures::List<RakNetSocket2* ></a> &sockets )=0;</div>
|
|
<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> ReleaseSockets( <a class="code" href="../../d4/d78/class_data_structures_1_1_list.xhtml">DataStructures::List<RakNetSocket2* ></a> &sockets )=0;</div>
|
|
<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> </div>
|
|
<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> WriteOutOfBandHeader(<a class="code" href="../../df/d75/class_s_l_net_1_1_bit_stream.xhtml">SLNet::BitStream</a> *bitStream)=0;</div>
|
|
<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> </div>
|
|
<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> SetUserUpdateThread(<span class="keywordtype">void</span> (*_userUpdateThreadPtr)(<a class="code" href="../../da/d27/class_s_l_net_1_1_rak_peer_interface.xhtml" title="The main interface for network communications.">RakPeerInterface</a> *, <span class="keywordtype">void</span> *), <span class="keywordtype">void</span> *_userUpdateThreadData)=0;</div>
|
|
<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> </div>
|
|
<div class="line"><a name="l00553"></a><span class="lineno"> 553</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> SetIncomingDatagramEventHandler( <span class="keywordtype">bool</span> (*_incomingDatagramEventHandler)(<a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#d2/ddc/struct_s_l_net_1_1_r_n_s2_recv_struct">RNS2RecvStruct</a> *) )=0;</div>
|
|
<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> </div>
|
|
<div class="line"><a name="l00555"></a><span class="lineno"> 555</span>  <span class="comment">// --------------------------------------------------------------------------------------------Network Simulator Functions--------------------------------------------------------------------------------------------</span></div>
|
|
<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> <span class="comment"></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> ApplyNetworkSimulator( <span class="keywordtype">float</span> packetloss, <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> minExtraPing, <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> extraPingVariance)=0;</div>
|
|
<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> </div>
|
|
<div class="line"><a name="l00570"></a><span class="lineno"> 570</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> SetPerConnectionOutgoingBandwidthLimit( <span class="keywordtype">unsigned</span> maxBitsPerSecond )=0;</div>
|
|
<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> </div>
|
|
<div class="line"><a name="l00574"></a><span class="lineno"> 574</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> IsNetworkSimulatorActive( <span class="keywordtype">void</span> )=0;</div>
|
|
<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> </div>
|
|
<div class="line"><a name="l00576"></a><span class="lineno"> 576</span>  <span class="comment">// --------------------------------------------------------------------------------------------Statistical Functions - Functions dealing with API performance--------------------------------------------------------------------------------------------</span></div>
|
|
<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> </div>
|
|
<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>  <span class="keyword">virtual</span> <a class="code" href="../../df/df9/struct_s_l_net_1_1_rak_net_statistics.xhtml" title="Network Statisics Usage.">RakNetStatistics</a> * GetStatistics( <span class="keyword">const</span> <a class="code" href="../../d8/dbe/struct_s_l_net_1_1_system_address.xhtml" title="Network address for a system.">SystemAddress</a> systemAddress, <a class="code" href="../../df/df9/struct_s_l_net_1_1_rak_net_statistics.xhtml" title="Network Statisics Usage.">RakNetStatistics</a> *rns=0 )=0;</div>
|
|
<div class="line"><a name="l00587"></a><span class="lineno"> 587</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> GetStatistics( <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index, <a class="code" href="../../df/df9/struct_s_l_net_1_1_rak_net_statistics.xhtml" title="Network Statisics Usage.">RakNetStatistics</a> *rns )=0;</div>
|
|
<div class="line"><a name="l00593"></a><span class="lineno"> 593</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> GetStatisticsList(<a class="code" href="../../d4/d78/class_data_structures_1_1_list.xhtml">DataStructures::List<SystemAddress></a> &addresses, <a class="code" href="../../d4/d78/class_data_structures_1_1_list.xhtml">DataStructures::List<RakNetGUID></a> &guids, <a class="code" href="../../d4/d78/class_data_structures_1_1_list.xhtml" title="Array based implementation of a list.">DataStructures::List<RakNetStatistics></a> &statistics)=0;</div>
|
|
<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> </div>
|
|
<div class="line"><a name="l00596"></a><span class="lineno"> 596</span>  <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> GetReceiveBufferSize(<span class="keywordtype">void</span>)=0;</div>
|
|
<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> </div>
|
|
<div class="line"><a name="l00598"></a><span class="lineno"> 598</span>  <span class="comment">// --------------------------------------------------------------------------------------------EVERYTHING AFTER THIS COMMENT IS FOR INTERNAL USE ONLY--------------------------------------------------------------------------------------------</span></div>
|
|
<div class="line"><a name="l00599"></a><span class="lineno"> 599</span>  </div>
|
|
<div class="line"><a name="l00601"></a><span class="lineno"> 601</span>  <span class="comment">// Call manually if RAKPEER_USER_THREADED==1 at least every 30 milliseconds.</span></div>
|
|
<div class="line"><a name="l00602"></a><span class="lineno"> 602</span>  <span class="comment">// updateBitStream should be:</span></div>
|
|
<div class="line"><a name="l00603"></a><span class="lineno"> 603</span>  <span class="comment">// BitStream updateBitStream( MAXIMUM_MTU_SIZE</span></div>
|
|
<div class="line"><a name="l00604"></a><span class="lineno"> 604</span>  <span class="comment">// #if LIBCAT_SECURITY==1</span></div>
|
|
<div class="line"><a name="l00605"></a><span class="lineno"> 605</span>  <span class="comment">// + cat::AuthenticatedEncryption::OVERHEAD_BYTES</span></div>
|
|
<div class="line"><a name="l00606"></a><span class="lineno"> 606</span>  <span class="comment">// #endif</span></div>
|
|
<div class="line"><a name="l00607"></a><span class="lineno"> 607</span>  <span class="comment">// );</span></div>
|
|
<div class="line"><a name="l00608"></a><span class="lineno"> 608</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> RunUpdateCycle( <a class="code" href="../../df/d75/class_s_l_net_1_1_bit_stream.xhtml">BitStream</a> &updateBitStream )=0;</div>
|
|
<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> </div>
|
|
<div class="line"><a name="l00611"></a><span class="lineno"> 611</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> SendOutOfBand(<span class="keyword">const</span> <span class="keywordtype">char</span> *host, <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> remotePort, <span class="keyword">const</span> <span class="keywordtype">char</span> *data, <a class="code" href="../../dd/d30/namespace_s_l_net.xhtml#a227d2a5f9683a34d9d1e70772fd556ec">BitSize_t</a> dataLength, <span class="keywordtype">unsigned</span> connectionSocketIndex=0 )=0;</div>
|
|
<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> </div>
|
|
<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> }</div>
|
|
<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> <span class="comment">// #if defined(SN_TARGET_PSP2)</span></div>
|
|
<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> <span class="comment">// __attribute__((aligned(8)))</span></div>
|
|
<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> <span class="comment">// #endif</span></div>
|
|
<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> ;</div>
|
|
<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> </div>
|
|
<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> } <span class="comment">// namespace SLNet</span></div>
|
|
<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> </div>
|
|
<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> <span class="preprocessor">#endif</span></div>
|
|
</div><!-- fragment --></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="../../dir_74389ed8173ad57b461b9d623a1f3867.xhtml">Source</a></li><li class="navelem"><a class="el" href="../../dir_bbb90e3ef9167a594ae33323139a2595.xhtml">include</a></li><li class="navelem"><a class="el" href="../../dir_88467e66686deb9d3756fe4fc298e321.xhtml">slikenet</a></li><li class="navelem"><a class="el" href="../../dd/d85/peerinterface_8h.xhtml">peerinterface.h</a></li>
|
|
<li class="footer">Generated on Wed Aug 14 2019 22:09:46 for SLikeNet by
|
|
<a href="http://www.doxygen.org/index.html">
|
|
<img class="footer" src="../../doxygen.png" alt="doxygen"/></a> 1.8.2 </li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|