a00748.html
来自「opendds 1.2 最新版 面向分布式实时网络编程」· HTML 代码 · 共 757 行 · 第 1/3 页
HTML
757 行
<td class="memname">ACE_INLINE int OpenDDS::DCPS::TransportInterface::add_publications </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00552.html">RepoId</a> </td>
<td class="paramname"> <em>subscriber_id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00753.html">TransportReceiveListener</a> * </td>
<td class="paramname"> <em>receive_listener</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">CORBA::Long </td>
<td class="paramname"> <em>priority</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">ssize_t </td>
<td class="paramname"> <em>size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="a00471.html">AssociationData</a> * </td>
<td class="paramname"> <em>publications</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"><code> [protected]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
A Subscriber will invoke this method to add associations to the transport interface. Returns 0 if successful, -1 if unsuccessful
</div>
</div><p>
<a class="anchor" name="a02b467b9a7b602a6527ebfc82b1e711"></a><!-- doxytag: member="OpenDDS::DCPS::TransportInterface::add_subscriptions" ref="a02b467b9a7b602a6527ebfc82b1e711" args="(RepoId publisher_id, CORBA::Long priority, ssize_t size, const AssociationData *subscriptions)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ACE_INLINE int OpenDDS::DCPS::TransportInterface::add_subscriptions </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00552.html">RepoId</a> </td>
<td class="paramname"> <em>publisher_id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">CORBA::Long </td>
<td class="paramname"> <em>priority</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">ssize_t </td>
<td class="paramname"> <em>size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="a00471.html">AssociationData</a> * </td>
<td class="paramname"> <em>subscriptions</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"><code> [protected]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
A Publisher will invoke this method to add associations to the transport interface. Returns 0 if successful, -1 if unsuccessful
</div>
</div><p>
<a class="anchor" name="a3cdfed648aa9f41ed98a9bf018e136c"></a><!-- doxytag: member="OpenDDS::DCPS::TransportInterface::attach_transport" ref="a3cdfed648aa9f41ed98a9bf018e136c" args="(TransportImpl *impl)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a01275.html#f9c05a440ed5e1a2b06b86a0c4459b01">OpenDDS::DCPS::AttachStatus</a> OpenDDS::DCPS::TransportInterface::attach_transport </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00746.html">TransportImpl</a> * </td>
<td class="paramname"> <em>impl</em> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
This method is called by the client application (or a subclass of <a class="el" href="a00748.html">TransportInterface</a>) in order to attach this <a class="el" href="a00748.html">TransportInterface</a> to the supplied <a class="el" href="a00746.html">TransportImpl</a> object.
</div>
</div><p>
<a class="anchor" name="d84088485384efe91e5ecae1cd4b5741"></a><!-- doxytag: member="OpenDDS::DCPS::TransportInterface::connection_info" ref="d84088485384efe91e5ecae1cd4b5741" args="() const " -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ACE_INLINE const <a class="el" href="a00749.html">OpenDDS::DCPS::TransportInterfaceInfo</a> & OpenDDS::DCPS::TransportInterface::connection_info </td>
<td>(</td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"> const</td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Accessor for the <a class="el" href="a00749.html">TransportInterfaceInfo</a>.
<p>
Return the connection_info_ that we retrieved from the <a class="el" href="a00746.html">TransportImpl</a> in our <a class="el" href="a00748.html#a3cdfed648aa9f41ed98a9bf018e136c">attach_transport()</a> method. Once we retrieve it from the <a class="el" href="a00746.html">TransportImpl</a> (in the <a class="el" href="a00748.html#a3cdfed648aa9f41ed98a9bf018e136c">attach_transport()</a> method), we "cache" it in a data member (this->connection_info_) so that we don't have to ask the <a class="el" href="a00746.html">TransportImpl</a> for it each time.
</div>
</div><p>
<a class="anchor" name="20982b01dde8b4fbde18712573db05b3"></a><!-- doxytag: member="OpenDDS::DCPS::TransportInterface::detach_transport" ref="20982b01dde8b4fbde18712573db05b3" args="()" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void OpenDDS::DCPS::TransportInterface::detach_transport </td>
<td>(</td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"><code> [protected]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
This method can be called by our subclass to detach this <a class="el" href="a00748.html">TransportInterface</a> from the <a class="el" href="a00746.html">TransportImpl</a> to which it is currently attached. This is the opposite of the "attach_transport()" method.
</div>
</div><p>
<a class="anchor" name="0e689aa6a53b70f455e9af566fc01c7b"></a><!-- doxytag: member="OpenDDS::DCPS::TransportInterface::get_transport_impl" ref="0e689aa6a53b70f455e9af566fc01c7b" args="()" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ACE_INLINE <a class="el" href="a00639.html">OpenDDS::DCPS::TransportImpl_rch</a> OpenDDS::DCPS::TransportInterface::get_transport_impl </td>
<td>(</td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Return the <a class="el" href="a00746.html">TransportImpl</a> object reference.
<p>
</div>
</div><p>
<a class="anchor" name="a1d557842dbee58dd005d1e6021b8ad4"></a><!-- doxytag: member="OpenDDS::DCPS::TransportInterface::remove_all_control_msgs" ref="a1d557842dbee58dd005d1e6021b8ad4" args="(RepoId pub_id)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ACE_INLINE int OpenDDS::DCPS::TransportInterface::remove_all_control_msgs </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00552.html">RepoId</a> </td>
<td class="paramname"> <em>pub_id</em> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="22c98044b063e0b9ebdf813d0b580ded"></a><!-- doxytag: member="OpenDDS::DCPS::TransportInterface::remove_associations" ref="22c98044b063e0b9ebdf813d0b580ded" args="(ssize_t size, const RepoId *remote_ids, const RepoId local_id, const bool pub_side)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void OpenDDS::DCPS::TransportInterface::remove_associations </td>
<td>(</td>
<td class="paramtype">ssize_t </td>
<td class="paramname"> <em>size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="a00552.html">RepoId</a> * </td>
<td class="paramname"> <em>remote_ids</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="a00552.html">RepoId</a> </td>
<td class="paramname"> <em>local_id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const bool </td>
<td class="paramname"> <em>pub_side</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"><code> [protected]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Subscribers will supply an array of publisher ids, and view this as a call to "remove publications".<p>
Conversely, Publishers will supply an array of subscriber ids, and view this as a call to "remove subscriptions".
</div>
</div><p>
<a class="anchor" name="ac8e1da4b0ea3caa551a6f0db152f669"></a><!-- doxytag: member="OpenDDS::DCPS::TransportInterface::remove_sample" ref="ac8e1da4b0ea3caa551a6f0db152f669" args="(const DataSampleListElement *sample, bool dropped_by_transport)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ACE_INLINE int OpenDDS::DCPS::TransportInterface::remove_sample </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="a00506.html">DataSampleListElement</a> * </td>
<td class="paramname"> <em>sample</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool </td>
<td class="paramname"> <em>dropped_by_transport</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>
Called to remove the sample from any <a class="el" href="a00493.html">DataLink</a> queues that it may be stuck in. This basically means that the caller wants his loan back. We always acknowledge that we are returning a loaned sample by calling either data_delivered() or data_dropped() on the <a class="el" href="a00758.html">TransportSendListener</a> pointed to by the sample object. If this <a class="el" href="a00748.html#ac8e1da4b0ea3caa551a6f0db152f669">remove_sample()</a> operation actually does cause the sample to be removed from some <a class="el" href="a00493.html">DataLink</a> queue(s), then the callback will be the data_dropped() variety. If a sample doesn't exist in any queues, then the data_delivered() has already been called, or is in the process of being called when this method was invoked. The point is that the <a class="el" href="a00758.html">TransportSendListener</a> will receive exactly one of the callbacks per sample sent. Returns 0 for success (whether or not the sample was removed). Returns -1 if some fatal error was encountered along the way.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?