Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 807a538c0f4abf81467b8a86879881d9 > files > 1173

OpenSceneGraph-devel-2.8.4-2.fc14.i686.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::Reflector&lt; T &gt; Class Template 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.4 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">OpenSceneGraph&#160;<span id="projectnumber">2.8.4</span></div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;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 id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="a01633.html">osgIntrospection</a>      </li>
      <li class="navelem"><a class="el" href="a00631.html">Reflector</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">osgIntrospection::Reflector&lt; T &gt; Class Template Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="osgIntrospection::Reflector" -->
<p>A <a class="el" href="a00631.html" title="A Reflector is a proxy class that is used to create a new description of a given type.">Reflector</a> is a proxy class that is used to create a new description of a given type.  
 <a href="a00631.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for osgIntrospection::Reflector&lt; T &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="a02598.png" border="0" usemap="#osgIntrospection_1_1Reflector_3_01T_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="osgIntrospection_1_1Reflector_3_01T_01_4_inherit__map" id="osgIntrospection_1_1Reflector_3_01T_01_4_inherit__map">
<area shape="rect" id="node3" href="a00001.html" title="This reflector is to be used to describe abstract types that can&#39;t be instantiated." alt="" coords="303,85,655,115"/><area shape="rect" id="node5" href="a00505.html" title="This reflector is to be used to describe types that ought to be created on the heap." alt="" coords="332,139,625,168"/><area shape="rect" id="node7" href="a01056.html" title="This reflector ought to be used to describe types that can be created on the stack." alt="" coords="337,192,620,221"/><area shape="rect" id="node9" href="a00036.html" title="This reflector is a ValueReflector that should be used to define types that can be read and written f..." alt="" coords="711,5,1041,35"/><area shape="rect" id="node11" href="a00252.html" title="This reflector is a ValueReflector that should be used to define enumerations." alt="" coords="733,59,1019,88"/><area shape="rect" id="node13" href="a00825.html" title="This class allows to define the means for reflecting STL containers that cannot be indexed directly..." alt="" coords="729,112,1023,141"/><area shape="rect" id="node15" href="a00826.html" title="This class allows to define the means for reflecting STL associative containers which hold pairs of k..." alt="" coords="727,165,1025,195"/><area shape="rect" id="node17" href="a00827.html" title="osgIntrospection::StdPairReflector\&lt; T \&gt;" alt="" coords="729,219,1023,248"/><area shape="rect" id="node19" href="a00829.html" title="This class allows to define the means for reflecting STL containers such as std::set and std::multise..." alt="" coords="729,272,1023,301"/><area shape="rect" id="node21" href="a00830.html" title="This class allows to define the means for reflecting STL containers such as std::deque and std::vecto..." alt="" coords="719,325,1033,355"/><area shape="rect" id="node23" href="a01103.html" title="osgIntrospection::WAtomicValueReflector\&lt; T \&gt;" alt="" coords="705,379,1047,408"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="a02599.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><b>ConstPtrConstructor</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><b>PtrConstructor</b></td></tr>
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef T&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#a25b9e5e68ab8c93f44b9d11db75cba19">reflected_type</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="a00631.html">Reflector</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#a4a2c4d251a0a6e723ec32b86f23c70e3">inherited</a></td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#a5ee194f192fbecf0a8e039e1abeb87a2">~Reflector</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Virtual destructor.  <a href="#a5ee194f192fbecf0a8e039e1abeb87a2"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#aa6bd470d5d11c78720dddfa982e651a1">Reflector</a> (const std::string &amp;name, const std::string &amp;ns, bool abstract=false)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Direct initialization constructor.  <a href="#aa6bd470d5d11c78720dddfa982e651a1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#adb33ad56d1c9501a00fe35d08a697b6f">Reflector</a> (const std::string &amp;qname, bool abstract=false)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Direct initialization constructor.  <a href="#adb33ad56d1c9501a00fe35d08a697b6f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00940.html">Type</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#a1e945e8ac7517f9c18374865acde2f42">getType</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the <a class="el" href="a00940.html" title="Objects of class Type are used to maintain information about reflected types.">Type</a> object being described.  <a href="#a1e945e8ac7517f9c18374865acde2f42"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#ae0def18cab388074747a5ecf91a8d427">addBaseType</a> (const <a class="el" href="a00940.html">Type</a> &amp;type)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Declares a new base type for the current type.  <a href="#ae0def18cab388074747a5ecf91a8d427"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#ac131391721ab83b14164535e572476fd">setComparator</a> (const <a class="el" href="a00117.html">Comparator</a> *cmp)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the comparator object for the current type.  <a href="#ac131391721ab83b14164535e572476fd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00591.html">PropertyInfo</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#a1166047ebed55d5f6693f0f385566a65">addProperty</a> (<a class="el" href="a00591.html">PropertyInfo</a> *pi)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a property description to the current type.  <a href="#a1166047ebed55d5f6693f0f385566a65"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00468.html">MethodInfo</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#ad3571177bf963015aec9f5eeb0760f3b">addMethod</a> (<a class="el" href="a00468.html">MethodInfo</a> *mi)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a method description to the current type.  <a href="#ad3571177bf963015aec9f5eeb0760f3b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00468.html">MethodInfo</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#af55d42343d35909bb77e751d247525df">addProtectedMethod</a> (<a class="el" href="a00468.html">MethodInfo</a> *mi)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a protected method description to the current type.  <a href="#af55d42343d35909bb77e751d247525df"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#ab41b267b4ba52714fccaab22303ee488">addEnumLabel</a> (int v, const std::string &amp;label, bool strip_namespace=true)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds an enumeration label to the current type.  <a href="#ab41b267b4ba52714fccaab22303ee488"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00144.html">ConstructorInfo</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#ab5ad06235848712aafdcccfacfe4f035">addConstructor</a> (<a class="el" href="a00144.html">ConstructorInfo</a> *ci)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a constructor description to the current type.  <a href="#ab5ad06235848712aafdcccfacfe4f035"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00144.html">ConstructorInfo</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#ac1273cfdd6bc0a9b2b1a87a5e743bf02">addProtectedConstructor</a> (<a class="el" href="a00144.html">ConstructorInfo</a> *ci)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a protected constructor description to the current type.  <a href="#ac1273cfdd6bc0a9b2b1a87a5e743bf02"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#a295c329a35713dce80c558f32012ceee">qualifyName</a> (const std::string &amp;name) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a string containing the qualified version of 'name'.  <a href="#a295c329a35713dce80c558f32012ceee"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00184.html">CustomAttributeProvider</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#a479e4ecaca312ca16531261ec11d5e32">addAttribute</a> (const <a class="el" href="a00183.html">CustomAttribute</a> *attrib)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a custom attribute to the type being described.  <a href="#a479e4ecaca312ca16531261ec11d5e32"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#abe4687db42f4d0a94c411952d8a9ea76">setReaderWriter</a> (const <a class="el" href="a00616.html">ReaderWriter</a> *rw)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the current type's <a class="el" href="a00616.html" title="This is the base class for reader/writer objects.">ReaderWriter</a> object.  <a href="#abe4687db42f4d0a94c411952d8a9ea76"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00631.html#a1738373b3652cda050c10c31b228703a">setDeclaringFile</a> (const std::string &amp;file) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the current type's declaring file.  <a href="#a1738373b3652cda050c10c31b228703a"></a><br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename T&gt;<br/>
class osgIntrospection::Reflector&lt; T &gt;</h3>

<p>A <a class="el" href="a00631.html" title="A Reflector is a proxy class that is used to create a new description of a given type.">Reflector</a> is a proxy class that is used to create a new description of a given type. </p>
<p>If the type to be described is simple and doesn't require additional details such as properties and methods, it can be reflected by simply creating a global instance of one of the classes derived from <a class="el" href="a00631.html" title="A Reflector is a proxy class that is used to create a new description of a given type.">Reflector</a>, for example <a class="el" href="a01056.html" title="This reflector ought to be used to describe types that can be created on the stack.">ValueReflector</a>. Other types may need further information and therefore it could be necessary to create a new subclass of <a class="el" href="a00631.html" title="A Reflector is a proxy class that is used to create a new description of a given type.">Reflector</a> or extend one of the existing subclasses. The reflected type can be set by calling Reflector's protected methods.</p>
<p>NOTE: when you create a <a class="el" href="a00631.html" title="A Reflector is a proxy class that is used to create a new description of a given type.">Reflector</a> for type T, it will automatically create descriptions for types T*, const T*, T&amp;, and const T&amp;. You should NEVER create reflectors for pointer or reference types explicitly. </p>
</div><hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="a4a2c4d251a0a6e723ec32b86f23c70e3"></a><!-- doxytag: member="osgIntrospection::Reflector::inherited" ref="a4a2c4d251a0a6e723ec32b86f23c70e3" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="a00631.html">Reflector</a>&lt;T&gt; <a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::<a class="el" href="a00631.html">inherited</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reimplemented in <a class="el" href="a01056.html#a1289f0d63be495a5105efb7284e5d7c9">osgIntrospection::ValueReflector&lt; T &gt;</a>, <a class="el" href="a00001.html#a6dd242959d8e0c57e85cc598081df4d5">osgIntrospection::AbstractObjectReflector&lt; T &gt;</a>, <a class="el" href="a00505.html#aa69e31c90fde31494ee9a94849fcf0c1">osgIntrospection::ObjectReflector&lt; T &gt;</a>, and <a class="el" href="a00252.html#af3f13fbfa6ffe38c5be1c6777b540e29">osgIntrospection::EnumReflector&lt; T &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a25b9e5e68ab8c93f44b9d11db75cba19"></a><!-- doxytag: member="osgIntrospection::Reflector::reflected_type" ref="a25b9e5e68ab8c93f44b9d11db75cba19" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef T <a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::<a class="el" href="a00631.html#a25b9e5e68ab8c93f44b9d11db75cba19">reflected_type</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a5ee194f192fbecf0a8e039e1abeb87a2"></a><!-- doxytag: member="osgIntrospection::Reflector::~Reflector" ref="a5ee194f192fbecf0a8e039e1abeb87a2" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::~<a class="el" href="a00631.html">Reflector</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Virtual destructor. </p>

