📄 a00693.html
字号:
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="93b242fbd459db8812e2c93919c598d3"></a><!-- doxytag: member="OpenDDS::DCPS::SimpleTcpTransport::configure_i" ref="93b242fbd459db8812e2c93919c598d3" args="(TransportConfiguration *config)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int OpenDDS::DCPS::SimpleTcpTransport::configure_i </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00741.html">TransportConfiguration</a> * </td>
<td class="paramname"> <em>config</em> </td>
<td> ) </td>
<td width="100%"><code> [protected, virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Concrete subclass gets a shot at the config object. The subclass will likely downcast the <a class="el" href="a00741.html">TransportConfiguration</a> object to a subclass type that it expects/requires.
<p>
Implements <a class="el" href="a00746.html#496a72a94a351028ecde95401db1fe44">OpenDDS::DCPS::TransportImpl</a>.
</div>
</div><p>
<a class="anchor" name="2d9016c970034bf860f7dd233b213c7f"></a><!-- doxytag: member="OpenDDS::DCPS::SimpleTcpTransport::connect_datalink" ref="2d9016c970034bf860f7dd233b213c7f" args="(SimpleTcpDataLink *link, SimpleTcpConnection *connection)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int OpenDDS::DCPS::SimpleTcpTransport::connect_datalink </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00686.html">SimpleTcpDataLink</a> * </td>
<td class="paramname"> <em>link</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00684.html">SimpleTcpConnection</a> * </td>
<td class="paramname"> <em>connection</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"><code> [private]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Common code used by <a class="el" href="a00693.html#3955acf80c6ce2a47b2fb3d1a8183644">make_active_connection()</a> and <a class="el" href="a00693.html#2f2ffc96c44c10914b809ecf8518b0db">make_passive_connection()</a>.
<p>
Code common to <a class="el" href="a00693.html#3955acf80c6ce2a47b2fb3d1a8183644">make_active_connection()</a> and <a class="el" href="a00693.html#2f2ffc96c44c10914b809ecf8518b0db">make_passive_connection()</a>.
</div>
</div><p>
<a class="anchor" name="1aef29846ac5cd443c1c293a574d0386"></a><!-- doxytag: member="OpenDDS::DCPS::SimpleTcpTransport::connection_info_i" ref="1aef29846ac5cd443c1c293a574d0386" args="(TransportInterfaceInfo &local_info) const " -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int OpenDDS::DCPS::SimpleTcpTransport::connection_info_i </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00749.html">TransportInterfaceInfo</a> & </td>
<td class="paramname"> <em>local_info</em> </td>
<td> ) </td>
<td width="100%"> const<code> [protected, virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Called by our <a class="el" href="a00746.html#e73cdc5cda252f9d33c11dd6288abc4d">connection_info()</a> method to allow the concrete <a class="el" href="a00746.html">TransportImpl</a> subclass to do the dirty work since it really is the one that knows how to populate the supplied <a class="el" href="a00749.html">TransportInterfaceInfo</a> object.
<p>
Implements <a class="el" href="a00746.html#db5d28c5415e480031fee394f6b7e342">OpenDDS::DCPS::TransportImpl</a>.
</div>
</div><p>
<a class="anchor" name="659dee90f3174fc02fea2504109f1329"></a><!-- doxytag: member="OpenDDS::DCPS::SimpleTcpTransport::find_or_create_datalink" ref="659dee90f3174fc02fea2504109f1329" args="(const TransportInterfaceInfo &remote_info, int connect_as_publisher)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00493.html">OpenDDS::DCPS::DataLink</a> * OpenDDS::DCPS::SimpleTcpTransport::find_or_create_datalink </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="a00749.html">TransportInterfaceInfo</a> & </td>
<td class="paramname"> <em>remote_info</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>connect_as_publisher</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"><code> [protected, virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Either find a suitable <a class="el" href="a00493.html">DataLink</a> that already exists (and is connected), or create one, connect it, save it off for reuse, and return it.
<p>
Implements <a class="el" href="a00746.html#024f42725ba0f14b8cd13154d5fa574e">OpenDDS::DCPS::TransportImpl</a>.
</div>
</div><p>
<a class="anchor" name="3ca04bfd9e4a1e9912bad213aa282bcd"></a><!-- doxytag: member="OpenDDS::DCPS::SimpleTcpTransport::fresh_link" ref="3ca04bfd9e4a1e9912bad213aa282bcd" args="(const ACE_INET_Addr &remote_addr, SimpleTcpConnection_rch connection)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int OpenDDS::DCPS::SimpleTcpTransport::fresh_link </td>
<td>(</td>
<td class="paramtype">const ACE_INET_Addr & </td>
<td class="paramname"> <em>remote_address</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00639.html">SimpleTcpConnection_rch</a> </td>
<td class="paramname"> <em>connection</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
This function is called by the <a class="el" href="a00690.html">SimpleTcpReconnectTask</a> thread to check if the passively accepted connection is the re-established connection. If it is, then the "old" connection object in the datalink is replaced by the "new" connection object.
</div>
</div><p>
<a class="anchor" name="1833020e1c012eb58c4e17b7824373a2"></a><!-- doxytag: member="OpenDDS::DCPS::SimpleTcpTransport::get_configuration" ref="1833020e1c012eb58c4e17b7824373a2" args="()" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00683.html">OpenDDS::DCPS::SimpleTcpConfiguration</a> * OpenDDS::DCPS::SimpleTcpTransport::get_configuration </td>
<td>(</td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="3955acf80c6ce2a47b2fb3d1a8183644"></a><!-- doxytag: member="OpenDDS::DCPS::SimpleTcpTransport::make_active_connection" ref="3955acf80c6ce2a47b2fb3d1a8183644" args="(const ACE_INET_Addr &remote_address, SimpleTcpDataLink *link)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int OpenDDS::DCPS::SimpleTcpTransport::make_active_connection </td>
<td>(</td>
<td class="paramtype">const ACE_INET_Addr & </td>
<td class="paramname"> <em>remote_address</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00686.html">SimpleTcpDataLink</a> * </td>
<td class="paramname"> <em>link</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"><code> [private]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Called by <a class="el" href="a00693.html#659dee90f3174fc02fea2504109f1329">find_or_create_datalink()</a>.
<p>
</div>
</div><p>
<a class="anchor" name="2f2ffc96c44c10914b809ecf8518b0db"></a><!-- doxytag: member="OpenDDS::DCPS::SimpleTcpTransport::make_passive_connection" ref="2f2ffc96c44c10914b809ecf8518b0db" args="(const ACE_INET_Addr &remote_address, SimpleTcpDataLink *link)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int OpenDDS::DCPS::SimpleTcpTransport::make_passive_connection </td>
<td>(</td>
<td class="paramtype">const ACE_INET_Addr & </td>
<td class="paramname"> <em>remote_address</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00686.html">SimpleTcpDataLink</a> * </td>
<td class="paramname"> <em>link</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"><code> [private]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Called by <a class="el" href="a00693.html#659dee90f3174fc02fea2504109f1329">find_or_create_datalink()</a>.
<p>
</div>
</div><p>
<a class="anchor" name="930e6c9d3a2d3636e356a20a49b05939"></a><!-- doxytag: member="OpenDDS::DCPS::SimpleTcpTransport::passive_connection" ref="930e6c9d3a2d3636e356a20a49b05939" args="(const ACE_INET_Addr &remote_address, SimpleTcpConnection *connection)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void OpenDDS::DCPS::SimpleTcpTransport::passive_connection </td>
<td>(</td>
<td class="paramtype">const ACE_INET_Addr & </td>
<td class="paramname"> <em>remote_address</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00684.html">SimpleTcpConnection</a> * </td>
<td class="paramname"> <em>connection</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"><code> [private]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Called by the <a class="el" href="a00684.html">SimpleTcpConnection</a> object when it has been created by the acceptor and needs to be attached to a <a class="el" href="a00493.html">DataLink</a>. The <a class="el" href="a00493.html">DataLink</a> may or may not already be created and waiting for this passive connection to appear. Note that the SimpleTcpConnection* "ownership" is given away to the <a class="el" href="a00693.html#930e6c9d3a2d3636e356a20a49b05939">passive_connection()</a> call.
</div>
</div><p>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -