a00748.html
来自「opendds 1.2 最新版 面向分布式实时网络编程」· HTML 代码 · 共 757 行 · 第 1/3 页
HTML
757 行
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>OpenDDS: OpenDDS::DCPS::TransportInterface Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.7 -->
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main Page</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li id="current"><a href="classes.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li><a href="dirs.html"><span>Directories</span></a></li>
<li><a href="pages.html"><span>Related Pages</span></a></li>
<li>
<form action="search.php" method="get">
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td><label> <u>S</u>earch for </label></td>
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
</tr>
</table>
</form>
</li>
</ul></div>
<div class="tabs">
<ul>
<li><a href="classes.html"><span>Alphabetical List</span></a></li>
<li><a href="annotated.html"><span>Class List</span></a></li>
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class Members</span></a></li>
</ul></div>
<div class="nav">
<a class="el" href="a01301.html">OpenDDS</a>::<a class="el" href="a01275.html">DCPS</a>::<a class="el" href="a00748.html">TransportInterface</a></div>
<h1>OpenDDS::DCPS::TransportInterface Class Reference</h1><!-- doxytag: class="OpenDDS::DCPS::TransportInterface" --><code>#include <TransportInterface.h></code>
<p>
Inheritance diagram for OpenDDS::DCPS::TransportInterface:<p><center><img src="a02871.png" border="0" usemap="#a02872" alt="Inheritance graph"></center>
<map name="a02872">
<area href="a00632.html" shape="rect" coords="5,81,232,105" alt="">
<area href="a00710.html" shape="rect" coords="256,81,491,105" alt="">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for OpenDDS::DCPS::TransportInterface:<p><center><img src="a02873.png" border="0" usemap="#a02874" alt="Collaboration graph"></center>
<map name="a02874">
<area href="a00496.html" shape="rect" coords="6,200,251,224" alt="">
<area href="a00639.html" shape="rect" coords="178,148,415,172" alt="">
<area href="a00749.html" shape="rect" coords="399,200,682,224" alt="">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="a00110.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#10ead6c344728d125c0ede6bee52309c">~TransportInterface</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="a00749.html">TransportInterfaceInfo</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#d84088485384efe91e5ecae1cd4b5741">connection_info</a> () const </td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Accessor for the <a class="el" href="a00749.html">TransportInterfaceInfo</a>. <a href="#d84088485384efe91e5ecae1cd4b5741"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#0c6622f1a2271127487491e325e9d04a">swap_bytes</a> () const </td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Accessor for the swap_bytes configuration value. <a href="#0c6622f1a2271127487491e325e9d04a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a01275.html#b4a8ac400b204a2d85c22c8015dbc8de">SendControlStatus</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#aac78747b2a83a129769d646257569fa">send_control</a> (<a class="el" href="a00552.html">RepoId</a> pub_id, <a class="el" href="a00758.html">TransportSendListener</a> *listener, ACE_Message_Block *msg)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#ac8e1da4b0ea3caa551a6f0db152f669">remove_sample</a> (const <a class="el" href="a00506.html">DataSampleListElement</a> *sample, bool dropped_by_transport)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#a1d557842dbee58dd005d1e6021b8ad4">remove_all_control_msgs</a> (<a class="el" href="a00552.html">RepoId</a> pub_id)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a01275.html#f9c05a440ed5e1a2b06b86a0c4459b01">AttachStatus</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#a3cdfed648aa9f41ed98a9bf018e136c">attach_transport</a> (<a class="el" href="a00746.html">TransportImpl</a> *impl)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00639.html">TransportImpl_rch</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#0e689aa6a53b70f455e9af566fc01c7b">get_transport_impl</a> ()</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the <a class="el" href="a00746.html">TransportImpl</a> object reference. <a href="#0e689aa6a53b70f455e9af566fc01c7b"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#cd1b8d3d9d7205de29e38d0ebd7dbbad">TransportInterface</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#a02b467b9a7b602a6527ebfc82b1e711">add_subscriptions</a> (<a class="el" href="a00552.html">RepoId</a> publisher_id, CORBA::Long priority, ssize_t size, const <a class="el" href="a00471.html">AssociationData</a> *subscriptions)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#d198894e763f41e546e8f9234bc0a31e">add_publications</a> (<a class="el" href="a00552.html">RepoId</a> subscriber_id, <a class="el" href="a00753.html">TransportReceiveListener</a> *receive_listener, CORBA::Long priority, ssize_t size, const <a class="el" href="a00471.html">AssociationData</a> *publications)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#22c98044b063e0b9ebdf813d0b580ded">remove_associations</a> (ssize_t size, const <a class="el" href="a00552.html">RepoId</a> *remote_ids, const <a class="el" href="a00552.html">RepoId</a> local_id, const bool pub_side)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#d82f767eca00f34173e486cf23126706">send</a> (const <a class="el" href="a00505.html">DataSampleList</a> &samples)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#20982b01dde8b4fbde18712573db05b3">detach_transport</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#78a0f345804e82f925e23b6099d1906a">transport_detached_i</a> ()</td></tr>
<tr><td colspan="2"><br><h2>Private Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef ACE_SYNCH_MUTEX </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#7f314dc86775f9bf42a4a02f961a5693">LockType</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef ACE_Guard< <a class="el" href="a00748.html#7f314dc86775f9bf42a4a02f961a5693">LockType</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#f31c846c0cd777d436111c84d89b2202">GuardType</a></td></tr>
<tr><td colspan="2"><br><h2>Private Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#3e62ebf7203393caa49d6448234c55f2">transport_detached</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#996261e6d5db4d5b064050f06c6adf39">add_associations</a> (<a class="el" href="a00552.html">RepoId</a> local_id, CORBA::Long priority, const char *local_id_str, const char *remote_id_str, size_t num_remote_associations, const <a class="el" href="a00471.html">AssociationData</a> *remote_associations, <a class="el" href="a00753.html">TransportReceiveListener</a> *receive_listener=0)</td></tr>
<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00748.html#7f314dc86775f9bf42a4a02f961a5693">LockType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#ff3aec9b207aa543ae40bae9c76a3368">lock_</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Used to protect the impl_ data member, and our state_. <a href="#ff3aec9b207aa543ae40bae9c76a3368"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00639.html">TransportImpl_rch</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#b9e7cef37c91bdccf605649c72a7948e">impl_</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00749.html">TransportInterfaceInfo</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#6e8a116657d72f29606397c16e37fc6b">connection_info_</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#fab0a9b2782d5c3ae10a0d08f96cd855">swap_bytes_</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00496.html">DataLinkSetMap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#9f3351f73b982e99a727a10ebe872f33">local_map_</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00496.html">DataLinkSetMap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#d5533af514c227ec9d2cbee680ae091b">remote_map_</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00639.html">DataLinkSet_rch</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#4c8b29503c1b6d96ee4c97bba19de5b5">send_links_</a></td></tr>
<tr><td colspan="2"><br><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="a00748.html#59ab8f680dc74c1ecc57d6412ceb3b6e">TransportImpl</a></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
This class provides the methods that the DSPS components use to call into the <a class="el" href="a01304.html">Transport</a> layer. This is the main mechanism by which the application sends data to subscriptions and manages associations between publications and subscriptions in the service.
<p>
<hr><h2>Member Typedef Documentation</h2>
<a class="anchor" name="f31c846c0cd777d436111c84d89b2202"></a><!-- doxytag: member="OpenDDS::DCPS::TransportInterface::GuardType" ref="f31c846c0cd777d436111c84d89b2202" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef ACE_Guard<<a class="el" href="a00748.html#7f314dc86775f9bf42a4a02f961a5693">LockType</a>> <a class="el" href="a00748.html#f31c846c0cd777d436111c84d89b2202">OpenDDS::DCPS::TransportInterface::GuardType</a><code> [private]</code> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="7f314dc86775f9bf42a4a02f961a5693"></a><!-- doxytag: member="OpenDDS::DCPS::TransportInterface::LockType" ref="7f314dc86775f9bf42a4a02f961a5693" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef ACE_SYNCH_MUTEX <a class="el" href="a00748.html#7f314dc86775f9bf42a4a02f961a5693">OpenDDS::DCPS::TransportInterface::LockType</a><code> [private]</code> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<hr><h2>Constructor & Destructor Documentation</h2>
<a class="anchor" name="10ead6c344728d125c0ede6bee52309c"></a><!-- doxytag: member="OpenDDS::DCPS::TransportInterface::~TransportInterface" ref="10ead6c344728d125c0ede6bee52309c" args="()" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">OpenDDS::DCPS::TransportInterface::~TransportInterface </td>
<td>(</td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"><code> [virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="cd1b8d3d9d7205de29e38d0ebd7dbbad"></a><!-- doxytag: member="OpenDDS::DCPS::TransportInterface::TransportInterface" ref="cd1b8d3d9d7205de29e38d0ebd7dbbad" args="()" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ACE_INLINE OpenDDS::DCPS::TransportInterface::TransportInterface </td>
<td>(</td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"><code> [protected]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="996261e6d5db4d5b064050f06c6adf39"></a><!-- doxytag: member="OpenDDS::DCPS::TransportInterface::add_associations" ref="996261e6d5db4d5b064050f06c6adf39" args="(RepoId local_id, CORBA::Long priority, const char *local_id_str, const char *remote_id_str, size_t num_remote_associations, const AssociationData *remote_associations, TransportReceiveListener *receive_listener=0)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int OpenDDS::DCPS::TransportInterface::add_associations </td>
<td>(</td>
<td class="paramtype"><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">CORBA::Long </td>
<td class="paramname"> <em>priority</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char * </td>
<td class="paramname"> <em>local_id_str</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char * </td>
<td class="paramname"> <em>remote_id_str</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t </td>
<td class="paramname"> <em>num_remote_associations</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>remote_associations</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> = <code>0</code></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>
Generic algorithm used by add_publications and add_subscriptions, with the arguments determining the context (ie, local vs. remote and subscriber vs. publisher).
</div>
</div><p>
<a class="anchor" name="d198894e763f41e546e8f9234bc0a31e"></a><!-- doxytag: member="OpenDDS::DCPS::TransportInterface::add_publications" ref="d198894e763f41e546e8f9234bc0a31e" args="(RepoId subscriber_id, TransportReceiveListener *receive_listener, CORBA::Long priority, ssize_t size, const AssociationData *publications)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?