</div>
</div>
<a class="anchor" id="aa6bd470d5d11c78720dddfa982e651a1"></a><!-- doxytag: member="osgIntrospection::Reflector::Reflector" ref="aa6bd470d5d11c78720dddfa982e651a1" args="(const std::string &amp;name, const std::string &amp;ns, bool abstract=false)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::<a class="el" href="a00631.html">Reflector</a> </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>ns</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>abstract</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Direct initialization constructor. </p>
<p>Parameter 'name' is the name of the type being reflected and 'ns' is its namespace. </p>

</div>
</div>
<a class="anchor" id="adb33ad56d1c9501a00fe35d08a697b6f"></a><!-- doxytag: member="osgIntrospection::Reflector::Reflector" ref="adb33ad56d1c9501a00fe35d08a697b6f" args="(const std::string &amp;qname, bool abstract=false)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::<a class="el" href="a00631.html">Reflector</a> </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>qname</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>abstract</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Direct initialization constructor. </p>
<p>Parameter 'qname' is the fully-qualified name of the type being reflected, i.e. containing both the namespace and the name (separated by "::"). </p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a479e4ecaca312ca16531261ec11d5e32"></a><!-- doxytag: member="osgIntrospection::Reflector::addAttribute" ref="a479e4ecaca312ca16531261ec11d5e32" args="(const CustomAttribute *attrib)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00184.html">CustomAttributeProvider</a> * <a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::addAttribute </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00183.html">CustomAttribute</a> *&#160;</td>
          <td class="paramname"><em>attrib</em></td><td>)</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds a custom attribute to the type being described. </p>

<p>References <a class="el" href="a00184.html#ac61d519487007f9cc78bc4a7322a0451">osgIntrospection::CustomAttributeProvider::addAttribute()</a>.</p>

</div>
</div>
<a class="anchor" id="ae0def18cab388074747a5ecf91a8d427"></a><!-- doxytag: member="osgIntrospection::Reflector::addBaseType" ref="ae0def18cab388074747a5ecf91a8d427" args="(const Type &amp;type)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::addBaseType </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00940.html">Type</a> &amp;&#160;</td>
          <td class="paramname"><em>type</em></td><td>)</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Declares a new base type for the current type. </p>

</div>
</div>
<a class="anchor" id="ab5ad06235848712aafdcccfacfe4f035"></a><!-- doxytag: member="osgIntrospection::Reflector::addConstructor" ref="ab5ad06235848712aafdcccfacfe4f035" args="(ConstructorInfo *ci)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00144.html">ConstructorInfo</a> * <a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::addConstructor </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00144.html">ConstructorInfo</a> *&#160;</td>
          <td class="paramname"><em>ci</em></td><td>)</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds a constructor description to the current type. </p>
<p>As soon as a constructor is added through this method, the automatically-generated default constructor is removed. </p>

<p>Referenced by <a class="el" href="a00036.html#a777dd2547c04e5cd60827e6f4c681262">osgIntrospection::AtomicValueReflector&lt; T &gt;::AtomicValueReflector()</a>, <a class="el" href="a00252.html#a807d2e5f6aaf0187ef21a4f0c9d9c27d">osgIntrospection::EnumReflector&lt; T &gt;::EnumReflector()</a>, <a class="el" href="a00825.html#ae12f317a9e4e7ba887ae2587556ea4d8">osgIntrospection::StdListReflector&lt; T, VT &gt;::StdListReflector()</a>, <a class="el" href="a00826.html#a3ddc14341d56257a623b742e32074d50">osgIntrospection::StdMapReflector&lt; T, IT, VT &gt;::StdMapReflector()</a>, <a class="el" href="a00827.html#a2bcc0b2086be5fabdf3c98e49b5c8e5c">osgIntrospection::StdPairReflector&lt; T, PT1, PT2 &gt;::StdPairReflector()</a>, <a class="el" href="a00829.html#ab5e47699b231c6ea9be9b7b9288e314f">osgIntrospection::StdSetReflector&lt; T, VT &gt;::StdSetReflector()</a>, <a class="el" href="a00830.html#a8191eb42e349bb63474bb37d0ee80fae">osgIntrospection::StdVectorReflector&lt; T, VT &gt;::StdVectorReflector()</a>, and <a class="el" href="a01103.html#a63dfd4a683b33ce1b16c68db1d335dde">osgIntrospection::WAtomicValueReflector&lt; T &gt;::WAtomicValueReflector()</a>.</p>

</div>
</div>
<a class="anchor" id="ab41b267b4ba52714fccaab22303ee488"></a><!-- doxytag: member="osgIntrospection::Reflector::addEnumLabel" ref="ab41b267b4ba52714fccaab22303ee488" args="(int v, const std::string &amp;label, bool strip_namespace=true)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::addEnumLabel </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>label</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>strip_namespace</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds an enumeration label to the current type. </p>

</div>
</div>
<a class="anchor" id="ad3571177bf963015aec9f5eeb0760f3b"></a><!-- doxytag: member="osgIntrospection::Reflector::addMethod" ref="ad3571177bf963015aec9f5eeb0760f3b" args="(MethodInfo *mi)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00468.html">MethodInfo</a> * <a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::addMethod </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00468.html">MethodInfo</a> *&#160;</td>
          <td class="paramname"><em>mi</em></td><td>)</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds a method description to the current type. </p>

<p>References <a class="el" href="a00468.html#a33cb4878797bb6626fdab6151cee088b">osgIntrospection::MethodInfo::overrides()</a>.</p>

</div>
</div>
<a class="anchor" id="a1166047ebed55d5f6693f0f385566a65"></a><!-- doxytag: member="osgIntrospection::Reflector::addProperty" ref="a1166047ebed55d5f6693f0f385566a65" args="(PropertyInfo *pi)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00591.html">PropertyInfo</a> * <a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::addProperty </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00591.html">PropertyInfo</a> *&#160;</td>
          <td class="paramname"><em>pi</em></td><td>)</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds a property description to the current type. </p>

<p>Referenced by <a class="el" href="a00825.html#ae12f317a9e4e7ba887ae2587556ea4d8">osgIntrospection::StdListReflector&lt; T, VT &gt;::StdListReflector()</a>, <a class="el" href="a00826.html#a3ddc14341d56257a623b742e32074d50">osgIntrospection::StdMapReflector&lt; T, IT, VT &gt;::StdMapReflector()</a>, <a class="el" href="a00827.html#a2bcc0b2086be5fabdf3c98e49b5c8e5c">osgIntrospection::StdPairReflector&lt; T, PT1, PT2 &gt;::StdPairReflector()</a>, <a class="el" href="a00829.html#ab5e47699b231c6ea9be9b7b9288e314f">osgIntrospection::StdSetReflector&lt; T, VT &gt;::StdSetReflector()</a>, and <a class="el" href="a00830.html#a8191eb42e349bb63474bb37d0ee80fae">osgIntrospection::StdVectorReflector&lt; T, VT &gt;::StdVectorReflector()</a>.</p>

</div>
</div>
<a class="anchor" id="ac1273cfdd6bc0a9b2b1a87a5e743bf02"></a><!-- doxytag: member="osgIntrospection::Reflector::addProtectedConstructor" ref="ac1273cfdd6bc0a9b2b1a87a5e743bf02" args="(ConstructorInfo *ci)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00144.html">ConstructorInfo</a> * <a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::addProtectedConstructor </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00144.html">ConstructorInfo</a> *&#160;</td>
          <td class="paramname"><em>ci</em></td><td>)</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds a protected constructor description to the current type. </p>

