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

📄 a00488.html

📁 opendds 1.2 最新版 面向分布式实时网络编程
💻 HTML
字号:
<!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::Data_Types_Register 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&nbsp;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&nbsp;Pages</span></a></li>
    <li>
      <form action="search.php" method="get">
        <table cellspacing="0" cellpadding="0" border="0">
          <tr>
            <td><label>&nbsp;<u>S</u>earch&nbsp;for&nbsp;</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&nbsp;List</span></a></li>
    <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
    <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
    <li><a href="functions.html"><span>Class&nbsp;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="a00488.html">Data_Types_Register</a></div>
<h1>OpenDDS::DCPS::Data_Types_Register Class Reference</h1><!-- doxytag: class="OpenDDS::DCPS::Data_Types_Register" --><code>#include &lt;Registered_Data_Types.h&gt;</code>
<p>
Collaboration diagram for OpenDDS::DCPS::Data_Types_Register:<p><center><img src="a02711.png" border="0" usemap="#a02712" alt="Collaboration graph"></center>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="a00048.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">::<a class="el" href="a01300.html#baa7bf25feba2f0ef93f32ec32a7bb60">DDS::ReturnCode_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00488.html#25152eca7b0a89dc7bbbe4e81649a5da">register_type</a> (::DDS::DomainParticipant_ptr domain_participant, ACE_CString type_name, OpenDDS::DCPS::TypeSupport_ptr the_type)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">::<a class="el" href="a01300.html#baa7bf25feba2f0ef93f32ec32a7bb60">DDS::ReturnCode_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00488.html#2da9d7d667eabf346abbde1b31c70483">unregister_participant</a> (::DDS::DomainParticipant_ptr domain_participant)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">OpenDDS::DCPS::TypeSupport_ptr&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00488.html#0c36ce0d41f9906e98a90039b1e5b3f8">lookup</a> (::DDS::DomainParticipant_ptr domain_participant, ACE_CString type_name)</td></tr>

<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="a00488.html">Data_Types_Register</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00488.html#e1f3db330ad5130fcb337948353a92e8">instance</a> (void)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return a singleton instance of this class.  <a href="#e1f3db330ad5130fcb337948353a92e8"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Private Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00488.html#61a5f76fcbe83c4ca3f7b7ac7dca336d">Data_Types_Register</a> (void)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00488.html#125593b4c245f50443c748c195d804cd">~Data_Types_Register</a> (void)</td></tr>

<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">ACE_SYNCH_RECURSIVE_MUTEX&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00488.html#6e6e4dfb46ecb4bd5eddd90a615fc069">lock_</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a01275.html#ada5fddff54d51de197e8bd37e390f20">DomainHash</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00488.html#9a0a86f2a5e80efe8632faa699f9cbcd">domains_</a></td></tr>

<tr><td colspan="2"><br><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00488.html#e0f39068cef53f48c4bc78379225095b">TAO_Singleton&lt; Data_Types_Register, TAO_SYNCH_MUTEX &gt;</a></td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
A singleton class that keeps track of the registered <a class="el" href="a01300.html">DDS</a> data types local to this process. Data types are split into separate domains. 
<p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="61a5f76fcbe83c4ca3f7b7ac7dca336d"></a><!-- doxytag: member="OpenDDS::DCPS::Data_Types_Register::Data_Types_Register" ref="61a5f76fcbe83c4ca3f7b7ac7dca336d" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">OpenDDS::DCPS::Data_Types_Register::Data_Types_Register           </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="125593b4c245f50443c748c195d804cd"></a><!-- doxytag: member="OpenDDS::DCPS::Data_Types_Register::~Data_Types_Register" ref="125593b4c245f50443c748c195d804cd" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">OpenDDS::DCPS::Data_Types_Register::~Data_Types_Register           </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="e1f3db330ad5130fcb337948353a92e8"></a><!-- doxytag: member="OpenDDS::DCPS::Data_Types_Register::instance" ref="e1f3db330ad5130fcb337948353a92e8" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00488.html">Data_Types_Register</a> * OpenDDS::DCPS::Data_Types_Register::instance           </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return a singleton instance of this class. 
<p>

