a00746.html
来自「opendds 1.2 最新版 面向分布式实时网络编程」· HTML 代码 · 共 1,052 行 · 第 1/5 页
HTML
1,052 行
<!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::TransportImpl 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="a00746.html">TransportImpl</a></div>
<h1>OpenDDS::DCPS::TransportImpl Class Reference</h1><!-- doxytag: class="OpenDDS::DCPS::TransportImpl" --><!-- doxytag: inherits="OpenDDS::DCPS::RcObject< ACE_SYNCH_MUTEX >" --><code>#include <TransportImpl.h></code>
<p>
Inheritance diagram for OpenDDS::DCPS::TransportImpl:<p><center><img src="a02863.png" border="0" usemap="#a02864" alt="Inheritance graph"></center>
<map name="a02864">
<area href="a00656.html" shape="rect" coords="5,156,344,180" alt="">
<area href="a00693.html" shape="rect" coords="368,156,632,180" alt="">
<area href="a00705.html" shape="rect" coords="656,156,1011,180" alt="">
<area href="a00640.html" shape="rect" coords="321,7,679,31" alt="">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for OpenDDS::DCPS::TransportImpl:<p><center><img src="a02865.png" border="0" usemap="#a02866" alt="Collaboration graph"></center>
<map name="a02866">
<area href="a00640.html" shape="rect" coords="227,7,584,31" alt="">
<area href="a00662.html" shape="rect" coords="290,162,522,186" alt="">
<area href="a00639.html" shape="rect" coords="287,210,524,234" alt="">
<area href="a00494.html" shape="rect" coords="267,258,544,282" alt="">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="a00108.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="a00746.html#e756ffd0ae254364e1f51919ee036810">~TransportImpl</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#538fd57d37428341d1fc1a64240ecd7c">configure</a> (<a class="el" href="a00741.html">TransportConfiguration</a> *config)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#83219d07b50f90f0039937e355b12d11">register_publication</a> (<a class="el" href="a00552.html">RepoId</a> pub_id, <a class="el" href="a00509.html">DataWriterImpl</a> *dw)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#5f870f67c199250d9cfb471ff37e3299">unregister_publication</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="a00509.html">DataWriterImpl</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#0f296f24203e8afa27eb67800e1e4b0f">find_publication</a> (<a class="el" href="a00552.html">RepoId</a> pub_id, bool safe_cpy=false)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#593b5c476867e19025dbca02b38b2b6d">register_subscription</a> (<a class="el" href="a00552.html">RepoId</a> sub_id, <a class="el" href="a00498.html">DataReaderImpl</a> *dr)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#8f2ca8a9fe747fed9543a26fc4ab8169">unregister_subscription</a> (<a class="el" href="a00552.html">RepoId</a> sub_id)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00498.html">DataReaderImpl</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#e44e2becdc92b9342c480243bb2290e4">find_subscription</a> (<a class="el" href="a00552.html">RepoId</a> sub_id, bool safe_cpy=false)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#bd9d758e31528c41f3107cb7421ad4c8">demarshal_acks</a> (ACE_Message_Block *acks, bool byte_order)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#8cf6839589a19ed1e22828e9e8622999">acked</a> (<a class="el" href="a00552.html">RepoId</a> pub_id, <a class="el" href="a00552.html">RepoId</a> sub_id)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#257b4a26ec9e32ec6f7ac0e8666c9752">remove_ack</a> (<a class="el" href="a00552.html">RepoId</a> pub_id, <a class="el" href="a00552.html">RepoId</a> sub_id)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#8e8142aff5150408f3b2d4117f2f5fda">release_link_resources</a> (<a class="el" href="a00493.html">DataLink</a> *link)</td></tr>
<tr><td colspan="2"><br><h2>Protected 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="a00746.html#cb37c9c95156eb4c5c8b29d78736508b">ReservationLockType</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef ACE_Guard< <a class="el" href="a00746.html#cb37c9c95156eb4c5c8b29d78736508b">ReservationLockType</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#e628fa54377d3104c4b68df3db5a8c72">ReservationGuardType</a></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="a00746.html#31fb216365924e822df0f2f373ca5134">TransportImpl</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="a00493.html">DataLink</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#024f42725ba0f14b8cd13154d5fa574e">find_or_create_datalink</a> (const <a class="el" href="a00749.html">TransportInterfaceInfo</a> &remote_info, int connect_as_publisher)=0</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#496a72a94a351028ecde95401db1fe44">configure_i</a> (<a class="el" href="a00741.html">TransportConfiguration</a> *config)=0</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#3fa05afd81d1b0eac59b7672b48dc788">shutdown_i</a> ()=0</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#78dd03b0c87823f077e2efc173e648f5">pre_shutdown_i</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#db5d28c5415e480031fee394f6b7e342">connection_info_i</a> (<a class="el" href="a00749.html">TransportInterfaceInfo</a> &local_info) const =0</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#513cce9038ddd9db49730dca313af01a">release_datalink_i</a> (<a class="el" href="a00493.html">DataLink</a> *link)=0</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00752.html">TransportReactorTask</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#9d9d9e8ce9c642a0ee54cef26b392a69">reactor_task</a> ()</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">NOTE: Should only be called if this->lock_ has already been acquired. <a href="#9d9d9e8ce9c642a0ee54cef26b392a69"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00746.html#cb37c9c95156eb4c5c8b29d78736508b">ReservationLockType</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#c8d48f0820c6ee748edeb3f4784443d0">reservation_lock</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="a00746.html#cb37c9c95156eb4c5c8b29d78736508b">ReservationLockType</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#114fa7de851e01e5fb49f8b2399d229d">reservation_lock</a> () const </td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#b008a7a2e70328eee1a925ec0662ae86">add_pending_association</a> (<a class="el" href="a00552.html">RepoId</a> pub_id, size_t num_remote_associations, const <a class="el" href="a00471.html">AssociationData</a> *subs)</td></tr>
<tr><td colspan="2"><br><h2>Private Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::map< void *,<br>
<a class="el" href="a00748.html">TransportInterface</a> * > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#9d93bfa2c69cd521f16ead3d1b3cf6df">InterfaceMapType</a></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="a00746.html#331a2a67ba6614275cc62d2b70f9ab95">LockType</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef ACE_Guard< <a class="el" href="a00746.html#331a2a67ba6614275cc62d2b70f9ab95">LockType</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#baac0d297519eced67fc7f42b0e85961">GuardType</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::map< <a class="el" href="a00552.html">RepoId</a>,<br>
<a class="el" href="a00509.html">DataWriterImpl</a> *, GUID_tKeyLessThan > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#ee1a1945a221eab01dbb6738799924e8">PublicationObjectMap</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::map< <a class="el" href="a00552.html">RepoId</a>,<br>
<a class="el" href="a00498.html">DataReaderImpl</a> *, GUID_tKeyLessThan > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#227ec06dc5a8a84dc2017efeed9341d3">SubscriptionObjectMap</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::map< <a class="el" href="a00552.html">RepoId</a>,<br>
<a class="el" href="a01275.html#9d9ed37cd9b7f69eb632700718c1d794">AssociationInfoList</a> *, GUID_tKeyLessThan > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#054ae3d627f2db3a88017ad80158f0e7">PendingAssociationsMap</a></td></tr>
<tr><td colspan="2"><br><h2>Private Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#afedd68bb6e4db7ee5816558f89e865c">set_reactor</a> (<a class="el" href="a00752.html">TransportReactorTask</a> *task)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#10bd25fe44cd632b034e3db1f7631f3c">shutdown</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#bfda5d606941040b98d794bcb0ba16ac">release_datalink</a> (<a class="el" href="a00493.html">DataLink</a> *link)</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="a00746.html#778e756d684398bbd3949de55d650bc6">attach_interface</a> (<a class="el" href="a00748.html">TransportInterface</a> *transport_interface)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#79763dc04a2d45196d43660676f86301">detach_interface</a> (<a class="el" href="a00748.html">TransportInterface</a> *transport_interface)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00493.html">DataLink</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#a7f4d13a1ae33280ea656daa84892676">reserve_datalink</a> (const <a class="el" href="a00749.html">TransportInterfaceInfo</a> &remote_subscriber_info, <a class="el" href="a00552.html">RepoId</a> subscriber_id, <a class="el" href="a00552.html">RepoId</a> publisher_id, CORBA::Long priority)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00493.html">DataLink</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#15e24f928239c42c4f98ada0c8e142ba">reserve_datalink</a> (const <a class="el" href="a00749.html">TransportInterfaceInfo</a> &remote_publisher_info, <a class="el" href="a00552.html">RepoId</a> publisher_id, <a class="el" href="a00552.html">RepoId</a> subscriber_id, <a class="el" href="a00753.html">TransportReceiveListener</a> *receive_listener, CORBA::Long priority)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#37ae9f4d2e527d3d5ab2067149e8565e">check_fully_association</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#a44d59a8ea2ab78648c182f66a35ebbc">check_fully_association</a> (const <a class="el" href="a00552.html">RepoId</a> pub_id)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#cf839b861eeab762d2780bd4c7983d43">check_fully_association</a> (const <a class="el" href="a00552.html">RepoId</a> pub_id, <a class="el" href="a00472.html">AssociationInfo</a> &associations)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#e73cdc5cda252f9d33c11dd6288abc4d">connection_info</a> (<a class="el" href="a00749.html">TransportInterfaceInfo</a> &local_info) const </td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#6f74ee262e9bb014238efa7720c0c39c">swap_bytes</a> () const </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="a00746.html#ee1a1945a221eab01dbb6738799924e8">PublicationObjectMap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#8df795314a02db1a49a6de4cb39669d2">dw_map_</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00746.html#227ec06dc5a8a84dc2017efeed9341d3">SubscriptionObjectMap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#9a63af84a6beb0bcaf002a0263401a3a">dr_map_</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00746.html#cb37c9c95156eb4c5c8b29d78736508b">ReservationLockType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#7e279b06c86e44f1e3ed80167d9fc896">reservation_lock_</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Our reservation lock. <a href="#7e279b06c86e44f1e3ed80167d9fc896"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00746.html#331a2a67ba6614275cc62d2b70f9ab95">LockType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#ab1e2f3626fd6000cb301f12788541a6">lock_</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00746.html#9d93bfa2c69cd521f16ead3d1b3cf6df">InterfaceMapType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#4485d74f561243d291c231fca74693c3">interfaces_</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00639.html">TransportConfiguration_rch</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#68c8dee189d5e8d24c1b9195443cd2ab">config_</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00639.html">TransportReactorTask_rch</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#7a98e9b8879fe624ae9cb7f72369df79">reactor_task_</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00746.html#054ae3d627f2db3a88017ad80158f0e7">PendingAssociationsMap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#d0c1efa011dae58568a0c63dd0b407da">pending_association_sub_map_</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">These are used by the publisher side. <a href="#d0c1efa011dae58568a0c63dd0b407da"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00662.html">RepoIdSetMap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#1757a40ef07f70c199fefd0a2ef409c4">acked_sub_map_</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Fully association acknowledged map. pubid -> *subid. <a href="#1757a40ef07f70c199fefd0a2ef409c4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00494.html">DataLinkCleanupTask</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#554c189e97e6e457e7546de773c97077">dl_clean_task_</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">smart ptr to the associated DL cleanup task <a href="#554c189e97e6e457e7546de773c97077"></a><br></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="a00746.html#00c8b5ade8308afc4f2eae9b51fb4be1">TransportInterface</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#e1110ed79e9782b5a7a740b05f855a44">TransportImplFactory</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#c8fc1e667d16a9a1fc90bbcf1a772077">TransportFactory</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="a00746.html#bfd4cd141079734944e557822828ad62">DataLink</a></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
The <a class="el" href="a00746.html">TransportImpl</a> class includes the abstract methods that must be implemented by any implementation to provide data delivery service to the <a class="el" href="a01275.html">DCPS</a> implementation. This includes methods to send data, received data, configure the operation, and manage associations and datalinks between local and remote objects of the implementation.<p>
Notes about object ownership: 1)Has longer lifetime than the publisher and subscriber objects. The publishers and subscribers are owned by the DomainParticipant and transport factory shutdown is always after DomainParticipant factory shutdown. 2)The concrete transport object owns the datalink objects. 3)Own a DataLinkCleanup object. 4)Reference to <a class="el" href="a00741.html">TransportConfiguration</a> object and <a class="el" href="a00752.html">TransportReactorTask</a> object owned by <a class="el" href="a00743.html">TransportFactory</a>. 5)During transport shutdown, if this object does not have ownership of an object but has a references via smart pointer then the reference should be freed; if this object has ownership of task objects then the tasks should be closed.
<p>
<hr><h2>Member Typedef Documentation</h2>
<a class="anchor" name="baac0d297519eced67fc7f42b0e85961"></a><!-- doxytag: member="OpenDDS::DCPS::TransportImpl::GuardType" ref="baac0d297519eced67fc7f42b0e85961" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef ACE_Guard<<a class="el" href="a00746.html#331a2a67ba6614275cc62d2b70f9ab95">LockType</a>> <a class="el" href="a00746.html#baac0d297519eced67fc7f42b0e85961">OpenDDS::DCPS::TransportImpl::GuardType</a><code> [private]</code> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<p>
Reimplemented in <a class="el" href="a00693.html#0f21d5d702370bd531d8bb2effd9a109">OpenDDS::DCPS::SimpleTcpTransport</a>, and <a class="el" href="a00705.html#a7069ab83a3f319c90d27431334c3322">OpenDDS::DCPS::SimpleUnreliableDgramTransport</a>.
</div>
</div><p>
<a class="anchor" name="9d93bfa2c69cd521f16ead3d1b3cf6df"></a><!-- doxytag: member="OpenDDS::DCPS::TransportImpl::InterfaceMapType" ref="9d93bfa2c69cd521f16ead3d1b3cf6df" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?