</div>
</div>
<a class="anchor" id="af55d42343d35909bb77e751d247525df"></a><!-- doxytag: member="osgIntrospection::Reflector::addProtectedMethod" ref="af55d42343d35909bb77e751d247525df" args="(MethodInfo *mi)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00468.html">MethodInfo</a> * <a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::addProtectedMethod </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00468.html">MethodInfo</a> *&#160;</td>
          <td class="paramname"><em>mi</em></td><td>)</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds a protected method description to the current type. </p>

<p>References <a class="el" href="a00468.html#a33cb4878797bb6626fdab6151cee088b">osgIntrospection::MethodInfo::overrides()</a>.</p>

</div>
</div>
<a class="anchor" id="a1e945e8ac7517f9c18374865acde2f42"></a><!-- doxytag: member="osgIntrospection::Reflector::getType" ref="a1e945e8ac7517f9c18374865acde2f42" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00940.html">Type</a>* <a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::getType </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the <a class="el" href="a00940.html" title="Objects of class Type are used to maintain information about reflected types.">Type</a> object being described. </p>

</div>
</div>
<a class="anchor" id="a295c329a35713dce80c558f32012ceee"></a><!-- doxytag: member="osgIntrospection::Reflector::qualifyName" ref="a295c329a35713dce80c558f32012ceee" args="(const std::string &amp;name) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">std::string <a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::qualifyName </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>name</em></td><td>)</td>
          <td> const<code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a string containing the qualified version of 'name'. </p>

</div>
</div>
<a class="anchor" id="ac131391721ab83b14164535e572476fd"></a><!-- doxytag: member="osgIntrospection::Reflector::setComparator" ref="ac131391721ab83b14164535e572476fd" args="(const Comparator *cmp)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::setComparator </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00117.html">Comparator</a> *&#160;</td>
          <td class="paramname"><em>cmp</em></td><td>)</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the comparator object for the current type. </p>

<p>Referenced by <a class="el" href="a00036.html#a777dd2547c04e5cd60827e6f4c681262">osgIntrospection::AtomicValueReflector&lt; T &gt;::AtomicValueReflector()</a>, <a class="el" href="a00252.html#a807d2e5f6aaf0187ef21a4f0c9d9c27d">osgIntrospection::EnumReflector&lt; T &gt;::EnumReflector()</a>, and <a class="el" href="a01103.html#a63dfd4a683b33ce1b16c68db1d335dde">osgIntrospection::WAtomicValueReflector&lt; T &gt;::WAtomicValueReflector()</a>.</p>

</div>
</div>
<a class="anchor" id="a1738373b3652cda050c10c31b228703a"></a><!-- doxytag: member="osgIntrospection::Reflector::setDeclaringFile" ref="a1738373b3652cda050c10c31b228703a" args="(const std::string &amp;file) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::setDeclaringFile </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>file</em></td><td>)</td>
          <td> const<code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the current type's declaring file. </p>

</div>
</div>
<a class="anchor" id="abe4687db42f4d0a94c411952d8a9ea76"></a><!-- doxytag: member="osgIntrospection::Reflector::setReaderWriter" ref="abe4687db42f4d0a94c411952d8a9ea76" args="(const ReaderWriter *rw)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00631.html">osgIntrospection::Reflector</a>&lt; T &gt;::setReaderWriter </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00616.html">ReaderWriter</a> *&#160;</td>
          <td class="paramname"><em>rw</em></td><td>)</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the current type's <a class="el" href="a00616.html" title="This is the base class for reader/writer objects.">ReaderWriter</a> object. </p>

<p>Referenced by <a class="el" href="a00036.html#a777dd2547c04e5cd60827e6f4c681262">osgIntrospection::AtomicValueReflector&lt; T &gt;::AtomicValueReflector()</a>, <a class="el" href="a00252.html#a807d2e5f6aaf0187ef21a4f0c9d9c27d">osgIntrospection::EnumReflector&lt; T &gt;::EnumReflector()</a>, and <a class="el" href="a01103.html#a63dfd4a683b33ce1b16c68db1d335dde">osgIntrospection::WAtomicValueReflector&lt; T &gt;::WAtomicValueReflector()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>osgIntrospection/<a class="el" href="a01426.html">Reflector</a></li>
</ul>
</div>
<hr>
<table border="0"><tr><td>
  <img src="osg32-32.png" alt="osg logo" />
</td><td>
  <address><small>Generated at Tue May 31 2011 04:19:35 for the <a href="http://www.openscenegraph.org/">OpenSceneGraph</a>
by <a href="http://www.doxygen.org">doxygen</a> 1.7.4.</small></address>
<!-- Dimitri van Heesch's e-mail address removed, lest he get messages on the OpenSceneGraph -->
</td></tr></table>
</body>
</html>