</div>
</div><p>
<a class="anchor" name="0c36ce0d41f9906e98a90039b1e5b3f8"></a><!-- doxytag: member="OpenDDS::DCPS::Data_Types_Register::lookup" ref="0c36ce0d41f9906e98a90039b1e5b3f8" args="(::DDS::DomainParticipant_ptr domain_participant, ACE_CString type_name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">OpenDDS::DCPS::TypeSupport_ptr OpenDDS::DCPS::Data_Types_Register::lookup           </td>
          <td>(</td>
          <td class="paramtype">::DDS::DomainParticipant_ptr&nbsp;</td>
          <td class="paramname"> <em>domain_participant</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ACE_CString&nbsp;</td>
          <td class="paramname"> <em>type_name</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>
Find a data type by its type name. <dl compact><dt><b>Note:</b></dt><dd>This class retains Ownership of the memory returned </dd></dl>
<dl compact><dt><b>Returns:</b></dt><dd>a pointer to the memory registered to the type_name Otherwise returns TypeSupport::_nil() </dd></dl>

</div>
</div><p>
<a class="anchor" name="25152eca7b0a89dc7bbbe4e81649a5da"></a><!-- doxytag: member="OpenDDS::DCPS::Data_Types_Register::register_type" ref="25152eca7b0a89dc7bbbe4e81649a5da" args="(::DDS::DomainParticipant_ptr domain_participant, ACE_CString type_name, OpenDDS::DCPS::TypeSupport_ptr the_type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a01300.html#baa7bf25feba2f0ef93f32ec32a7bb60">DDS::ReturnCode_t</a> OpenDDS::DCPS::Data_Types_Register::register_type           </td>
          <td>(</td>
          <td class="paramtype">::DDS::DomainParticipant_ptr&nbsp;</td>
          <td class="paramname"> <em>domain_participant</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ACE_CString&nbsp;</td>
          <td class="paramname"> <em>type_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">OpenDDS::DCPS::TypeSupport_ptr&nbsp;</td>
          <td class="paramname"> <em>the_type</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>
Register a type.<p>
<dl compact><dt><b>Note:</b></dt><dd>This class takes Ownership of the memory pointed to by the_type when this method returns RETCODE_OK It does this by calling _add_ref() on the TypeSupport_ptr</dd></dl>
<dl compact><dt><b>Returns:</b></dt><dd>RETCODE_OK if the type_name is unique to the domain participant or the type_name is already registered to the_type. Otherwise returns RETCODE_ERROR </dd></dl>

</div>
</div><p>
<a class="anchor" name="2da9d7d667eabf346abbde1b31c70483"></a><!-- doxytag: member="OpenDDS::DCPS::Data_Types_Register::unregister_participant" ref="2da9d7d667eabf346abbde1b31c70483" args="(::DDS::DomainParticipant_ptr domain_participant)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a01300.html#baa7bf25feba2f0ef93f32ec32a7bb60">DDS::ReturnCode_t</a> OpenDDS::DCPS::Data_Types_Register::unregister_participant           </td>
          <td>(</td>
          <td class="paramtype">::DDS::DomainParticipant_ptr&nbsp;</td>
          <td class="paramname"> <em>domain_participant</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Friends And Related Function Documentation</h2>
<a class="anchor" name="e0f39068cef53f48c4bc78379225095b"></a><!-- doxytag: member="OpenDDS::DCPS::Data_Types_Register::TAO_Singleton&lt; Data_Types_Register, TAO_SYNCH_MUTEX &gt;" ref="e0f39068cef53f48c4bc78379225095b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">friend class TAO_Singleton&lt; <a class="el" href="a00488.html">Data_Types_Register</a>, TAO_SYNCH_MUTEX &gt;<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="9a0a86f2a5e80efe8632faa699f9cbcd"></a><!-- doxytag: member="OpenDDS::DCPS::Data_Types_Register::domains_" ref="9a0a86f2a5e80efe8632faa699f9cbcd" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a01275.html#ada5fddff54d51de197e8bd37e390f20">DomainHash</a> <a class="el" href="a00488.html#9a0a86f2a5e80efe8632faa699f9cbcd">OpenDDS::DCPS::Data_Types_Register::domains_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="6e6e4dfb46ecb4bd5eddd90a615fc069"></a><!-- doxytag: member="OpenDDS::DCPS::Data_Types_Register::lock_" ref="6e6e4dfb46ecb4bd5eddd90a615fc069" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ACE_SYNCH_RECURSIVE_MUTEX <a class="el" href="a00488.html#6e6e4dfb46ecb4bd5eddd90a615fc069">OpenDDS::DCPS::Data_Types_Register::lock_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="a00999.html">Registered_Data_Types.h</a><li><a class="el" href="a00998.html">Registered_Data_Types.cpp</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Fri Nov 7 09:37:37 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 + -