⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 a00743.html

📁 opendds 1.2 最新版 面向分布式实时网络编程
💻 HTML
📖 第 1 页 / 共 4 页
字号:

<p>
Bind the factory_id-&gt;TransportImplFactory_rch to the impl_type_map_. 
<p>
This method is a bit unusual in regards to the way it treats the impl_factory argument. The caller gives us our own reference, rather than just passing-in their "copy" (which we would normally have to "duplicate" (aka, bump up the reference count) to get our own "copy"). Instead, we assume ownership of the impl_factory object.<p>
This allows a caller to simply invoke this <a class="el" href="a00743.html#9afe6df18d8f801b0cea25a06402aa40">register_factory()</a> method and pass in a "new SomeTransportImplFactory()" object without having to deal with holding/owning its own reference to the impl factory. It's this (non-standard) way because of the expected use pattern. 
</div>
</div><p>
<a class="anchor" name="0e3ea4afc5cc13645e982bce73657f1e"></a><!-- doxytag: member="OpenDDS::DCPS::TransportFactory::register_generator" ref="0e3ea4afc5cc13645e982bce73657f1e" args="(const ACE_TCHAR *name, TransportGenerator *generator)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void OpenDDS::DCPS::TransportFactory::register_generator           </td>
          <td>(</td>
          <td class="paramtype">const ACE_TCHAR *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00744.html">TransportGenerator</a> *&nbsp;</td>
          <td class="paramname"> <em>generator</em></td><td>&nbsp;</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 as the concrete transport library is loaded. The concrete transport library creates a concrete transport generator and register with <a class="el" href="a00743.html">TransportFactory</a> singleton. Special Note: Caller is "giving away" the generator to this <a class="el" href="a00743.html">TransportFactory</a>. 
</div>
</div><p>
<a class="anchor" name="caa50a532e4070252116bb4f05d28383"></a><!-- doxytag: member="OpenDDS::DCPS::TransportFactory::register_simpletcp" ref="caa50a532e4070252116bb4f05d28383" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void OpenDDS::DCPS::TransportFactory::register_simpletcp           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Register the SimpleTcp transport since it's part of the DDSDcps library. 
<p>

</div>
</div><p>
<a class="anchor" name="d0f89b688f86b82854cf89ff761ed1f0"></a><!-- doxytag: member="OpenDDS::DCPS::TransportFactory::release" ref="d0f89b688f86b82854cf89ff761ed1f0" args="(TransportIdType impl_id)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void OpenDDS::DCPS::TransportFactory::release           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a01275.html#3bc80074a988eec5e1def4a3d65906fa">TransportIdType</a>&nbsp;</td>
          <td class="paramname"> <em>impl_id</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This will shutdown just one <a class="el" href="a00746.html">TransportImpl</a> object.<p>
Client Application can call this method to tear down just one <a class="el" href="a00746.html">TransportImpl</a> object. Note that this is effectively an "uncreate()" method. 
</div>
</div><p>
<a class="anchor" name="ceb3681579aed19680c9b7817f829763"></a><!-- doxytag: member="OpenDDS::DCPS::TransportFactory::release" ref="ceb3681579aed19680c9b7817f829763" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void OpenDDS::DCPS::TransportFactory::release           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This will shutdown all <a class="el" href="a00746.html">TransportImpl</a> objects.<p>
Client Application calls this method to tear down the transport framework. 
</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="fc898f0e312b2d50068097cd8e1365c2"></a><!-- doxytag: member="OpenDDS::DCPS::TransportFactory::configuration_map_" ref="fc898f0e312b2d50068097cd8e1365c2" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00743.html#b6276d6c1b47d6a5af06056a85729b57">ConfigurationMap</a> <a class="el" href="a00743.html#fc898f0e312b2d50068097cd8e1365c2">OpenDDS::DCPS::TransportFactory::configuration_map_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The map of the registered configuration information for the transport configured. 
<p>

</div>
</div><p>
<a class="anchor" name="0965f6cffcd7f67264f62906c798e1b5"></a><!-- doxytag: member="OpenDDS::DCPS::TransportFactory::generator_map_" ref="0965f6cffcd7f67264f62906c798e1b5" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00743.html#8b2eeebaf8c188698d619969fa8a8b18">GeneratorMap</a> <a class="el" href="a00743.html#0965f6cffcd7f67264f62906c798e1b5">OpenDDS::DCPS::TransportFactory::generator_map_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The map of registered <a class="el" href="a00744.html">TransportGenerator</a> object from the concrete transport library. 
<p>

</div>
</div><p>
<a class="anchor" name="f3f7182bae21ec014f35d2e00c9bfbf6"></a><!-- doxytag: member="OpenDDS::DCPS::TransportFactory::impl_map_" ref="f3f7182bae21ec014f35d2e00c9bfbf6" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00743.html#0f2f00a4cf52dd316d821550408075fe">ImplMap</a> <a class="el" href="a00743.html#f3f7182bae21ec014f35d2e00c9bfbf6">OpenDDS::DCPS::TransportFactory::impl_map_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The map of <a class="el" href="a00746.html">TransportImpl</a> objects that have been create()'d. 
<p>

</div>
</div><p>
<a class="anchor" name="274750799d321095042450174070ca08"></a><!-- doxytag: member="OpenDDS::DCPS::TransportFactory::impl_type_map_" ref="274750799d321095042450174070ca08" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00743.html#cf2f291521a9b92cbdd612a924828543">ImplTypeMap</a> <a class="el" href="a00743.html#274750799d321095042450174070ca08">OpenDDS::DCPS::TransportFactory::impl_type_map_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The map of registered <a class="el" href="a00747.html">TransportImplFactory</a> objects. 
<p>

</div>
</div><p>
<a class="anchor" name="329d5c5b6e68025aad2d6fbe24fac7cd"></a><!-- doxytag: member="OpenDDS::DCPS::TransportFactory::lock_" ref="329d5c5b6e68025aad2d6fbe24fac7cd" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00743.html#a3a1eaa767bea1323f7159cfbe16aeaa">LockType</a> <a class="el" href="a00743.html#329d5c5b6e68025aad2d6fbe24fac7cd">OpenDDS::DCPS::TransportFactory::lock_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Thread lock used to protect simultaneous access to the maps. 
<p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="a01202.html">TransportFactory.h</a><li><a class="el" href="a01201.html">TransportFactory.cpp</a><li><a class="el" href="a01203.html">TransportFactory.inl</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Fri Nov 7 09:37:44 2008 for OpenDDS by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -