Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > aa937981cccb78f06312e3cc380fe202 > files > 804

OpenSceneGraph-devel-2.8.3-3.fc14.x86_64.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>OpenSceneGraph: osgIntrospection::ExtendedTypeInfo Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.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>
    </ul>
  </div>
  <div class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</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="navpath">
    <ul>
      <li><a class="el" href="a01633.html">osgIntrospection</a>      </li>
      <li><a class="el" href="a00262.html">osgIntrospection::ExtendedTypeInfo</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<h1>osgIntrospection::ExtendedTypeInfo Class Reference</h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="osgIntrospection::ExtendedTypeInfo" -->
<p>This class is a wrapper for std::type_info that also records whether a type is a reference or const reference.  
<a href="#_details">More...</a></p>

<p><a href="a02809.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00262.html#ab110938784a1fc4808ca048c30fe4f39">ExtendedTypeInfo</a> (const std::type_info &amp;ti, bool isReference, bool isConstReference)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00262.html#a50ef696226ad6aafaa4cee39322db026">operator&lt;</a> (const <a class="el" href="a00262.html">ExtendedTypeInfo</a> &amp;other) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Orders <a class="el" href="a00262.html" title="This class is a wrapper for std::type_info that also records whether a type is a reference or const r...">ExtendedTypeInfo</a> based first on std::type_info, then on reference, then on const reference.  <a href="#a50ef696226ad6aafaa4cee39322db026"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00262.html#a340ee5a4f91f28a27d3c4545fd6da3f1">operator==</a> (const <a class="el" href="a00262.html">ExtendedTypeInfo</a> &amp;other) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if *this and other are the same type.  <a href="#a340ee5a4f91f28a27d3c4545fd6da3f1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const std::type_info &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00262.html#a1827b4fdfc5f622ec02a7db7d4aee854">getStdTypeInfo</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the std::type_info object for this type.  <a href="#a1827b4fdfc5f622ec02a7db7d4aee854"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00262.html#a79320f109b3011bfd0ab091c3dfb190b">isReference</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if this type is a reference or const reference.  <a href="#a79320f109b3011bfd0ab091c3dfb190b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00262.html#ac08d60f74fb33eafaff4356c9e1e53e7">isConstReference</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if this type is a const reference.  <a href="#ac08d60f74fb33eafaff4356c9e1e53e7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00262.html#acb172013ea797ddcb1d8fbc5150d4a26">name</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the name of this type, based on the std::type_info name.  <a href="#acb172013ea797ddcb1d8fbc5150d4a26"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>This class is a wrapper for std::type_info that also records whether a type is a reference or const reference. </p>
<p>It permits <a class="el" href="a01633.html" title="The osgIntrospection library provides the an introspection/reflection framework for non intrusive run...">osgIntrospection</a> to make use of reference information that is ignored by typeid(), and to generate reference types based on it. The <a class="el" href="a00262.html" title="This class is a wrapper for std::type_info that also records whether a type is a reference or const r...">ExtendedTypeInfo</a> for a class can be produced via the <a class="el" href="a01418.html#a69d3b209a2c3ba772e79fd9461fdf1d2" title="extended_typeid works like typeid, but returns an ExtendedTypeInfo.">extended_typeid()</a> functions, analogous to typeid(). </p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ab110938784a1fc4808ca048c30fe4f39"></a><!-- doxytag: member="osgIntrospection::ExtendedTypeInfo::ExtendedTypeInfo" ref="ab110938784a1fc4808ca048c30fe4f39" args="(const std::type_info &amp;ti, bool isReference, bool isConstReference)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">osgIntrospection::ExtendedTypeInfo::ExtendedTypeInfo </td>
          <td>(</td>
          <td class="paramtype">const std::type_info &amp;&nbsp;</td>
          <td class="paramname"> <em>ti</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>isReference</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>isConstReference</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a1827b4fdfc5f622ec02a7db7d4aee854"></a><!-- doxytag: member="osgIntrospection::ExtendedTypeInfo::getStdTypeInfo" ref="a1827b4fdfc5f622ec02a7db7d4aee854" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const std::type_info&amp; osgIntrospection::ExtendedTypeInfo::getStdTypeInfo </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Gets the std::type_info object for this type. </p>

<p>Referenced by <a class="el" href="a00940.html#a409e13f0f711fcf41f3d6d1aafa253e4">osgIntrospection::Type::getStdTypeInfo()</a>.</p>

</div>
</div>
<a class="anchor" id="ac08d60f74fb33eafaff4356c9e1e53e7"></a><!-- doxytag: member="osgIntrospection::ExtendedTypeInfo::isConstReference" ref="ac08d60f74fb33eafaff4356c9e1e53e7" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool osgIntrospection::ExtendedTypeInfo::isConstReference </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if this type is a const reference. </p>

</div>
</div>
<a class="anchor" id="a79320f109b3011bfd0ab091c3dfb190b"></a><!-- doxytag: member="osgIntrospection::ExtendedTypeInfo::isReference" ref="a79320f109b3011bfd0ab091c3dfb190b" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool osgIntrospection::ExtendedTypeInfo::isReference </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if this type is a reference or const reference. </p>

</div>
</div>
<a class="anchor" id="acb172013ea797ddcb1d8fbc5150d4a26"></a><!-- doxytag: member="osgIntrospection::ExtendedTypeInfo::name" ref="acb172013ea797ddcb1d8fbc5150d4a26" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::string osgIntrospection::ExtendedTypeInfo::name </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the name of this type, based on the std::type_info name. </p>

</div>
</div>
<a class="anchor" id="a50ef696226ad6aafaa4cee39322db026"></a><!-- doxytag: member="osgIntrospection::ExtendedTypeInfo::operator&lt;" ref="a50ef696226ad6aafaa4cee39322db026" args="(const ExtendedTypeInfo &amp;other) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool osgIntrospection::ExtendedTypeInfo::operator&lt; </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00262.html">ExtendedTypeInfo</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>other</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Orders <a class="el" href="a00262.html" title="This class is a wrapper for std::type_info that also records whether a type is a reference or const r...">ExtendedTypeInfo</a> based first on std::type_info, then on reference, then on const reference. </p>
<p>Note that we can't rely on default pointer comparison for std::type_info because it is not guaranteed that &amp;typeid(T) always returns the same pointer for a given T (thanks Andrew Koenig). </p>

</div>
</div>
<a class="anchor" id="a340ee5a4f91f28a27d3c4545fd6da3f1"></a><!-- doxytag: member="osgIntrospection::ExtendedTypeInfo::operator==" ref="a340ee5a4f91f28a27d3c4545fd6da3f1" args="(const ExtendedTypeInfo &amp;other) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool osgIntrospection::ExtendedTypeInfo::operator== </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00262.html">ExtendedTypeInfo</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>other</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if *this and other are the same type. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>osgIntrospection/<a class="el" href="a01418.html">ExtendedTypeInfo</a></li>
</ul>
</div>
<hr>
<table border="0"><tr><td>
  <img src="osg32-32.png" alt="osg logo" />
</td><td>
  <address><small>Generated at Thu Aug 19 2010 16:22:44 for the <a href="http://www.openscenegraph.org/">OpenSceneGraph</a>
by <a href="http://www.doxygen.org">doxygen</a> 1.7.1.</small></address>
<!-- Dimitri van Heesch's e-mail address removed, lest he get messages on the OpenSceneGraph -->
</td></tr></table>
</body>
</html>