Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > by-pkgid > 052d79447130ebaf90b2730395954d11 > files > 262

openvrml-doc-0.18.3-1mdv2010.0.i586.rpm

<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"
               "http://www.w3.org/TR/html4/loose.dtd">

<html>
<head>
<title>OpenVRML: openvrml::node Class Reference</title>
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<link rel="icon" href="../vrml-16">
<link rel="start" href="http://openvrml.org/index" title="OpenVRML Home">
<link rel="prev" href="http://openvrml.org/discussion" title="Discussion">
<link rel="contents" href="index" title="Documentation Main Page">
<link rel="index" href="functions" title="OpenVRML Compound Members">
<link rel="appendix" href="conformance" title="Conformance Test Results">
<style type="text/css">
@import url("tabs.css");
@import url("http://openvrml.org/openvrml.css");

table {
  width: 100%;
}

h2 {
  border-bottom-style: solid;
  border-bottom-width: 1px;
}

/*
 * Doxygen as of 1.5.4-20071217 uses the class "navpath" instead of "nav".
 * For now, we'll do both.
 */

div.nav,
div.navpath {
  background-color: transparent;
  text-align: left;
  margin-top: 1em;
  margin-bottom: 1em;
  border-color: black;
  border-left: none;
  border-right: none;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}

div.nav :link, div.nav :visited,
div.navpath :link, div.navpath :visited {
  border-width: 1px;
  border-style: solid;
  border-color: silver;
  padding: 2px;
}

div.nav :link:hover, div.nav :visited:hover,
div.navpath :link:hover, div.navpath :visited:hover {
  border-style: outset;
  border-color: gray;
}

div.nav :active,
div.navpath :active {
  border-style: inset;
  border-color: gray;
}

.body td {
  background-color: transparent;
}

.el {
  text-decoration: inherit;
  font-weight: inherit
}
.elRef {
  font-weight: inherit
}
.code:link, .code:visited {
  text-decoration: inherit;
  font-weight: inherit;
  color: inherit;
}
.codeRef:link {
  font-weight: normal;
  color: inherit;
}
:visited {
  color: silver;
}
:link:hover {
  color: inherit;
  text-decoration: inherit;
  background-color: transparent;
}

h1 {
  line-height: 1.2em;
}

td.memItemLeft, td.memItemRight,
td.memTemplParams, td.memTemplItemLeft, td.memTemplItemRight,
.memtemplate, .memname td {
  font-family: Consolas, "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Lucida Console", LucidaTypewriter, monospace;
}

td.memItemLeft, td.memItemRight, td.mdescLeft, td.mdescRight {
  background-color: rgb(95%, 95%, 95%);
  border-color: rgb(65%, 65%, 65%);
  border-width: 1px;
  font-size: smaller;
}

.memItemLeft {
  margin-top: 0.5em;
  border-top-style: solid;
}
.mdescLeft {
  border-bottom-style: solid;
}
.memItemRight {
  border-top-style: solid;
  margin-top: 0.5em;
}
.mdescRight {
  border-bottom-style: solid;
}

.mdescRight {
  font-style: italic;
}

.mdTable {
  background-color: rgb(95%, 95%, 95%);
}

.memproto td code {
  font-family: inherit;
  font-style: italic;
}

td.pass {
  background-color: rgb(50%, 100%, 50%);
}

td.fail {
  background-color: rgb(100%, 50%, 50%);
}

td.invalid {
  background-color: rgb(75%, 75%, 75%);
}

.memitem {
  padding: 0;
}

.memitem table {
  width: auto;
}

.memproto, .memdoc {
  border-width: 1px;
  border-color: rgb(65%, 65%, 65%);
}

.memproto {
  background-color: rgb(90%, 90%, 90%);
  font-weight: inherit;
  font-size: smaller;
  border-top-style: solid;
  border-left-style: solid;
  border-right-style: solid;
  -webkit-border-top-left-radius: 0.6em;
  -webkit-border-top-right-radius: 0.6em;
  -moz-border-radius-topleft: 0.6em;
  -moz-border-radius-topright: 0.6em;
}

.memdoc {
  background-color: rgb(95%, 95%, 95%);
  padding: 2px 5px;
  border-style: solid;
  -webkit-border-bottom-left-radius: 0.6em;
  -webkit-border-bottom-right-radius: 0.6em;
  -moz-border-radius-bottomleft: 0.6em;
  -moz-border-radius-bottomright: 0.6em;
}

.memname {
  font-weight: inherit;
}

div.tabs {
  background-image: url("tab_b-openvrml.png");
}

div.tabs span {
  background-image: url("tab_l-openvrml.png");
}

div.tabs a {
  background-image: url("tab_r-openvrml.png");
  border-bottom: 1px solid #a5a5a5;
}

div.tabs a:link, div.tabs a:visited, div.tabs a:active, div.tabs a:hover {
  color: black;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

.note {
  border: 1px solid rgb(65%, 65%, 65%);
  background-color: rgb(95%, 95%, 95%);
  margin-left: 10%;
  margin-right: 10%;
}
</style>
</head>
<body>
<table class="sitenav">
  <tr>
    <th><a href="http://openvrml.org/index" title="Home">Home</a></th>
    <th><a href="http://openvrml.org/download" title="Download">Download</a></th>
    <th><a href="http://openvrml.org/screenshots/index" title="Screen shots">Screen shots</a></th>
    <th><a href="http://openvrml.org/discussion" title="Mailing lists and IRC">Discussion</a></th>
    <th>Documentation</th>
  </tr>
</table>
<div class="body">
<!-- Generated by Doxygen 1.5.8 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <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="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <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="navpath"><a class="el" href="namespaceopenvrml.html">openvrml</a>::<a class="el" href="classopenvrml_1_1node.html">node</a>
  </div>
</div>
<div class="contents">
<h1>openvrml::node Class Reference</h1><!-- doxytag: class="openvrml::node" -->A <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> in the <a class="el" href="classopenvrml_1_1scene.html" title="A scene in the VRML world.">scene</a> graph.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;openvrml/node.h&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for openvrml::node:</div>
<div class="dynsection">
<p><center><img src="classopenvrml_1_1node__inherit__graph.png" border="0" usemap="#openvrml_1_1node__inherit__map" alt="Inheritance graph"></center>
<map name="openvrml_1_1node__inherit__map">
<area shape="rect" href="classopenvrml_1_1appearance__node.html" title="Abstract base class for appearance nodes." alt="" coords="241,139,436,168"><area shape="rect" href="classopenvrml_1_1bounded__volume__node.html" title="Abstract base class for nodes that represent a bounded volume in the scene graph..." alt="" coords="225,192,452,221"><area shape="rect" href="classopenvrml_1_1color__node.html" title="Abstract base class for color nodes." alt="" coords="263,245,415,275"><area shape="rect" href="classopenvrml_1_1color__rgba__node.html" title="Abstract base class for RGBA color nodes." alt="" coords="245,299,432,328"><area shape="rect" href="classopenvrml_1_1coordinate__node.html" title="Abstract base class for coordinate nodes." alt="" coords="245,352,432,381"><area shape="rect" href="classopenvrml_1_1font__style__node.html" title="Abstract base class for font style nodes." alt="" coords="249,405,428,435"><area shape="rect" href="classopenvrml_1_1material__node.html" title="Abstract base class for material nodes." alt="" coords="253,459,424,488"><area shape="rect" href="classopenvrml_1_1node__impl__util_1_1abstract__node.html" title="Abstract base class for node implementations." alt="" coords="172,512,505,541"><area shape="rect" href="classopenvrml_1_1normal__node.html" title="Abstract base class for normal nodes." alt="" coords="257,565,420,595"><area shape="rect" href="classopenvrml_1_1sound__source__node.html" title="Abstract base class for sound source nodes." alt="" coords="235,619,443,648"><area shape="rect" href="classopenvrml_1_1texture__coordinate__node.html" title="Abstract base class for texture coordinate nodes." alt="" coords="223,672,455,701"><area shape="rect" href="classopenvrml_1_1texture__node.html" title="Abstract base class for texture nodes." alt="" coords="257,725,420,755"><area shape="rect" href="classopenvrml_1_1texture__transform__node.html" title="Abstract base class for texture transform nodes." alt="" coords="227,779,451,808"><area shape="rect" href="classopenvrml_1_1time__dependent__node.html" title="Abstract base class for time&#45;dependent nodes." alt="" coords="229,832,448,861"><area shape="rect" href="classopenvrml_1_1child__node.html" title="Abstract base class for child nodes." alt="" coords="571,165,720,195"><area shape="rect" href="classopenvrml_1_1geometry__node.html" title="Abstract base class for geometry nodes." alt="" coords="556,219,735,248"><area shape="rect" href="classopenvrml_1_1background__node.html" title="Abstract base class for background nodes." alt="" coords="820,5,1012,35"><area shape="rect" href="classopenvrml_1_1grouping__node.html" title="Abstract base class for grouping nodes." alt="" coords="829,59,1003,88"><area shape="rect" href="classopenvrml_1_1light__node.html" title="Abstract base class for light nodes." alt="" coords="843,112,989,141"><area shape="rect" href="classopenvrml_1_1navigation__info__node.html" title="Abstract base class for normal nodes." alt="" coords="811,165,1021,195"><area shape="rect" href="classopenvrml_1_1pointing__device__sensor__node.html" title="A node that can be affected by a pointing device." alt="" coords="784,219,1048,248"><area shape="rect" href="classopenvrml_1_1script__node.html" title="Represents a VRML Script node." alt="" coords="840,272,992,301"><area shape="rect" href="classopenvrml_1_1viewpoint__node.html" title="Abstract base class for viewpoint nodes." alt="" coords="827,325,1005,355"><area shape="rect" href="classopenvrml_1_1transform__node.html" title="Abstract base class for transform nodes." alt="" coords="1108,59,1284,88"><area shape="rect" href="classopenvrml_1_1scoped__light__node.html" title="A light that falls within a specified area." alt="" coords="1097,112,1295,141"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>

<p>
<a href="classopenvrml_1_1node-members.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&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#09778987fbf737c00a2d46455fec80f9">~node</a> ()=0  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor.  <a href="#09778987fbf737c00a2d46455fec80f9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#22f7b613098119eac658db2ebb3caf02">add_ref</a> () const   throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Increment the reference count.  <a href="#22f7b613098119eac658db2ebb3caf02"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#c1e2ee9e9d92f264c2265ae473c1c510">remove_ref</a> () const   throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Decrement the reference count.  <a href="#c1e2ee9e9d92f264c2265ae473c1c510"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#3aabc3d93f2dbbfd47454fc2449e86f7">release</a> () const   throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Decrement the reference count; destroy the instance if the count drops to zero.  <a href="#3aabc3d93f2dbbfd47454fc2449e86f7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#29e9a76e98a345caac93079bbd07a60d">use_count</a> () const   throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The number of owning references to the instance.  <a href="#29e9a76e98a345caac93079bbd07a60d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classopenvrml_1_1node__type.html">node_type</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#a48ade3922d3b0418021fb493c95afc6">type</a> () const   throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The type information object for the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code>.  <a href="#a48ade3922d3b0418021fb493c95afc6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const std::string &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#e97fa78196276299919c96e2c1471c4f">id</a> () const   throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieve the name of this <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code>.  <a href="#e97fa78196276299919c96e2c1471c4f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#1690d3858b5327c468f495ddb9e8ed29">id</a> (const std::string &amp;node_id)  throw (  std::bad_alloc  )</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the name of the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code>.  <a href="#1690d3858b5327c468f495ddb9e8ed29"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classopenvrml_1_1scope.html">openvrml::scope</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#6c2a1e88b695405b0afda5881176dc60">scope</a> () const   throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the <code><a class="el" href="classopenvrml_1_1scope.html" title="The scope class keeps track of defined nodes and prototypes.">scope</a></code> to which the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> belongs.  <a href="#6c2a1e88b695405b0afda5881176dc60"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classopenvrml_1_1scene.html">openvrml::scene</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#b1bb8b6845f2c8b72defb04aac22dd94">scene</a> () const   throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the <code><a class="el" href="classopenvrml_1_1scene.html" title="A scene in the VRML world.">scene</a></code> with which the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> is associated.  <a href="#b1bb8b6845f2c8b72defb04aac22dd94"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const std::vector<br class="typebreak">
&lt; boost::intrusive_ptr&lt; <a class="el" href="classopenvrml_1_1node.html">node</a> &gt; &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#cebdf6a973caa9ef32079ef26509c7a8">impl_nodes</a> () const   throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the implementation nodes of a <code>PROTO</code> instance.  <a href="#cebdf6a973caa9ef32079ef26509c7a8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">std::ostream &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#53c57911c0afe22fccbfdc765321a06f">print</a> (std::ostream &amp;out, size_t indent) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pretty print.  <a href="#53c57911c0afe22fccbfdc765321a06f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#c5e034a5117cac82321090b8698e2890">initialize</a> (<a class="el" href="classopenvrml_1_1scene.html">openvrml::scene</a> &amp;<a class="el" href="classopenvrml_1_1scene.html">scene</a>, double timestamp)  throw (  std::bad_alloc  )</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize the <a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a>.  <a href="#c5e034a5117cac82321090b8698e2890"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">std::auto_ptr&lt; <a class="el" href="classopenvrml_1_1field__value.html">field_value</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#4ca0fece3d4c82b5e4f40b0ae30150cf">field</a> (const std::string &amp;id) const   throw (  unsupported_interface  ,   std::bad_alloc  )</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generalized field accessor.  <a href="#4ca0fece3d4c82b5e4f40b0ae30150cf"></a><br></td></tr>
<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4ca0fece3d4c82b5e4f40b0ae30150cf"></a><!-- doxytag: member="openvrml::node::field" ref="4ca0fece3d4c82b5e4f40b0ae30150cf" args="(const std::string &amp;id) const " -->
template&lt;typename FieldValue &gt; </td></tr>
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const FieldValue&nbsp;</td><td class="memTemplItemRight" valign="bottom"><b>field</b> (const std::string &amp;id) const   throw (  unsupported_interface  ,   std::bad_cast  )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classopenvrml_1_1event__listener.html">openvrml::event_listener</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#ecb0c03f4ececc99a30a418bb696baa2">event_listener</a> (const std::string &amp;id)  throw (  unsupported_interface  )</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get an event listener.  <a href="#ecb0c03f4ececc99a30a418bb696baa2"></a><br></td></tr>
<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="bbf8edb98f5c0a1b1ab7c1bd82161761"></a><!-- doxytag: member="openvrml::node::event_listener" ref="bbf8edb98f5c0a1b1ab7c1bd82161761" args="(const std::string &amp;id)" -->
template&lt;typename FieldValue &gt; </td></tr>
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="classopenvrml_1_1field__value__listener.html">field_value_listener</a><br class="typebreak">
&lt; FieldValue &gt; &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><b>event_listener</b> (const std::string &amp;id)  throw (  unsupported_interface  ,   std::bad_cast  )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classopenvrml_1_1event__emitter.html">openvrml::event_emitter</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#3eb387c15add30a1cd2b73da13e0c171">event_emitter</a> (const std::string &amp;id)  throw (  unsupported_interface  )</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get an event emitter.  <a href="#3eb387c15add30a1cd2b73da13e0c171"></a><br></td></tr>
<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="3137970ff7e8271e2dce34510c855244"></a><!-- doxytag: member="openvrml::node::event_emitter" ref="3137970ff7e8271e2dce34510c855244" args="(const std::string &amp;id)" -->
template&lt;typename FieldValue &gt; </td></tr>
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="classopenvrml_1_1field__value__emitter.html">field_value_emitter</a>&lt; FieldValue &gt; &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><b>event_emitter</b> (const std::string &amp;id)  throw (  unsupported_interface  ,   std::bad_cast  )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#6cfc6bbd1a93b2b3fa1ecc6d4ced06a0">shutdown</a> (double timestamp)  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Shut down the <a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a>.  <a href="#6cfc6bbd1a93b2b3fa1ecc6d4ced06a0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#a585cebffd6dd52db6308aaf63a57926">modified</a> () const   throw (  boost::thread_resource_error  )</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determine whether the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> has been modified.  <a href="#a585cebffd6dd52db6308aaf63a57926"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#beec75eba4c3067cece457776390a8ad">modified</a> (bool value)  throw (  boost::thread_resource_error  )</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the modified flag.  <a href="#beec75eba4c3067cece457776390a8ad"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Static Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static const <br class="typebreak">
boost::intrusive_ptr&lt; <a class="el" href="classopenvrml_1_1node.html">node</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#c2f393065a6d6d67a96d0a12780597b6">self_tag</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Special value used when initializing a <code><a class="el" href="classopenvrml_1_1script__node.html" title="Represents a VRML Script node.">script_node</a></code>.  <a href="#c2f393065a6d6d67a96d0a12780597b6"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Protected 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="classopenvrml_1_1node.html#53ff631276e17e8be32bf4d91f61299e">node</a> (const <a class="el" href="classopenvrml_1_1node__type.html">node_type</a> &amp;type, const boost::shared_ptr&lt; <a class="el" href="classopenvrml_1_1scope.html">openvrml::scope</a> &gt; &amp;<a class="el" href="classopenvrml_1_1scope.html">scope</a>)  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct.  <a href="#53ff631276e17e8be32bf4d91f61299e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">boost::shared_mutex &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#e7561cda04597a2bbfaf7d471c226812">scene_mutex</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The <code><a class="el" href="classopenvrml_1_1scene.html" title="A scene in the VRML world.">scene</a></code> mutex.  <a href="#e7561cda04597a2bbfaf7d471c226812"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Static Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#476b23e42701729ca43941668bae2336">emit_event</a> (<a class="el" href="classopenvrml_1_1event__emitter.html">openvrml::event_emitter</a> &amp;emitter, double timestamp)  throw (  std::bad_alloc  )</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Emit an event.  <a href="#476b23e42701729ca43941668bae2336"></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">virtual const std::vector<br class="typebreak">
&lt; boost::intrusive_ptr&lt; <a class="el" href="classopenvrml_1_1node.html">node</a> &gt; &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#b33ea32def01cb96c52a99a8f045890c">do_impl_nodes</a> () const   throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the implementation nodes of a <code>PROTO</code> instance.  <a href="#b33ea32def01cb96c52a99a8f045890c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#71703a9dac002e18054462a7b91bb1ad">do_initialize</a> (double timestamp)  throw (  std::bad_alloc  )</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> subclass-specific initialization.  <a href="#71703a9dac002e18054462a7b91bb1ad"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const <a class="el" href="classopenvrml_1_1field__value.html">field_value</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#776cd5dd0cbc8b73556e4478f9f730c9">do_field</a> (const std::string &amp;id) const =0  throw (  unsupported_interface  )</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called by <code><a class="el" href="classopenvrml_1_1node.html#4ca0fece3d4c82b5e4f40b0ae30150cf" title="Generalized field accessor.">node::field</a></code> to get a <code>field</code>.  <a href="#776cd5dd0cbc8b73556e4478f9f730c9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1event__listener.html">openvrml::event_listener</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#285dc70d8aa3f03fb244e5df0f0de7b9">do_event_listener</a> (const std::string &amp;id)=0  throw (  unsupported_interface  )</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get an event listener.  <a href="#285dc70d8aa3f03fb244e5df0f0de7b9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1event__emitter.html">openvrml::event_emitter</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#5f65f5414aef33769853899bfa0d19d0">do_event_emitter</a> (const std::string &amp;id)=0  throw (  unsupported_interface  )</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get an event emitter.  <a href="#5f65f5414aef33769853899bfa0d19d0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#43aa0cb89810330853eb7861e65dc264">do_shutdown</a> (double timestamp)  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called by <a class="el" href="classopenvrml_1_1node.html#6cfc6bbd1a93b2b3fa1ecc6d4ced06a0" title="Shut down the node.">node::shutdown</a>.  <a href="#43aa0cb89810330853eb7861e65dc264"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#19cf782943f3db93b5160ee04aa7d99a">do_modified</a> () const   throw (  boost::thread_resource_error  )</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determine whether the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> has been modified.  <a href="#19cf782943f3db93b5160ee04aa7d99a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1script__node.html">script_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#ebf02d09562cb2f67fa0044f3e215364">to_script</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1script__node.html" title="Represents a VRML Script node.">script_node</a></code>.  <a href="#ebf02d09562cb2f67fa0044f3e215364"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1appearance__node.html">appearance_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#818e3cba591c8b223b8dbbf3b818bc64">to_appearance</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to an <code><a class="el" href="classopenvrml_1_1appearance__node.html" title="Abstract base class for appearance nodes.">appearance_node</a></code>.  <a href="#818e3cba591c8b223b8dbbf3b818bc64"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1background__node.html">background_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#0c2a4c9bf43f199308b1f70f615d65a1">to_background</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1background__node.html" title="Abstract base class for background nodes.">background_node</a></code>.  <a href="#0c2a4c9bf43f199308b1f70f615d65a1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1bounded__volume__node.html">bounded_volume_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#014b625959047efeb88ce68f709adf81">to_bounded_volume</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1bounded__volume__node.html" title="Abstract base class for nodes that represent a bounded volume in the scene graph...">bounded_volume_node</a></code>.  <a href="#014b625959047efeb88ce68f709adf81"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1child__node.html">child_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#704001cdac36449802ecffcf8e0dde85">to_child</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1child__node.html" title="Abstract base class for child nodes.">child_node</a></code>.  <a href="#704001cdac36449802ecffcf8e0dde85"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1color__node.html">color_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#b0ed555093bfa6895e79c1a87163c311">to_color</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1color__node.html" title="Abstract base class for color nodes.">color_node</a></code>.  <a href="#b0ed555093bfa6895e79c1a87163c311"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1color__rgba__node.html">color_rgba_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#c798142331fb6eebed8e50c08b2b7c27">to_color_rgba</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1color__rgba__node.html" title="Abstract base class for RGBA color nodes.">color_rgba_node</a></code>.  <a href="#c798142331fb6eebed8e50c08b2b7c27"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1coordinate__node.html">coordinate_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#7988f2c28d13752eacb76a77757acbb6">to_coordinate</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1coordinate__node.html" title="Abstract base class for coordinate nodes.">coordinate_node</a></code>.  <a href="#7988f2c28d13752eacb76a77757acbb6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1font__style__node.html">font_style_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#4d961f870aa219e7711a8a4ad2b7b33e">to_font_style</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <a class="el" href="classopenvrml_1_1font__style__node.html" title="Abstract base class for font style nodes.">font_style_node</a>.  <a href="#4d961f870aa219e7711a8a4ad2b7b33e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1geometry__node.html">geometry_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#7a4b611f901ca5f5aa1434b64fc7cf55">to_geometry</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <a class="el" href="classopenvrml_1_1geometry__node.html" title="Abstract base class for geometry nodes.">geometry_node</a>.  <a href="#7a4b611f901ca5f5aa1434b64fc7cf55"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1grouping__node.html">grouping_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#e94315f9b00481924cef7f2686310e3a">to_grouping</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1grouping__node.html" title="Abstract base class for grouping nodes.">grouping_node</a></code>.  <a href="#e94315f9b00481924cef7f2686310e3a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1light__node.html">light_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#469956c28f44d9caa50157179166eaba">to_light</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1light__node.html" title="Abstract base class for light nodes.">light_node</a></code>.  <a href="#469956c28f44d9caa50157179166eaba"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1material__node.html">material_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#3e9e250a81cbc427238d4f6373bf9b76">to_material</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1material__node.html" title="Abstract base class for material nodes.">material_node</a></code>.  <a href="#3e9e250a81cbc427238d4f6373bf9b76"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1navigation__info__node.html">navigation_info_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#f92848291e8cf74b827a1326d6cc4ab4">to_navigation_info</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1navigation__info__node.html" title="Abstract base class for normal nodes.">navigation_info_node</a></code>.  <a href="#f92848291e8cf74b827a1326d6cc4ab4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1normal__node.html">normal_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#d04ff5b9cca253dd7f8da80e2cc5ecf0">to_normal</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1normal__node.html" title="Abstract base class for normal nodes.">normal_node</a></code>.  <a href="#d04ff5b9cca253dd7f8da80e2cc5ecf0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <br class="typebreak">
<a class="el" href="classopenvrml_1_1pointing__device__sensor__node.html">pointing_device_sensor_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#e51027945a617ced6e4e5caaba074a70">to_pointing_device_sensor</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1pointing__device__sensor__node.html" title="A node that can be affected by a pointing device.">pointing_device_sensor_node</a></code>.  <a href="#e51027945a617ced6e4e5caaba074a70"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1scoped__light__node.html">scoped_light_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#2fdf142efa2ca4db29296ad7681acd33">to_scoped_light</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1scoped__light__node.html" title="A light that falls within a specified area.">scoped_light_node</a></code>.  <a href="#2fdf142efa2ca4db29296ad7681acd33"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1sound__source__node.html">sound_source_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#845476362867d18a102c67d6dc90f29d">to_sound_source</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1sound__source__node.html" title="Abstract base class for sound source nodes.">sound_source_node</a></code>.  <a href="#845476362867d18a102c67d6dc90f29d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1texture__node.html">texture_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#3072ddfc42728ff49bd4fd0b716d5c0e">to_texture</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1texture__node.html" title="Abstract base class for texture nodes.">texture_node</a></code>.  <a href="#3072ddfc42728ff49bd4fd0b716d5c0e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1texture__coordinate__node.html">texture_coordinate_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#85c34030b5385c6b3c6b3a0888f6b9d6">to_texture_coordinate</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1texture__coordinate__node.html" title="Abstract base class for texture coordinate nodes.">texture_coordinate_node</a></code>.  <a href="#85c34030b5385c6b3c6b3a0888f6b9d6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1texture__transform__node.html">texture_transform_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#ae4f2d8d2b402792aec966f6a6b2561a">to_texture_transform</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1texture__transform__node.html" title="Abstract base class for texture transform nodes.">texture_transform_node</a></code>.  <a href="#ae4f2d8d2b402792aec966f6a6b2561a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1time__dependent__node.html">time_dependent_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#e2194c968be70971f3fcdeef2d1b9be3">to_time_dependent</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1time__dependent__node.html" title="Abstract base class for time-dependent nodes.">time_dependent_node</a></code>.  <a href="#e2194c968be70971f3fcdeef2d1b9be3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1transform__node.html">transform_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#b0be60558e04e18c8b9507465873a51f">to_transform</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1transform__node.html" title="Abstract base class for transform nodes.">transform_node</a></code>.  <a href="#b0be60558e04e18c8b9507465873a51f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classopenvrml_1_1viewpoint__node.html">viewpoint_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#ffb0adba2ec933849f727edc4eb44e27">to_viewpoint</a> ()  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a <code><a class="el" href="classopenvrml_1_1viewpoint__node.html" title="Abstract base class for viewpoint nodes.">viewpoint_node</a></code>.  <a href="#ffb0adba2ec933849f727edc4eb44e27"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">boost::mutex&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#c1d8416db52555248fee1d89d85f5b6e">ref_count_mutex_</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Mutex to guard <code><a class="el" href="classopenvrml_1_1node.html#f3fcfa6708f5c027e61612749f656d1c" title="The number of owning references to the instance.">ref_count_</a></code>.  <a href="#c1d8416db52555248fee1d89d85f5b6e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#f3fcfa6708f5c027e61612749f656d1c">ref_count_</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The number of owning references to the instance.  <a href="#f3fcfa6708f5c027e61612749f656d1c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classopenvrml_1_1node__type.html">node_type</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#555c1add19cf9f556b3104cd9b3d5e66">type_</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The type information object for the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code>.  <a href="#555c1add19cf9f556b3104cd9b3d5e66"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const boost::shared_ptr<br class="typebreak">
&lt; <a class="el" href="classopenvrml_1_1scope.html">openvrml::scope</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#ed7243d5a87faf95df1d2c7fc31355b0">scope_</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The <code><a class="el" href="classopenvrml_1_1scope.html" title="The scope class keeps track of defined nodes and prototypes.">scope</a></code> to which the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> belongs.  <a href="#ed7243d5a87faf95df1d2c7fc31355b0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">boost::shared_mutex&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#48a9b77c5e32d4785b547aa2986f7ad4">scene_mutex_</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Mutex protecting <code><a class="el" href="classopenvrml_1_1node.html#5ee9baaea2f5ed9c8f2bfe225a443560" title="The scene with which the node is associated.">scene_</a></code>.  <a href="#48a9b77c5e32d4785b547aa2986f7ad4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classopenvrml_1_1scene.html">openvrml::scene</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#5ee9baaea2f5ed9c8f2bfe225a443560">scene_</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The <a class="el" href="classopenvrml_1_1scene.html" title="A scene in the VRML world.">scene</a> with which the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> is associated.  <a href="#5ee9baaea2f5ed9c8f2bfe225a443560"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">boost::shared_mutex&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#fcb5bdd27f68db85ee51cba0b9461a5d">modified_mutex_</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Mutex protecting <code><a class="el" href="classopenvrml_1_1node.html#c93b8f9ea278fbf3dd486c7a971a1549" title="Indicate whether the node has been modified.">modified_</a></code>.  <a href="#fcb5bdd27f68db85ee51cba0b9461a5d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#c93b8f9ea278fbf3dd486c7a971a1549">modified_</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Indicate whether the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> has been modified.  <a href="#c93b8f9ea278fbf3dd486c7a971a1549"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1b91fcffbb217d370aae7e006ef4a69d"></a><!-- doxytag: member="openvrml::node::local::proto_node" ref="1b91fcffbb217d370aae7e006ef4a69d" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><b>local::proto_node</b></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ea5d6e8c166c517c372aef5f3d9db241"></a><!-- doxytag: member="openvrml::node::local::externproto_node" ref="ea5d6e8c166c517c372aef5f3d9db241" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><b>local::externproto_node</b></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#dfbb7e265a0386eb5a89f2b204f51ae9">field_value_listener&lt; sfbool &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfbool.html" title="A boolean node field value.">sfbool</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#dfbb7e265a0386eb5a89f2b204f51ae9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#974b7103ba323929f259e1b701bbed8d">field_value_listener&lt; sfcolor &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfcolor.html" title="A color node field value.">sfcolor</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#974b7103ba323929f259e1b701bbed8d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#3ce645ad39477cc381784b9265fef927">field_value_listener&lt; sfcolorrgba &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfcolorrgba.html" title="A color_rgba node field value.">sfcolorrgba</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#3ce645ad39477cc381784b9265fef927"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#e45f2faba4ffc57d860fc9667b896405">field_value_listener&lt; sffloat &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sffloat.html" title="A single precision floating point node field value.">sffloat</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#e45f2faba4ffc57d860fc9667b896405"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#4f2c57497d5d8e510e6169c936a0a67d">field_value_listener&lt; sfdouble &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfdouble.html" title="A single precision doubleing point node field value.">sfdouble</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#4f2c57497d5d8e510e6169c936a0a67d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#6a133b24ddbebe380ac44bc8c0b8a67a">field_value_listener&lt; sfimage &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfimage.html" title="A pixmap.">sfimage</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#6a133b24ddbebe380ac44bc8c0b8a67a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#50c894cf4916ed2a9fbe123c2fd8249c">field_value_listener&lt; sfint32 &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfint32.html" title="A 32-bit integer node field value.">sfint32</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#50c894cf4916ed2a9fbe123c2fd8249c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#bd9933321d76c1e8f14d812b3c19d4fd">field_value_listener&lt; sfnode &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfnode.html" title="A node field value to hold a single node reference.">sfnode</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#bd9933321d76c1e8f14d812b3c19d4fd"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#1947f0406df962396ba5f3644e2146f7">field_value_listener&lt; sfrotation &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfrotation.html" title="A rotation node field value.">sfrotation</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#1947f0406df962396ba5f3644e2146f7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#05b60ed18d0be95f9ec6ed78709b4188">field_value_listener&lt; sfstring &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfstring.html" title="A string node field value.">sfstring</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#05b60ed18d0be95f9ec6ed78709b4188"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#6f11c55fda24a3edfc0641d107a9b95f">field_value_listener&lt; sftime &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sftime.html" title="A double precision floating point node field value.">sftime</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#6f11c55fda24a3edfc0641d107a9b95f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#823d2524502c05c833f125764414b079">field_value_listener&lt; sfvec2f &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfvec2f.html" title="A 2-component vector node field value.">sfvec2f</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#823d2524502c05c833f125764414b079"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#75eae84e2299a03bd424040e6f55875c">field_value_listener&lt; sfvec2d &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfvec2d.html" title="A 2-component vector node field value.">sfvec2d</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#75eae84e2299a03bd424040e6f55875c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#bfce88f1be42f55024ec301c6c06d710">field_value_listener&lt; sfvec3f &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfvec3f.html" title="A 3-component vector node field value.">sfvec3f</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#bfce88f1be42f55024ec301c6c06d710"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#ae668b74f3c558d1c3a21c9ec369b480">field_value_listener&lt; sfvec3d &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfvec3d.html" title="A 3-component vector node field value.">sfvec3d</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#ae668b74f3c558d1c3a21c9ec369b480"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#cd84ac2a0d9a1bcee5a03a8ce21c0949">field_value_listener&lt; mfbool &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfbool.html" title="A bool array node field value.">mfbool</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#cd84ac2a0d9a1bcee5a03a8ce21c0949"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#cdc2c62bf10e18aa57af7f6025672d95">field_value_listener&lt; mfcolor &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfcolor.html" title="A color array node field value.">mfcolor</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#cdc2c62bf10e18aa57af7f6025672d95"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#d0b21c19678ef50fc24285974dbb172d">field_value_listener&lt; mfcolorrgba &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfcolorrgba.html" title="A color_rgba array node field value.">mfcolorrgba</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#d0b21c19678ef50fc24285974dbb172d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#cb41daf5b26408b87a6e5112f4c9e428">field_value_listener&lt; mffloat &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mffloat.html" title="A float array node field value.">mffloat</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#cb41daf5b26408b87a6e5112f4c9e428"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#71b8e1bf20f5cddf2c698e2cf8c862c1">field_value_listener&lt; mfdouble &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfdouble.html" title="A double array node field value.">mfdouble</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#71b8e1bf20f5cddf2c698e2cf8c862c1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#eeac4810c579450c2c6bedbae6e51bd0">field_value_listener&lt; mfimage &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfimage.html" title="A image array node field value.">mfimage</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#eeac4810c579450c2c6bedbae6e51bd0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#bea42fdd2443e8448a4138723a50390b">field_value_listener&lt; mfint32 &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfint32.html" title="An integer array node field value.">mfint32</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#bea42fdd2443e8448a4138723a50390b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#95d0d6de70760fdc1e0eaa441d8f6dc7">field_value_listener&lt; mfnode &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfnode.html" title="A node reference array node field value.">mfnode</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#95d0d6de70760fdc1e0eaa441d8f6dc7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#970feb37ac5383469ab4666085a1ec7b">field_value_listener&lt; mfrotation &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfrotation.html" title="A rotation array node field value.">mfrotation</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#970feb37ac5383469ab4666085a1ec7b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#f826fc0770205383e6b2c1c8fbf3201e">field_value_listener&lt; mfstring &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfstring.html" title="A string array node field value.">mfstring</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#f826fc0770205383e6b2c1c8fbf3201e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#628a665059f3ae8dbd08fd78f7e0dccb">field_value_listener&lt; mftime &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mftime.html" title="A double array node field value.">mftime</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#628a665059f3ae8dbd08fd78f7e0dccb"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#adaf99d31845690e9ad42e89551f308d">field_value_listener&lt; mfvec2f &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfvec2f.html" title="A 2-component vector array node field value.">mfvec2f</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#adaf99d31845690e9ad42e89551f308d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#d4ec4a56374ef1cf20dcde00511488f3">field_value_listener&lt; mfvec2d &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfvec2d.html" title="A 2-component vector array node field value.">mfvec2d</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#d4ec4a56374ef1cf20dcde00511488f3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#67bd2eff3c2a6e69822d3adad9af6b7d">field_value_listener&lt; mfvec3f &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfvec3f.html" title="A 3-component vector array node field value.">mfvec3f</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#67bd2eff3c2a6e69822d3adad9af6b7d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#69320c193b3de5bbd641c6706d607ea7">field_value_listener&lt; mfvec3d &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfvec3d.html" title="A 3-component vector array node field value.">mfvec3d</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>.  <a href="#69320c193b3de5bbd641c6706d607ea7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#a8ad9f29c4ddd5d92b5b62883bb6234c">exposedfield&lt; sfbool &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfbool.html" title="A boolean node field value.">sfbool</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#a8ad9f29c4ddd5d92b5b62883bb6234c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#bfde2830ce07666d6316ec6f801f2642">exposedfield&lt; sfcolor &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfcolor.html" title="A color node field value.">sfcolor</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#bfde2830ce07666d6316ec6f801f2642"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#7918096eca7b2588832569fab6bdb52b">exposedfield&lt; sfcolorrgba &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfcolorrgba.html" title="A color_rgba node field value.">sfcolorrgba</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#7918096eca7b2588832569fab6bdb52b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#9e27c99b27f3c82c2f42d3a27c5a08ed">exposedfield&lt; sffloat &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sffloat.html" title="A single precision floating point node field value.">sffloat</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#9e27c99b27f3c82c2f42d3a27c5a08ed"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#5fb047c97204546cc1babdd41b55db44">exposedfield&lt; sfdouble &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfdouble.html" title="A single precision doubleing point node field value.">sfdouble</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#5fb047c97204546cc1babdd41b55db44"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#39bbff1fd07dfec617a914ce11314d69">exposedfield&lt; sfimage &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfimage.html" title="A pixmap.">sfimage</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#39bbff1fd07dfec617a914ce11314d69"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#69b3738dd4b8ef2669ea90708f8a1ef1">exposedfield&lt; sfint32 &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfint32.html" title="A 32-bit integer node field value.">sfint32</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#69b3738dd4b8ef2669ea90708f8a1ef1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#70d8ed28b5eed4f012ed6dfc1bbf45e3">exposedfield&lt; sfnode &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfnode.html" title="A node field value to hold a single node reference.">sfnode</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#70d8ed28b5eed4f012ed6dfc1bbf45e3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#27a0729af48aad0f109dc9105009d549">exposedfield&lt; sfrotation &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfrotation.html" title="A rotation node field value.">sfrotation</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#27a0729af48aad0f109dc9105009d549"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#29f74ac6492d9c3ceabc8f691d53dea8">exposedfield&lt; sfstring &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfstring.html" title="A string node field value.">sfstring</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#29f74ac6492d9c3ceabc8f691d53dea8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#2fdd09052701cd0c4d3710c6c23b413b">exposedfield&lt; sftime &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sftime.html" title="A double precision floating point node field value.">sftime</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#2fdd09052701cd0c4d3710c6c23b413b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#2f35926f9d91bdb6ba03250469bdd96c">exposedfield&lt; sfvec2f &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfvec2f.html" title="A 2-component vector node field value.">sfvec2f</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#2f35926f9d91bdb6ba03250469bdd96c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#768b472849a69520d073dc720a62ff78">exposedfield&lt; sfvec2d &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfvec2d.html" title="A 2-component vector node field value.">sfvec2d</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#768b472849a69520d073dc720a62ff78"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#0b86d8879123d0875f6d4251ca821e18">exposedfield&lt; sfvec3f &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfvec3f.html" title="A 3-component vector node field value.">sfvec3f</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#0b86d8879123d0875f6d4251ca821e18"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#70044dd7ca927f2f8eec155c279079eb">exposedfield&lt; sfvec3d &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1sfvec3d.html" title="A 3-component vector node field value.">sfvec3d</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#70044dd7ca927f2f8eec155c279079eb"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#e2c308a918df59841c0de0954d2adfbb">exposedfield&lt; mfbool &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfbool.html" title="A bool array node field value.">mfbool</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#e2c308a918df59841c0de0954d2adfbb"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#5d8ee0a4cf423124e19aaad9116854ed">exposedfield&lt; mfcolor &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfcolor.html" title="A color array node field value.">mfcolor</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#5d8ee0a4cf423124e19aaad9116854ed"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#e6fe0a8923ca473dc3cb64987998de3e">exposedfield&lt; mfcolorrgba &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfcolorrgba.html" title="A color_rgba array node field value.">mfcolorrgba</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#e6fe0a8923ca473dc3cb64987998de3e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#577891033adffc96d56a14291a345e84">exposedfield&lt; mffloat &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mffloat.html" title="A float array node field value.">mffloat</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#577891033adffc96d56a14291a345e84"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#3ccf3d777b0feb896fc77d602ce547f1">exposedfield&lt; mfdouble &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfdouble.html" title="A double array node field value.">mfdouble</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#3ccf3d777b0feb896fc77d602ce547f1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#01bca819d6ef01531f7a991c692f6226">exposedfield&lt; mfimage &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfimage.html" title="A image array node field value.">mfimage</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#01bca819d6ef01531f7a991c692f6226"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#5e6c96fc6fef2c4a0a4af01bf3af834a">exposedfield&lt; mfint32 &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfint32.html" title="An integer array node field value.">mfint32</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#5e6c96fc6fef2c4a0a4af01bf3af834a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#b1e17acf1bb15ee1aa6df89b48cbaad3">exposedfield&lt; mfnode &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfnode.html" title="A node reference array node field value.">mfnode</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#b1e17acf1bb15ee1aa6df89b48cbaad3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#12c9cb94ca57db75d66cd5dc17ec4994">exposedfield&lt; mfrotation &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfrotation.html" title="A rotation array node field value.">mfrotation</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#12c9cb94ca57db75d66cd5dc17ec4994"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#9055c9ed90261a9654bc04ae967a056b">exposedfield&lt; mfstring &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfstring.html" title="A string array node field value.">mfstring</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#9055c9ed90261a9654bc04ae967a056b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#aac6183ee3cfb614b2874fe1129fff4f">exposedfield&lt; mftime &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mftime.html" title="A double array node field value.">mftime</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#aac6183ee3cfb614b2874fe1129fff4f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#8cf4c936ad19a4f41531094d8d692492">exposedfield&lt; mfvec2f &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfvec2f.html" title="A 2-component vector array node field value.">mfvec2f</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#8cf4c936ad19a4f41531094d8d692492"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#7f6e7e79c1c9792527b0210c19372347">exposedfield&lt; mfvec2d &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfvec2d.html" title="A 2-component vector array node field value.">mfvec2d</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#7f6e7e79c1c9792527b0210c19372347"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#f04fa04e967304ced1f52fc62acbc686">exposedfield&lt; mfvec3f &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfvec3f.html" title="A 3-component vector array node field value.">mfvec3f</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#f04fa04e967304ced1f52fc62acbc686"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#902156ee558c22148aef94b4a4c94ddd">exposedfield&lt; mfvec3d &gt;</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code><a class="el" href="classopenvrml_1_1mfvec3d.html" title="A 3-component vector array node field value.">mfvec3d</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>.  <a href="#902156ee558c22148aef94b4a4c94ddd"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">std::ostream &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#32b84401491b015fc8fc71aab1a23619">operator&lt;&lt;</a> (std::ostream &amp;out, const <a class="el" href="classopenvrml_1_1node.html">node</a> &amp;n)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Stream output.  <a href="#32b84401491b015fc8fc71aab1a23619"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classopenvrml_1_1script__node.html">script_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#6fe46827b15b3fdce61b845928ecc058">node_cast</a> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Downcast a <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> to one of the abstract <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> types.  <a href="#6fe46827b15b3fdce61b845928ecc058"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="aef507ff9b1c4971f5c20aa31fc974d9"></a><!-- doxytag: member="openvrml::node::node_cast" ref="aef507ff9b1c4971f5c20aa31fc974d9" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1appearance__node.html">appearance_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a8bb9259d57f2834222bec30f4d3e958"></a><!-- doxytag: member="openvrml::node::node_cast" ref="a8bb9259d57f2834222bec30f4d3e958" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1background__node.html">background_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="73a41d7846c9b9aa9ab8b4653ec0ca17"></a><!-- doxytag: member="openvrml::node::node_cast" ref="73a41d7846c9b9aa9ab8b4653ec0ca17" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1bounded__volume__node.html">bounded_volume_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0d2c6e483a448ffe22fa56a81120b843"></a><!-- doxytag: member="openvrml::node::node_cast" ref="0d2c6e483a448ffe22fa56a81120b843" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1child__node.html">child_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4b01fbf9f8e894268ee9e280ef7083f9"></a><!-- doxytag: member="openvrml::node::node_cast" ref="4b01fbf9f8e894268ee9e280ef7083f9" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1color__node.html">color_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7f3fa783f09667591bb862ec9c778d50"></a><!-- doxytag: member="openvrml::node::node_cast" ref="7f3fa783f09667591bb862ec9c778d50" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1color__rgba__node.html">color_rgba_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3bcf66d7f958c457724664dd278c8466"></a><!-- doxytag: member="openvrml::node::node_cast" ref="3bcf66d7f958c457724664dd278c8466" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1coordinate__node.html">coordinate_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5c4e082a49029eeb349d194a99137ccb"></a><!-- doxytag: member="openvrml::node::node_cast" ref="5c4e082a49029eeb349d194a99137ccb" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1font__style__node.html">font_style_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="afb273c2b8fc3fd35789ff14fe9070d6"></a><!-- doxytag: member="openvrml::node::node_cast" ref="afb273c2b8fc3fd35789ff14fe9070d6" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1geometry__node.html">geometry_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9af02854b856dfd0742319092f69e307"></a><!-- doxytag: member="openvrml::node::node_cast" ref="9af02854b856dfd0742319092f69e307" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1grouping__node.html">grouping_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5a90dd89811fda80346c2350b970f700"></a><!-- doxytag: member="openvrml::node::node_cast" ref="5a90dd89811fda80346c2350b970f700" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1light__node.html">light_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4cd4d1197589d586a2a96dfd4a242128"></a><!-- doxytag: member="openvrml::node::node_cast" ref="4cd4d1197589d586a2a96dfd4a242128" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1material__node.html">material_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="adef94e7117503f6a7347d4cbdfeb194"></a><!-- doxytag: member="openvrml::node::node_cast" ref="adef94e7117503f6a7347d4cbdfeb194" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1navigation__info__node.html">navigation_info_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0777264549e54420a36458c2f4901432"></a><!-- doxytag: member="openvrml::node::node_cast" ref="0777264549e54420a36458c2f4901432" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1normal__node.html">normal_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="637ad0dfd8eb79e69d6cbe73c9a589fd"></a><!-- doxytag: member="openvrml::node::node_cast" ref="637ad0dfd8eb79e69d6cbe73c9a589fd" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1pointing__device__sensor__node.html">pointing_device_sensor_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b45ccfc308a602568d0492502e52bb9e"></a><!-- doxytag: member="openvrml::node::node_cast" ref="b45ccfc308a602568d0492502e52bb9e" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1scoped__light__node.html">scoped_light_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5e44d4d6fb50065a5a452fea48d6d1d7"></a><!-- doxytag: member="openvrml::node::node_cast" ref="5e44d4d6fb50065a5a452fea48d6d1d7" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1sound__source__node.html">sound_source_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b9b9db37dc793425fbb4f0b6efa23f81"></a><!-- doxytag: member="openvrml::node::node_cast" ref="b9b9db37dc793425fbb4f0b6efa23f81" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1texture__node.html">texture_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f830813514afa6796a89b44891c6f683"></a><!-- doxytag: member="openvrml::node::node_cast" ref="f830813514afa6796a89b44891c6f683" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1texture__coordinate__node.html">texture_coordinate_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6732a8b84ea5995b935f62b8f9ef7e00"></a><!-- doxytag: member="openvrml::node::node_cast" ref="6732a8b84ea5995b935f62b8f9ef7e00" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1texture__transform__node.html">texture_transform_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3b645c5bb6d45fa0a44fe44fdb6df9fd"></a><!-- doxytag: member="openvrml::node::node_cast" ref="3b645c5bb6d45fa0a44fe44fdb6df9fd" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1time__dependent__node.html">time_dependent_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f677f5476b20eb7327d7e1124fdb15ee"></a><!-- doxytag: member="openvrml::node::node_cast" ref="f677f5476b20eb7327d7e1124fdb15ee" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1transform__node.html">transform_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cbd88a8cad65fcf01dc6400ff1bb68db"></a><!-- doxytag: member="openvrml::node::node_cast" ref="cbd88a8cad65fcf01dc6400ff1bb68db" args="(node *n)" -->
<a class="el" href="classopenvrml_1_1viewpoint__node.html">viewpoint_node</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>node_cast</b> (<a class="el" href="classopenvrml_1_1node.html">node</a> *n)  throw ()</td></tr>

<tr><td colspan="2"><br><h2>Related Functions</h2></td></tr>
<tr><td colspan="2">(Note that these are not member functions.) <br><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#134ddecb58e87f0167edd1f31a1f1d51">intrusive_ptr_add_ref</a> (const <a class="el" href="classopenvrml_1_1node.html">node</a> *n)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Increment the reference count.  <a href="#134ddecb58e87f0167edd1f31a1f1d51"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#3ee4285411b2fcc3f3c71f55ac05714b">intrusive_ptr_release</a> (const <a class="el" href="classopenvrml_1_1node.html">node</a> *n)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Decrement the reference count.  <a href="#3ee4285411b2fcc3f3c71f55ac05714b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node.html#422110fbc5cce66be41df4a6367e2cbb">is_proto_instance</a> (const <a class="el" href="classopenvrml_1_1node.html">node</a> &amp;n)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether a <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> is a <code>PROTO</code> instance.  <a href="#422110fbc5cce66be41df4a6367e2cbb"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
A <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> in the <a class="el" href="classopenvrml_1_1scene.html" title="A scene in the VRML world.">scene</a> graph. <hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="09778987fbf737c00a2d46455fec80f9"></a><!-- doxytag: member="openvrml::node::~node" ref="09778987fbf737c00a2d46455fec80f9" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">openvrml::node::~node           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Destructor. 
<p>
Remove <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> name (if any) from the <code><a class="el" href="classopenvrml_1_1scope.html" title="The scope class keeps track of defined nodes and prototypes.">scope</a></code>. 
</div>
</div><p>
<a class="anchor" name="53ff631276e17e8be32bf4d91f61299e"></a><!-- doxytag: member="openvrml::node::node" ref="53ff631276e17e8be32bf4d91f61299e" args="(const node_type &amp;type, const boost::shared_ptr&lt; openvrml::scope &gt; &amp;scope)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">openvrml::node::node           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classopenvrml_1_1node__type.html">node_type</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const boost::shared_ptr&lt; <a class="el" href="classopenvrml_1_1scope.html">openvrml::scope</a> &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>scope</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td>  throw ()<code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Construct. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>type</em>&nbsp;</td><td>the <code><a class="el" href="classopenvrml_1_1node__type.html" title="Type information object for nodes.">node_type</a></code> associated with the instance. </td></tr>
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em><a class="el" href="classopenvrml_1_1scope.html" title="The scope class keeps track of defined nodes and prototypes.">scope</a></em>&nbsp;</td><td>the <code><a class="el" href="classopenvrml_1_1scope.html" title="The scope class keeps track of defined nodes and prototypes.">scope</a></code> associated with the instance. </td></tr>
  </table>
</dl>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="22f7b613098119eac658db2ebb3caf02"></a><!-- doxytag: member="openvrml::node::add_ref" ref="22f7b613098119eac658db2ebb3caf02" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void openvrml::node::add_ref           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const  throw ()</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Increment the reference count. 
<p>
Add an owning reference. 
</div>
</div><p>
<a class="anchor" name="c1e2ee9e9d92f264c2265ae473c1c510"></a><!-- doxytag: member="openvrml::node::remove_ref" ref="c1e2ee9e9d92f264c2265ae473c1c510" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void openvrml::node::remove_ref           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const  throw ()<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Decrement the reference count. 
<p>
Remove an owning reference; <b>but do not destroy the instance if the reference count drops to zero</b>. This function should be used with caution. It is really only appropriate when the caller is aware that the reference count may drop to zero but destroying the instance in that case would be inappropriate. In most cases it is appropriate to use <code><a class="el" href="classopenvrml_1_1node.html#3aabc3d93f2dbbfd47454fc2449e86f7" title="Decrement the reference count; destroy the instance if the count drops to zero.">release</a></code>. 
</div>
</div><p>
<a class="anchor" name="3aabc3d93f2dbbfd47454fc2449e86f7"></a><!-- doxytag: member="openvrml::node::release" ref="3aabc3d93f2dbbfd47454fc2449e86f7" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void openvrml::node::release           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const  throw ()</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Decrement the reference count; destroy the instance if the count drops to zero. 
<p>

</div>
</div><p>
<a class="anchor" name="29e9a76e98a345caac93079bbd07a60d"></a><!-- doxytag: member="openvrml::node::use_count" ref="29e9a76e98a345caac93079bbd07a60d" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t openvrml::node::use_count           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const  throw ()</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The number of owning references to the instance. 
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the number of owning references to the instance. </dd></dl>

</div>
</div><p>
<a class="anchor" name="a48ade3922d3b0418021fb493c95afc6"></a><!-- doxytag: member="openvrml::node::type" ref="a48ade3922d3b0418021fb493c95afc6" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classopenvrml_1_1node__type.html">openvrml::node_type</a> &amp; openvrml::node::type           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const  throw ()</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The type information object for the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code>. 
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the type information object for the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code>. </dd></dl>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1navigation__info__node.html#ad0938b59c5fde61b2431caf5ce00473">openvrml::navigation_info_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="e97fa78196276299919c96e2c1471c4f"></a><!-- doxytag: member="openvrml::node::id" ref="e97fa78196276299919c96e2c1471c4f" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const std::string &amp; openvrml::node::id           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const  throw ()</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Retrieve the name of this <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code>. 
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> name. </dd></dl>

</div>
</div><p>
<a class="anchor" name="1690d3858b5327c468f495ddb9e8ed29"></a><!-- doxytag: member="openvrml::node::id" ref="1690d3858b5327c468f495ddb9e8ed29" args="(const std::string &amp;node_id)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void openvrml::node::id           </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>node_id</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw (  std::bad_alloc  )</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set the name of the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code>. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>node_id</em>&nbsp;</td><td>the name for the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code>.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>std::bad_alloc</em>&nbsp;</td><td>if memory allocation fails. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="6c2a1e88b695405b0afda5881176dc60"></a><!-- doxytag: member="openvrml::node::scope" ref="6c2a1e88b695405b0afda5881176dc60" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classopenvrml_1_1scope.html">scope</a> &amp; openvrml::node::scope           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const  throw ()<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the <code><a class="el" href="classopenvrml_1_1scope.html" title="The scope class keeps track of defined nodes and prototypes.">scope</a></code> to which the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> belongs. 
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the <code><a class="el" href="classopenvrml_1_1scope.html" title="The scope class keeps track of defined nodes and prototypes.">scope</a></code> to which the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> belongs.</dd></dl>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a href="http://boost.org/libs/smart_ptr/shared_ptr.htm">http://boost.org/libs/smart_ptr/shared_ptr.htm</a> </dd></dl>

</div>
</div><p>
<a class="anchor" name="b1bb8b6845f2c8b72defb04aac22dd94"></a><!-- doxytag: member="openvrml::node::scene" ref="b1bb8b6845f2c8b72defb04aac22dd94" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1scene.html">openvrml::scene</a> * openvrml::node::scene           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const  throw ()</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the <code><a class="el" href="classopenvrml_1_1scene.html" title="A scene in the VRML world.">scene</a></code> with which the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> is associated. 
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the <code><a class="el" href="classopenvrml_1_1scene.html" title="A scene in the VRML world.">scene</a></code> with which the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> is associated. </dd></dl>

</div>
</div><p>
<a class="anchor" name="cebdf6a973caa9ef32079ef26509c7a8"></a><!-- doxytag: member="openvrml::node::impl_nodes" ref="cebdf6a973caa9ef32079ef26509c7a8" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const std::vector&lt; boost::intrusive_ptr&lt; <a class="el" href="classopenvrml_1_1node.html">openvrml::node</a> &gt; &gt; &amp; openvrml::node::impl_nodes           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const  throw ()</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the implementation nodes of a <code>PROTO</code> instance. 
<p>
If the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> is not a <code>PROTO</code> instance, the returned <code>vector</code> is empty.<p>
This function delegates to <code><a class="el" href="classopenvrml_1_1node.html#b33ea32def01cb96c52a99a8f045890c" title="Get the implementation nodes of a PROTO instance.">do_impl_nodes</a></code>.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the implementation nodes. </dd></dl>

</div>
</div><p>
<a class="anchor" name="53c57911c0afe22fccbfdc765321a06f"></a><!-- doxytag: member="openvrml::node::print" ref="53c57911c0afe22fccbfdc765321a06f" args="(std::ostream &amp;out, size_t indent) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::ostream &amp; openvrml::node::print           </td>
          <td>(</td>
          <td class="paramtype">std::ostream &amp;&nbsp;</td>
          <td class="paramname"> <em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>indent</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Pretty print. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in,out]</tt>&nbsp;</td><td valign="top"><em>out</em>&nbsp;</td><td>output stream. </td></tr>
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>indent</em>&nbsp;</td><td>number of spaces per indentation level.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd><code>out</code>. </dd></dl>

</div>
</div><p>
<a class="anchor" name="c5e034a5117cac82321090b8698e2890"></a><!-- doxytag: member="openvrml::node::initialize" ref="c5e034a5117cac82321090b8698e2890" args="(openvrml::scene &amp;scene, double timestamp)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void openvrml::node::initialize           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classopenvrml_1_1scene.html">openvrml::scene</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>scene</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>timestamp</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td>  throw (  std::bad_alloc  )</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Initialize the <a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a>. 
<p>
This method works recursively, initializing any child nodes to the same <code><a class="el" href="classopenvrml_1_1scene.html" title="A scene in the VRML world.">scene</a></code> and <code>timestamp</code>. If the <a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a> has already been initialized, this method has no effect.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in,out]</tt>&nbsp;</td><td valign="top"><em><a class="el" href="classopenvrml_1_1scene.html" title="A scene in the VRML world.">scene</a></em>&nbsp;</td><td>the <code><a class="el" href="classopenvrml_1_1scene.html" title="A scene in the VRML world.">scene</a></code> to which the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> will belong. </td></tr>
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>timestamp</em>&nbsp;</td><td>the current time.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>std::bad_alloc</em>&nbsp;</td><td>if memory allocation fails.</td></tr>
  </table>
</dl>
<dl class="post" compact><dt><b>Postcondition:</b></dt><dd><em><a class="el" href="classopenvrml_1_1node.html#5ee9baaea2f5ed9c8f2bfe225a443560" title="The scene with which the node is associated.">scene_</a></em> points to <code><a class="el" href="classopenvrml_1_1scene.html" title="A scene in the VRML world.">scene</a></code>. </dd></dl>

</div>
</div><p>
<a class="anchor" name="4ca0fece3d4c82b5e4f40b0ae30150cf"></a><!-- doxytag: member="openvrml::node::field" ref="4ca0fece3d4c82b5e4f40b0ae30150cf" args="(const std::string &amp;id) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const FieldValue openvrml::node::field           </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>id</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const  throw (  <a class="el" href="classopenvrml_1_1unsupported__interface.html">unsupported_interface</a>  ,   std::bad_alloc  )<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Generalized field accessor. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>id</em>&nbsp;</td><td>the name of the field.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the field value.</dd></dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classopenvrml_1_1unsupported__interface.html" title="Exception to indicate that a node interface is not supported.">unsupported_interface</a></em>&nbsp;</td><td>if the <a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a> has no field named <code>id</code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>std::bad_alloc</em>&nbsp;</td><td>if memory allocation fails.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Template Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>FieldValue</em>&nbsp;</td><td>a <a class="el" href="structopenvrml_1_1FieldValueConcept.html">Field Value</a>.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>id</em>&nbsp;</td><td>the name of the <code>field</code>.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the field value.</dd></dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classopenvrml_1_1unsupported__interface.html" title="Exception to indicate that a node interface is not supported.">unsupported_interface</a></em>&nbsp;</td><td>if the <a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a> has no field named <code>id</code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>std::bad_cast</em>&nbsp;</td><td>if the node's <code>id</code> field is not a <code>FieldValue</code>. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="ecb0c03f4ececc99a30a418bb696baa2"></a><!-- doxytag: member="openvrml::node::event_listener" ref="ecb0c03f4ececc99a30a418bb696baa2" args="(const std::string &amp;id)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1field__value__listener.html">field_value_listener</a>&lt; FieldValue &gt; &amp; openvrml::node::event_listener           </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>id</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw (  <a class="el" href="classopenvrml_1_1unsupported__interface.html">unsupported_interface</a>  )<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get an event listener. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>id</em>&nbsp;</td><td>an <code>eventIn</code> identifier.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classopenvrml_1_1unsupported__interface.html" title="Exception to indicate that a node interface is not supported.">unsupported_interface</a></em>&nbsp;</td><td>if the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> has no <code>eventIn</code> <code>id</code>.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Template Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>FieldValue</em>&nbsp;</td><td>a <a class="el" href="structopenvrml_1_1FieldValueConcept.html">Field Value</a>.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>id</em>&nbsp;</td><td>an <code>eventIn</code> identifier.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classopenvrml_1_1unsupported__interface.html" title="Exception to indicate that a node interface is not supported.">unsupported_interface</a></em>&nbsp;</td><td>if the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> has no <code>eventIn</code> <code>id</code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>std::bad_cast</em>&nbsp;</td><td>if the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code>'s <code>id</code> <code>eventIn</code> is not a <code>FieldValue</code>. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="3eb387c15add30a1cd2b73da13e0c171"></a><!-- doxytag: member="openvrml::node::event_emitter" ref="3eb387c15add30a1cd2b73da13e0c171" args="(const std::string &amp;id)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1field__value__emitter.html">field_value_emitter</a>&lt; FieldValue &gt; &amp; openvrml::node::event_emitter           </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>id</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw (  <a class="el" href="classopenvrml_1_1unsupported__interface.html">unsupported_interface</a>  )<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get an event emitter. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>id</em>&nbsp;</td><td>an <code>eventOut</code> identifier.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classopenvrml_1_1unsupported__interface.html" title="Exception to indicate that a node interface is not supported.">unsupported_interface</a></em>&nbsp;</td><td>if the <a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a> has no eventOut <code>id</code>.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Template Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>FieldValue</em>&nbsp;</td><td>a <a class="el" href="structopenvrml_1_1FieldValueConcept.html">Field Value</a>.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>id</em>&nbsp;</td><td>an <code>eventOut</code> identifier.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classopenvrml_1_1unsupported__interface.html" title="Exception to indicate that a node interface is not supported.">unsupported_interface</a></em>&nbsp;</td><td>if the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> has no <code>eventOut</code> <code>id</code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>std::bad_cast</em>&nbsp;</td><td>if the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code>'s <code>id</code> <code>eventOut</code> is not a <code>FieldValue</code>. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="6cfc6bbd1a93b2b3fa1ecc6d4ced06a0"></a><!-- doxytag: member="openvrml::node::shutdown" ref="6cfc6bbd1a93b2b3fa1ecc6d4ced06a0" args="(double timestamp)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void openvrml::node::shutdown           </td>
          <td>(</td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>timestamp</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Shut down the <a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a>. 
<p>
This method works recursively, shutting down any child <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a>s</code>. If the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> has already been shut down, this method has no effect.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>timestamp</em>&nbsp;</td><td>the current time.</td></tr>
  </table>
</dl>
<dl class="post" compact><dt><b>Postcondition:</b></dt><dd><em><a class="el" href="classopenvrml_1_1scene.html" title="A scene in the VRML world.">scene</a></em> is 0. </dd></dl>

</div>
</div><p>
<a class="anchor" name="a585cebffd6dd52db6308aaf63a57926"></a><!-- doxytag: member="openvrml::node::modified" ref="a585cebffd6dd52db6308aaf63a57926" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool openvrml::node::modified           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const  throw (  boost::thread_resource_error  )</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Determine whether the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> has been modified. 
<p>
The default implementation returns whether this <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> has been modified. Subclasses that can have child <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a>s</code> should override this method and return <code>true</code> if any of their children have been modified.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd><code>true</code> if the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> has been modified; <code>false</code> otherwise.</dd></dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>boost::thread_resource_error</em>&nbsp;</td><td>if <code><a class="el" href="classopenvrml_1_1node.html#fcb5bdd27f68db85ee51cba0b9461a5d" title="Mutex protecting modified_.">modified_mutex_</a></code> cannot be locked. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="beec75eba4c3067cece457776390a8ad"></a><!-- doxytag: member="openvrml::node::modified" ref="beec75eba4c3067cece457776390a8ad" args="(bool value)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void openvrml::node::modified           </td>
          <td>(</td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>value</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw (  boost::thread_resource_error  )</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set the modified flag. 
<p>
Indicates the <a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a> needs to be revisited for rendering.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>value</em>&nbsp;</td><td></td></tr>
  </table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>boost::thread_resource_error</em>&nbsp;</td><td>if <code><a class="el" href="classopenvrml_1_1node.html#fcb5bdd27f68db85ee51cba0b9461a5d" title="Mutex protecting modified_.">modified_mutex_</a></code> cannot be locked. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="476b23e42701729ca43941668bae2336"></a><!-- doxytag: member="openvrml::node::emit_event" ref="476b23e42701729ca43941668bae2336" args="(openvrml::event_emitter &amp;emitter, double timestamp)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void openvrml::node::emit_event           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classopenvrml_1_1event__emitter.html">openvrml::event_emitter</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>emitter</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>timestamp</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td>  throw (  std::bad_alloc  )<code> [static, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Emit an event. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in,out]</tt>&nbsp;</td><td valign="top"><em>emitter</em>&nbsp;</td><td>an <code><a class="el" href="classopenvrml_1_1event__emitter.html" title="Abstract base class of event emitters.">event_emitter</a></code>. </td></tr>
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>timestamp</em>&nbsp;</td><td>the current time.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>std::bad_alloc</em>&nbsp;</td><td>if memory allocation fails. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="e7561cda04597a2bbfaf7d471c226812"></a><!-- doxytag: member="openvrml::node::scene_mutex" ref="e7561cda04597a2bbfaf7d471c226812" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">boost::shared_mutex &amp; openvrml::node::scene_mutex           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The <code><a class="el" href="classopenvrml_1_1scene.html" title="A scene in the VRML world.">scene</a></code> mutex. 
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the <code><a class="el" href="classopenvrml_1_1scene.html" title="A scene in the VRML world.">scene</a></code> mutex. </dd></dl>

</div>
</div><p>
<a class="anchor" name="b33ea32def01cb96c52a99a8f045890c"></a><!-- doxytag: member="openvrml::node::do_impl_nodes" ref="b33ea32def01cb96c52a99a8f045890c" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const std::vector&lt; boost::intrusive_ptr&lt; <a class="el" href="classopenvrml_1_1node.html">openvrml::node</a> &gt; &gt; &amp; openvrml::node::do_impl_nodes           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the implementation nodes of a <code>PROTO</code> instance. 
<p>
This default implementation returns an empty <code>vector</code>.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>an empty <code>vector</code>. </dd></dl>

</div>
</div><p>
<a class="anchor" name="71703a9dac002e18054462a7b91bb1ad"></a><!-- doxytag: member="openvrml::node::do_initialize" ref="71703a9dac002e18054462a7b91bb1ad" args="(double timestamp)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void openvrml::node::do_initialize           </td>
          <td>(</td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>timestamp</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw (  std::bad_alloc  )<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> subclass-specific initialization. 
<p>
This method is called by <code><a class="el" href="classopenvrml_1_1node.html#c5e034a5117cac82321090b8698e2890" title="Initialize the node.">initialize</a></code>. Subclasses of <a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a> should override this method for any subclass-specific initialization.<p>
The default implementation of this method does nothing.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>timestamp</em>&nbsp;</td><td>the current time.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>std::bad_alloc</em>&nbsp;</td><td>if memory allocation fails. </td></tr>
  </table>
</dl>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1script__node.html#42e879355f5f4b6a3718ffbde4bcf557">openvrml::script_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="776cd5dd0cbc8b73556e4478f9f730c9"></a><!-- doxytag: member="openvrml::node::do_field" ref="776cd5dd0cbc8b73556e4478f9f730c9" args="(const std::string &amp;id) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classopenvrml_1_1field__value.html">openvrml::field_value</a> &amp; openvrml::node::do_field           </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>id</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const  throw (  <a class="el" href="classopenvrml_1_1unsupported__interface.html">unsupported_interface</a>  )<code> [private, pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Called by <code><a class="el" href="classopenvrml_1_1node.html#4ca0fece3d4c82b5e4f40b0ae30150cf" title="Generalized field accessor.">node::field</a></code> to get a <code>field</code>. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>id</em>&nbsp;</td><td>field identifier.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the field value.</dd></dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classopenvrml_1_1unsupported__interface.html" title="Exception to indicate that a node interface is not supported.">unsupported_interface</a></em>&nbsp;</td><td>if the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> has no <code>field</code> <code>id</code>. </td></tr>
  </table>
</dl>

<p>Implemented in <a class="el" href="classopenvrml_1_1node__impl__util_1_1abstract__node.html#d85bfe1f1286a2b3d42cb6b8930525af">openvrml::node_impl_util::abstract_node&lt; Derived &gt;</a>, and <a class="el" href="classopenvrml_1_1script__node.html#5f5135c7b9858fc7b1f16112a839bd0a">openvrml::script_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="285dc70d8aa3f03fb244e5df0f0de7b9"></a><!-- doxytag: member="openvrml::node::do_event_listener" ref="285dc70d8aa3f03fb244e5df0f0de7b9" args="(const std::string &amp;id)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1event__listener.html">openvrml::event_listener</a> &amp; openvrml::node::do_event_listener           </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>id</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw (  <a class="el" href="classopenvrml_1_1unsupported__interface.html">unsupported_interface</a>  )<code> [private, pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get an event listener. 
<p>
This method is called by <code><a class="el" href="classopenvrml_1_1node.html#ecb0c03f4ececc99a30a418bb696baa2" title="Get an event listener.">event_listener</a></code>. Subclasses must implement this method.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>id</em>&nbsp;</td><td><code>eventIn</code> identifier.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the event listener.</dd></dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classopenvrml_1_1unsupported__interface.html" title="Exception to indicate that a node interface is not supported.">unsupported_interface</a></em>&nbsp;</td><td>if the <a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a> has no <code>eventIn</code> <code>id</code>. </td></tr>
  </table>
</dl>

<p>Implemented in <a class="el" href="classopenvrml_1_1node__impl__util_1_1abstract__node.html#df2ae84b8084dd5e7266939ee3b05263">openvrml::node_impl_util::abstract_node&lt; Derived &gt;</a>, and <a class="el" href="classopenvrml_1_1script__node.html#a98c40760c62938c6239a6ec23654e37">openvrml::script_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="5f65f5414aef33769853899bfa0d19d0"></a><!-- doxytag: member="openvrml::node::do_event_emitter" ref="5f65f5414aef33769853899bfa0d19d0" args="(const std::string &amp;id)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1event__emitter.html">openvrml::event_emitter</a> &amp; openvrml::node::do_event_emitter           </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>id</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw (  <a class="el" href="classopenvrml_1_1unsupported__interface.html">unsupported_interface</a>  )<code> [private, pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get an event emitter. 
<p>
This method is called by <code><a class="el" href="classopenvrml_1_1node.html#3eb387c15add30a1cd2b73da13e0c171" title="Get an event emitter.">event_emitter</a></code>. Subclasses must implement this method.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>id</em>&nbsp;</td><td><code>eventOut</code> identifier.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the event emitter.</dd></dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classopenvrml_1_1unsupported__interface.html" title="Exception to indicate that a node interface is not supported.">unsupported_interface</a></em>&nbsp;</td><td>if the <a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a> has no <code>eventOut</code> <code>id</code>. </td></tr>
  </table>
</dl>

<p>Implemented in <a class="el" href="classopenvrml_1_1node__impl__util_1_1abstract__node.html#c0c5a776c104026c9b08169082d6d52c">openvrml::node_impl_util::abstract_node&lt; Derived &gt;</a>, and <a class="el" href="classopenvrml_1_1script__node.html#14a872f7d7809cb7fb3e09301eba540f">openvrml::script_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="43aa0cb89810330853eb7861e65dc264"></a><!-- doxytag: member="openvrml::node::do_shutdown" ref="43aa0cb89810330853eb7861e65dc264" args="(double timestamp)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void openvrml::node::do_shutdown           </td>
          <td>(</td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>timestamp</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Called by <a class="el" href="classopenvrml_1_1node.html#6cfc6bbd1a93b2b3fa1ecc6d4ced06a0" title="Shut down the node.">node::shutdown</a>. 
<p>
<code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> subclass-specific shut down.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>timestamp</em>&nbsp;</td><td>the current time.</td></tr>
  </table>
</dl>
This method is called by <code><a class="el" href="classopenvrml_1_1node.html#6cfc6bbd1a93b2b3fa1ecc6d4ced06a0" title="Shut down the node.">shutdown</a></code>. Subclasses of <a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a> should override this method for any subclass-specific shut down. Note that this method cannot throw.<p>
The default implementation of this method does nothing.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>timestamp</em>&nbsp;</td><td>the current time. </td></tr>
  </table>
</dl>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1script__node.html#11e5cd2f00ac2ed41b27a34a18362557">openvrml::script_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="19cf782943f3db93b5160ee04aa7d99a"></a><!-- doxytag: member="openvrml::node::do_modified" ref="19cf782943f3db93b5160ee04aa7d99a" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool openvrml::node::do_modified           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const  throw (  boost::thread_resource_error  )<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Determine whether the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> has been modified. 
<p>
The default implementation returns <code>false</code>. Subclasses that can have child <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a>s</code> should override this method and return <code>true</code> if any of their children has been modified.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd><code>false</code>.</dd></dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>boost::thread_resource_error</em>&nbsp;</td><td>if a mutex cannot be locked. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="ebf02d09562cb2f67fa0044f3e215364"></a><!-- doxytag: member="openvrml::node::to_script" ref="ebf02d09562cb2f67fa0044f3e215364" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1script__node.html">openvrml::script_node</a> * openvrml::node::to_script           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1script__node.html" title="Represents a VRML Script node.">script_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1script__node.html#8634984941c3ecb30abed7992c139eda">openvrml::script_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="818e3cba591c8b223b8dbbf3b818bc64"></a><!-- doxytag: member="openvrml::node::to_appearance" ref="818e3cba591c8b223b8dbbf3b818bc64" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1appearance__node.html">openvrml::appearance_node</a> * openvrml::node::to_appearance           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to an <code><a class="el" href="classopenvrml_1_1appearance__node.html" title="Abstract base class for appearance nodes.">appearance_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1appearance__node.html#d8e0fa1d5c5e44c4418da0b6da39ed03">openvrml::appearance_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="0c2a4c9bf43f199308b1f70f615d65a1"></a><!-- doxytag: member="openvrml::node::to_background" ref="0c2a4c9bf43f199308b1f70f615d65a1" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1background__node.html">openvrml::background_node</a> * openvrml::node::to_background           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1background__node.html" title="Abstract base class for background nodes.">background_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1background__node.html#b49f3a87550316d16d39b2b124eb83a7">openvrml::background_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="014b625959047efeb88ce68f709adf81"></a><!-- doxytag: member="openvrml::node::to_bounded_volume" ref="014b625959047efeb88ce68f709adf81" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1bounded__volume__node.html">openvrml::bounded_volume_node</a> * openvrml::node::to_bounded_volume           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1bounded__volume__node.html" title="Abstract base class for nodes that represent a bounded volume in the scene graph...">bounded_volume_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1bounded__volume__node.html#c770ab88c7c9733317abdd575a75d4c5">openvrml::bounded_volume_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="704001cdac36449802ecffcf8e0dde85"></a><!-- doxytag: member="openvrml::node::to_child" ref="704001cdac36449802ecffcf8e0dde85" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1child__node.html">openvrml::child_node</a> * openvrml::node::to_child           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1child__node.html" title="Abstract base class for child nodes.">child_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1child__node.html#e2d0c82964e47ed34f3a26be6a6ec3be">openvrml::child_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="b0ed555093bfa6895e79c1a87163c311"></a><!-- doxytag: member="openvrml::node::to_color" ref="b0ed555093bfa6895e79c1a87163c311" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1color__node.html">openvrml::color_node</a> * openvrml::node::to_color           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1color__node.html" title="Abstract base class for color nodes.">color_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1color__node.html#3f1180ca4ade71fdf540574d2adfcdd8">openvrml::color_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="c798142331fb6eebed8e50c08b2b7c27"></a><!-- doxytag: member="openvrml::node::to_color_rgba" ref="c798142331fb6eebed8e50c08b2b7c27" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1color__rgba__node.html">openvrml::color_rgba_node</a> * openvrml::node::to_color_rgba           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1color__rgba__node.html" title="Abstract base class for RGBA color nodes.">color_rgba_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1color__rgba__node.html#ae8209ea5d7fee8c84c9a89095bd5828">openvrml::color_rgba_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="7988f2c28d13752eacb76a77757acbb6"></a><!-- doxytag: member="openvrml::node::to_coordinate" ref="7988f2c28d13752eacb76a77757acbb6" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1coordinate__node.html">openvrml::coordinate_node</a> * openvrml::node::to_coordinate           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1coordinate__node.html" title="Abstract base class for coordinate nodes.">coordinate_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1coordinate__node.html#97f81f04c0c5a414e491ffb6b6bdc0ae">openvrml::coordinate_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="4d961f870aa219e7711a8a4ad2b7b33e"></a><!-- doxytag: member="openvrml::node::to_font_style" ref="4d961f870aa219e7711a8a4ad2b7b33e" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1font__style__node.html">openvrml::font_style_node</a> * openvrml::node::to_font_style           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <a class="el" href="classopenvrml_1_1font__style__node.html" title="Abstract base class for font style nodes.">font_style_node</a>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1font__style__node.html#6976ab061a67e1e9f1de5d06aa6c330e">openvrml::font_style_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="7a4b611f901ca5f5aa1434b64fc7cf55"></a><!-- doxytag: member="openvrml::node::to_geometry" ref="7a4b611f901ca5f5aa1434b64fc7cf55" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1geometry__node.html">openvrml::geometry_node</a> * openvrml::node::to_geometry           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <a class="el" href="classopenvrml_1_1geometry__node.html" title="Abstract base class for geometry nodes.">geometry_node</a>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1geometry__node.html#eb633d8081d98413955410c07213973a">openvrml::geometry_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="e94315f9b00481924cef7f2686310e3a"></a><!-- doxytag: member="openvrml::node::to_grouping" ref="e94315f9b00481924cef7f2686310e3a" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1grouping__node.html">openvrml::grouping_node</a> * openvrml::node::to_grouping           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1grouping__node.html" title="Abstract base class for grouping nodes.">grouping_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1grouping__node.html#54444eb893fc7714aafa39c6089f3a67">openvrml::grouping_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="469956c28f44d9caa50157179166eaba"></a><!-- doxytag: member="openvrml::node::to_light" ref="469956c28f44d9caa50157179166eaba" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1light__node.html">openvrml::light_node</a> * openvrml::node::to_light           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1light__node.html" title="Abstract base class for light nodes.">light_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1light__node.html#b9a0a046dcd501088cc19cd3ddd038c8">openvrml::light_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="3e9e250a81cbc427238d4f6373bf9b76"></a><!-- doxytag: member="openvrml::node::to_material" ref="3e9e250a81cbc427238d4f6373bf9b76" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1material__node.html">openvrml::material_node</a> * openvrml::node::to_material           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1material__node.html" title="Abstract base class for material nodes.">material_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1material__node.html#cb15ef16d6b12b0b922405d5caee84df">openvrml::material_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="f92848291e8cf74b827a1326d6cc4ab4"></a><!-- doxytag: member="openvrml::node::to_navigation_info" ref="f92848291e8cf74b827a1326d6cc4ab4" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1navigation__info__node.html">openvrml::navigation_info_node</a> * openvrml::node::to_navigation_info           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1navigation__info__node.html" title="Abstract base class for normal nodes.">navigation_info_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0. </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1navigation__info__node.html#8aac2875236bd70c9f9030bd47f8ea46">openvrml::navigation_info_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="d04ff5b9cca253dd7f8da80e2cc5ecf0"></a><!-- doxytag: member="openvrml::node::to_normal" ref="d04ff5b9cca253dd7f8da80e2cc5ecf0" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1normal__node.html">openvrml::normal_node</a> * openvrml::node::to_normal           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1normal__node.html" title="Abstract base class for normal nodes.">normal_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1normal__node.html#e61f7faf20f85ca4abb77bfa93d67e95">openvrml::normal_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="e51027945a617ced6e4e5caaba074a70"></a><!-- doxytag: member="openvrml::node::to_pointing_device_sensor" ref="e51027945a617ced6e4e5caaba074a70" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1pointing__device__sensor__node.html">openvrml::pointing_device_sensor_node</a> * openvrml::node::to_pointing_device_sensor           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1pointing__device__sensor__node.html" title="A node that can be affected by a pointing device.">pointing_device_sensor_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1pointing__device__sensor__node.html#622fb660343031e812f9ca1202acf71d">openvrml::pointing_device_sensor_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="2fdf142efa2ca4db29296ad7681acd33"></a><!-- doxytag: member="openvrml::node::to_scoped_light" ref="2fdf142efa2ca4db29296ad7681acd33" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1scoped__light__node.html">openvrml::scoped_light_node</a> * openvrml::node::to_scoped_light           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1scoped__light__node.html" title="A light that falls within a specified area.">scoped_light_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0. </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1scoped__light__node.html#4ff5e2f3ceb78c6c15d5ea60f48ab4e8">openvrml::scoped_light_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="845476362867d18a102c67d6dc90f29d"></a><!-- doxytag: member="openvrml::node::to_sound_source" ref="845476362867d18a102c67d6dc90f29d" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1sound__source__node.html">openvrml::sound_source_node</a> * openvrml::node::to_sound_source           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1sound__source__node.html" title="Abstract base class for sound source nodes.">sound_source_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1sound__source__node.html#d90f73586d464d15be265934c546bb40">openvrml::sound_source_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="3072ddfc42728ff49bd4fd0b716d5c0e"></a><!-- doxytag: member="openvrml::node::to_texture" ref="3072ddfc42728ff49bd4fd0b716d5c0e" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1texture__node.html">openvrml::texture_node</a> * openvrml::node::to_texture           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1texture__node.html" title="Abstract base class for texture nodes.">texture_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1texture__node.html#a2a1da867ccd3e0dada617d4db862843">openvrml::texture_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="85c34030b5385c6b3c6b3a0888f6b9d6"></a><!-- doxytag: member="openvrml::node::to_texture_coordinate" ref="85c34030b5385c6b3c6b3a0888f6b9d6" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1texture__coordinate__node.html">openvrml::texture_coordinate_node</a> * openvrml::node::to_texture_coordinate           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1texture__coordinate__node.html" title="Abstract base class for texture coordinate nodes.">texture_coordinate_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1texture__coordinate__node.html#1b02d5dd58a7b607a81be44208f7472a">openvrml::texture_coordinate_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="ae4f2d8d2b402792aec966f6a6b2561a"></a><!-- doxytag: member="openvrml::node::to_texture_transform" ref="ae4f2d8d2b402792aec966f6a6b2561a" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1texture__transform__node.html">openvrml::texture_transform_node</a> * openvrml::node::to_texture_transform           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1texture__transform__node.html" title="Abstract base class for texture transform nodes.">texture_transform_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1texture__transform__node.html#b4a530d89d0259ee16e91d8159148298">openvrml::texture_transform_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="e2194c968be70971f3fcdeef2d1b9be3"></a><!-- doxytag: member="openvrml::node::to_time_dependent" ref="e2194c968be70971f3fcdeef2d1b9be3" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1time__dependent__node.html">openvrml::time_dependent_node</a> * openvrml::node::to_time_dependent           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1time__dependent__node.html" title="Abstract base class for time-dependent nodes.">time_dependent_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1time__dependent__node.html#3d3064d6f40d605b9d1c04de5054a768">openvrml::time_dependent_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="b0be60558e04e18c8b9507465873a51f"></a><!-- doxytag: member="openvrml::node::to_transform" ref="b0be60558e04e18c8b9507465873a51f" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1transform__node.html">openvrml::transform_node</a> * openvrml::node::to_transform           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1transform__node.html" title="Abstract base class for transform nodes.">transform_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1transform__node.html#8746eeafd28b61086ac73aeee7676389">openvrml::transform_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="ffb0adba2ec933849f727edc4eb44e27"></a><!-- doxytag: member="openvrml::node::to_viewpoint" ref="ffb0adba2ec933849f727edc4eb44e27" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1viewpoint__node.html">openvrml::viewpoint_node</a> * openvrml::node::to_viewpoint           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cast to a <code><a class="el" href="classopenvrml_1_1viewpoint__node.html" title="Abstract base class for viewpoint nodes.">viewpoint_node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
Default implementation returns 0.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 </dd></dl>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1viewpoint__node.html#0746d8a73b67cce285dec971bfeb4dcc">openvrml::viewpoint_node</a>.</p>

</div>
</div><p>
<hr><h2>Friends And Related Function Documentation</h2>
<a class="anchor" name="dfbb7e265a0386eb5a89f2b204f51ae9"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; sfbool &gt;" ref="dfbb7e265a0386eb5a89f2b204f51ae9" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfbool.html" title="A boolean node field value.">sfbool</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="974b7103ba323929f259e1b701bbed8d"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; sfcolor &gt;" ref="974b7103ba323929f259e1b701bbed8d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfcolor.html" title="A color node field value.">sfcolor</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="3ce645ad39477cc381784b9265fef927"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; sfcolorrgba &gt;" ref="3ce645ad39477cc381784b9265fef927" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfcolorrgba.html" title="A color_rgba node field value.">sfcolorrgba</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="e45f2faba4ffc57d860fc9667b896405"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; sffloat &gt;" ref="e45f2faba4ffc57d860fc9667b896405" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sffloat.html" title="A single precision floating point node field value.">sffloat</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="4f2c57497d5d8e510e6169c936a0a67d"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; sfdouble &gt;" ref="4f2c57497d5d8e510e6169c936a0a67d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfdouble.html" title="A single precision doubleing point node field value.">sfdouble</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="6a133b24ddbebe380ac44bc8c0b8a67a"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; sfimage &gt;" ref="6a133b24ddbebe380ac44bc8c0b8a67a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfimage.html" title="A pixmap.">sfimage</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="50c894cf4916ed2a9fbe123c2fd8249c"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; sfint32 &gt;" ref="50c894cf4916ed2a9fbe123c2fd8249c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfint32.html" title="A 32-bit integer node field value.">sfint32</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="bd9933321d76c1e8f14d812b3c19d4fd"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; sfnode &gt;" ref="bd9933321d76c1e8f14d812b3c19d4fd" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfnode.html" title="A node field value to hold a single node reference.">sfnode</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="1947f0406df962396ba5f3644e2146f7"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; sfrotation &gt;" ref="1947f0406df962396ba5f3644e2146f7" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfrotation.html" title="A rotation node field value.">sfrotation</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="05b60ed18d0be95f9ec6ed78709b4188"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; sfstring &gt;" ref="05b60ed18d0be95f9ec6ed78709b4188" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfstring.html" title="A string node field value.">sfstring</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="6f11c55fda24a3edfc0641d107a9b95f"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; sftime &gt;" ref="6f11c55fda24a3edfc0641d107a9b95f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sftime.html" title="A double precision floating point node field value.">sftime</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="823d2524502c05c833f125764414b079"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; sfvec2f &gt;" ref="823d2524502c05c833f125764414b079" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfvec2f.html" title="A 2-component vector node field value.">sfvec2f</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="75eae84e2299a03bd424040e6f55875c"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; sfvec2d &gt;" ref="75eae84e2299a03bd424040e6f55875c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfvec2d.html" title="A 2-component vector node field value.">sfvec2d</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="bfce88f1be42f55024ec301c6c06d710"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; sfvec3f &gt;" ref="bfce88f1be42f55024ec301c6c06d710" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfvec3f.html" title="A 3-component vector node field value.">sfvec3f</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="ae668b74f3c558d1c3a21c9ec369b480"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; sfvec3d &gt;" ref="ae668b74f3c558d1c3a21c9ec369b480" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfvec3d.html" title="A 3-component vector node field value.">sfvec3d</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="cd84ac2a0d9a1bcee5a03a8ce21c0949"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; mfbool &gt;" ref="cd84ac2a0d9a1bcee5a03a8ce21c0949" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfbool.html" title="A bool array node field value.">mfbool</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="cdc2c62bf10e18aa57af7f6025672d95"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; mfcolor &gt;" ref="cdc2c62bf10e18aa57af7f6025672d95" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfcolor.html" title="A color array node field value.">mfcolor</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="d0b21c19678ef50fc24285974dbb172d"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; mfcolorrgba &gt;" ref="d0b21c19678ef50fc24285974dbb172d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfcolorrgba.html" title="A color_rgba array node field value.">mfcolorrgba</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="cb41daf5b26408b87a6e5112f4c9e428"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; mffloat &gt;" ref="cb41daf5b26408b87a6e5112f4c9e428" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mffloat.html" title="A float array node field value.">mffloat</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="71b8e1bf20f5cddf2c698e2cf8c862c1"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; mfdouble &gt;" ref="71b8e1bf20f5cddf2c698e2cf8c862c1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfdouble.html" title="A double array node field value.">mfdouble</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="eeac4810c579450c2c6bedbae6e51bd0"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; mfimage &gt;" ref="eeac4810c579450c2c6bedbae6e51bd0" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfimage.html" title="A image array node field value.">mfimage</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="bea42fdd2443e8448a4138723a50390b"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; mfint32 &gt;" ref="bea42fdd2443e8448a4138723a50390b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfint32.html" title="An integer array node field value.">mfint32</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="95d0d6de70760fdc1e0eaa441d8f6dc7"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; mfnode &gt;" ref="95d0d6de70760fdc1e0eaa441d8f6dc7" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfnode.html" title="A node reference array node field value.">mfnode</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="970feb37ac5383469ab4666085a1ec7b"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; mfrotation &gt;" ref="970feb37ac5383469ab4666085a1ec7b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfrotation.html" title="A rotation array node field value.">mfrotation</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="f826fc0770205383e6b2c1c8fbf3201e"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; mfstring &gt;" ref="f826fc0770205383e6b2c1c8fbf3201e" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfstring.html" title="A string array node field value.">mfstring</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="628a665059f3ae8dbd08fd78f7e0dccb"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; mftime &gt;" ref="628a665059f3ae8dbd08fd78f7e0dccb" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mftime.html" title="A double array node field value.">mftime</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="adaf99d31845690e9ad42e89551f308d"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; mfvec2f &gt;" ref="adaf99d31845690e9ad42e89551f308d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfvec2f.html" title="A 2-component vector array node field value.">mfvec2f</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="d4ec4a56374ef1cf20dcde00511488f3"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; mfvec2d &gt;" ref="d4ec4a56374ef1cf20dcde00511488f3" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfvec2d.html" title="A 2-component vector array node field value.">mfvec2d</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="67bd2eff3c2a6e69822d3adad9af6b7d"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; mfvec3f &gt;" ref="67bd2eff3c2a6e69822d3adad9af6b7d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfvec3f.html" title="A 3-component vector array node field value.">mfvec3f</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="69320c193b3de5bbd641c6706d607ea7"></a><!-- doxytag: member="openvrml::node::field_value_listener&lt; mfvec3d &gt;" ref="69320c193b3de5bbd641c6706d607ea7" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::field_value_listener<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfvec3d.html" title="A 3-component vector array node field value.">mfvec3d</a></code> <code><a class="el" href="classopenvrml_1_1field__value__listener.html" title="Concrete event listener template.">field_value_listener</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="a8ad9f29c4ddd5d92b5b62883bb6234c"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; sfbool &gt;" ref="a8ad9f29c4ddd5d92b5b62883bb6234c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfbool.html" title="A boolean node field value.">sfbool</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="bfde2830ce07666d6316ec6f801f2642"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; sfcolor &gt;" ref="bfde2830ce07666d6316ec6f801f2642" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfcolor.html" title="A color node field value.">sfcolor</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="7918096eca7b2588832569fab6bdb52b"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; sfcolorrgba &gt;" ref="7918096eca7b2588832569fab6bdb52b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfcolorrgba.html" title="A color_rgba node field value.">sfcolorrgba</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="9e27c99b27f3c82c2f42d3a27c5a08ed"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; sffloat &gt;" ref="9e27c99b27f3c82c2f42d3a27c5a08ed" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sffloat.html" title="A single precision floating point node field value.">sffloat</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="5fb047c97204546cc1babdd41b55db44"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; sfdouble &gt;" ref="5fb047c97204546cc1babdd41b55db44" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfdouble.html" title="A single precision doubleing point node field value.">sfdouble</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="39bbff1fd07dfec617a914ce11314d69"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; sfimage &gt;" ref="39bbff1fd07dfec617a914ce11314d69" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfimage.html" title="A pixmap.">sfimage</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="69b3738dd4b8ef2669ea90708f8a1ef1"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; sfint32 &gt;" ref="69b3738dd4b8ef2669ea90708f8a1ef1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfint32.html" title="A 32-bit integer node field value.">sfint32</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="70d8ed28b5eed4f012ed6dfc1bbf45e3"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; sfnode &gt;" ref="70d8ed28b5eed4f012ed6dfc1bbf45e3" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfnode.html" title="A node field value to hold a single node reference.">sfnode</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="27a0729af48aad0f109dc9105009d549"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; sfrotation &gt;" ref="27a0729af48aad0f109dc9105009d549" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfrotation.html" title="A rotation node field value.">sfrotation</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="29f74ac6492d9c3ceabc8f691d53dea8"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; sfstring &gt;" ref="29f74ac6492d9c3ceabc8f691d53dea8" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfstring.html" title="A string node field value.">sfstring</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="2fdd09052701cd0c4d3710c6c23b413b"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; sftime &gt;" ref="2fdd09052701cd0c4d3710c6c23b413b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sftime.html" title="A double precision floating point node field value.">sftime</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="2f35926f9d91bdb6ba03250469bdd96c"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; sfvec2f &gt;" ref="2f35926f9d91bdb6ba03250469bdd96c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfvec2f.html" title="A 2-component vector node field value.">sfvec2f</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="768b472849a69520d073dc720a62ff78"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; sfvec2d &gt;" ref="768b472849a69520d073dc720a62ff78" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfvec2d.html" title="A 2-component vector node field value.">sfvec2d</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="0b86d8879123d0875f6d4251ca821e18"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; sfvec3f &gt;" ref="0b86d8879123d0875f6d4251ca821e18" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfvec3f.html" title="A 3-component vector node field value.">sfvec3f</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="70044dd7ca927f2f8eec155c279079eb"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; sfvec3d &gt;" ref="70044dd7ca927f2f8eec155c279079eb" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1sfvec3d.html" title="A 3-component vector node field value.">sfvec3d</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="e2c308a918df59841c0de0954d2adfbb"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; mfbool &gt;" ref="e2c308a918df59841c0de0954d2adfbb" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfbool.html" title="A bool array node field value.">mfbool</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="5d8ee0a4cf423124e19aaad9116854ed"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; mfcolor &gt;" ref="5d8ee0a4cf423124e19aaad9116854ed" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfcolor.html" title="A color array node field value.">mfcolor</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="e6fe0a8923ca473dc3cb64987998de3e"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; mfcolorrgba &gt;" ref="e6fe0a8923ca473dc3cb64987998de3e" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfcolorrgba.html" title="A color_rgba array node field value.">mfcolorrgba</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="577891033adffc96d56a14291a345e84"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; mffloat &gt;" ref="577891033adffc96d56a14291a345e84" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mffloat.html" title="A float array node field value.">mffloat</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="3ccf3d777b0feb896fc77d602ce547f1"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; mfdouble &gt;" ref="3ccf3d777b0feb896fc77d602ce547f1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfdouble.html" title="A double array node field value.">mfdouble</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="01bca819d6ef01531f7a991c692f6226"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; mfimage &gt;" ref="01bca819d6ef01531f7a991c692f6226" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfimage.html" title="A image array node field value.">mfimage</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="5e6c96fc6fef2c4a0a4af01bf3af834a"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; mfint32 &gt;" ref="5e6c96fc6fef2c4a0a4af01bf3af834a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfint32.html" title="An integer array node field value.">mfint32</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="b1e17acf1bb15ee1aa6df89b48cbaad3"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; mfnode &gt;" ref="b1e17acf1bb15ee1aa6df89b48cbaad3" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfnode.html" title="A node reference array node field value.">mfnode</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="12c9cb94ca57db75d66cd5dc17ec4994"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; mfrotation &gt;" ref="12c9cb94ca57db75d66cd5dc17ec4994" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfrotation.html" title="A rotation array node field value.">mfrotation</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="9055c9ed90261a9654bc04ae967a056b"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; mfstring &gt;" ref="9055c9ed90261a9654bc04ae967a056b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfstring.html" title="A string array node field value.">mfstring</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="aac6183ee3cfb614b2874fe1129fff4f"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; mftime &gt;" ref="aac6183ee3cfb614b2874fe1129fff4f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mftime.html" title="A double array node field value.">mftime</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="8cf4c936ad19a4f41531094d8d692492"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; mfvec2f &gt;" ref="8cf4c936ad19a4f41531094d8d692492" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfvec2f.html" title="A 2-component vector array node field value.">mfvec2f</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="7f6e7e79c1c9792527b0210c19372347"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; mfvec2d &gt;" ref="7f6e7e79c1c9792527b0210c19372347" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfvec2d.html" title="A 2-component vector array node field value.">mfvec2d</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="f04fa04e967304ced1f52fc62acbc686"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; mfvec3f &gt;" ref="f04fa04e967304ced1f52fc62acbc686" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfvec3f.html" title="A 3-component vector array node field value.">mfvec3f</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="902156ee558c22148aef94b4a4c94ddd"></a><!-- doxytag: member="openvrml::node::exposedfield&lt; mfvec3d &gt;" ref="902156ee558c22148aef94b4a4c94ddd" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class openvrml::node::exposedfield<code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<code><a class="el" href="classopenvrml_1_1mfvec3d.html" title="A 3-component vector array node field value.">mfvec3d</a></code> <code><a class="el" href="classopenvrml_1_1exposedfield.html" title="Class template to simplify implementation of exposedFields.">exposedfield</a></code>. 
<p>

</div>
</div><p>
<a class="anchor" name="32b84401491b015fc8fc71aab1a23619"></a><!-- doxytag: member="openvrml::node::operator&lt;&lt;" ref="32b84401491b015fc8fc71aab1a23619" args="(std::ostream &amp;out, const node &amp;n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::ostream &amp; openvrml::node::operator&lt;&lt;           </td>
          <td>(</td>
          <td class="paramtype">std::ostream &amp;&nbsp;</td>
          <td class="paramname"> <em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classopenvrml_1_1node.html">node</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>n</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Stream output. 
<p>

</div>
</div><p>
<a class="anchor" name="6fe46827b15b3fdce61b845928ecc058"></a><!-- doxytag: member="openvrml::node::node_cast" ref="6fe46827b15b3fdce61b845928ecc058" args="(node *n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1viewpoint__node.html">openvrml::viewpoint_node</a> * openvrml::node::node_cast&lt; <a class="el" href="classopenvrml_1_1viewpoint__node.html">viewpoint_node</a> * &gt;           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classopenvrml_1_1node.html">node</a> *&nbsp;</td>
          <td class="paramname"> <em>n</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td>  throw ()<code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Downcast a <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> to one of the abstract <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> types. 
<p>
Cast to a <code><a class="el" href="classopenvrml_1_1viewpoint__node.html" title="Abstract base class for viewpoint nodes.">viewpoint_node</a></code>.<p>
Cast to a <code><a class="el" href="classopenvrml_1_1transform__node.html" title="Abstract base class for transform nodes.">transform_node</a></code>.<p>
Cast to a <code><a class="el" href="classopenvrml_1_1texture__transform__node.html" title="Abstract base class for texture transform nodes.">texture_transform_node</a></code>.<p>
Cast to a <code><a class="el" href="classopenvrml_1_1texture__coordinate__node.html" title="Abstract base class for texture coordinate nodes.">texture_coordinate_node</a></code>.<p>
Cast to a <code><a class="el" href="classopenvrml_1_1texture__node.html" title="Abstract base class for texture nodes.">texture_node</a></code>.<p>
Cast to a <code><a class="el" href="classopenvrml_1_1sound__source__node.html" title="Abstract base class for sound source nodes.">sound_source_node</a></code>.<p>
Cast to a <code><a class="el" href="classopenvrml_1_1normal__node.html" title="Abstract base class for normal nodes.">normal_node</a></code>.<p>
Cast to a <code><a class="el" href="classopenvrml_1_1navigation__info__node.html" title="Abstract base class for normal nodes.">navigation_info_node</a></code>.<p>
Cast to a <code><a class="el" href="classopenvrml_1_1material__node.html" title="Abstract base class for material nodes.">material_node</a></code>.<p>
Cast to a <code><a class="el" href="classopenvrml_1_1grouping__node.html" title="Abstract base class for grouping nodes.">grouping_node</a></code>.<p>
Cast to a <code><a class="el" href="classopenvrml_1_1geometry__node.html" title="Abstract base class for geometry nodes.">geometry_node</a></code>.<p>
Cast to a <code><a class="el" href="classopenvrml_1_1font__style__node.html" title="Abstract base class for font style nodes.">font_style_node</a></code>.<p>
Cast to a <code><a class="el" href="classopenvrml_1_1coordinate__node.html" title="Abstract base class for coordinate nodes.">coordinate_node</a></code>.<p>
Cast to a <code><a class="el" href="classopenvrml_1_1color__rgba__node.html" title="Abstract base class for RGBA color nodes.">color_rgba_node</a></code>.<p>
Cast to a <code><a class="el" href="classopenvrml_1_1color__node.html" title="Abstract base class for color nodes.">color_node</a></code>.<p>
Cast to a <code><a class="el" href="classopenvrml_1_1child__node.html" title="Abstract base class for child nodes.">child_node</a></code>.<p>
Cast to a <code><a class="el" href="classopenvrml_1_1appearance__node.html" title="Abstract base class for appearance nodes.">appearance_node</a></code>.<p>
Cast to a <code><a class="el" href="classopenvrml_1_1script__node.html" title="Represents a VRML Script node.">script_node</a></code>.<p>
<dl compact><dt><b>Template Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>To</em>&nbsp;</td><td>an abstract <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> type.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>n</em>&nbsp;</td><td>a <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code>.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>a pointer to the downcast <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code>, or 0 if the cast fails. </dd></dl>

</div>
</div><p>
<a class="anchor" name="134ddecb58e87f0167edd1f31a1f1d51"></a><!-- doxytag: member="openvrml::node::intrusive_ptr_add_ref" ref="134ddecb58e87f0167edd1f31a1f1d51" args="(const node *n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void intrusive_ptr_add_ref           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classopenvrml_1_1node.html">node</a> *&nbsp;</td>
          <td class="paramname"> <em>n</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Increment the reference count. 
<p>
This function is used by <code>boost::intrusive_ptr&lt;node&gt;</code>.<p>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a href="http://boost.org/libs/smart_ptr/intrusive_ptr.html">http://boost.org/libs/smart_ptr/intrusive_ptr.html</a> </dd></dl>

</div>
</div><p>
<a class="anchor" name="3ee4285411b2fcc3f3c71f55ac05714b"></a><!-- doxytag: member="openvrml::node::intrusive_ptr_release" ref="3ee4285411b2fcc3f3c71f55ac05714b" args="(const node *n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void intrusive_ptr_release           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classopenvrml_1_1node.html">node</a> *&nbsp;</td>
          <td class="paramname"> <em>n</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Decrement the reference count. 
<p>
This function is used by <code>boost::intrusive_ptr&lt;node&gt;</code>.<p>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a href="http://boost.org/libs/smart_ptr/intrusive_ptr.html">http://boost.org/libs/smart_ptr/intrusive_ptr.html</a> </dd></dl>

</div>
</div><p>
<a class="anchor" name="422110fbc5cce66be41df4a6367e2cbb"></a><!-- doxytag: member="openvrml::node::is_proto_instance" ref="422110fbc5cce66be41df4a6367e2cbb" args="(const node &amp;n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool is_proto_instance           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classopenvrml_1_1node.html">node</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>n</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Check whether a <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> is a <code>PROTO</code> instance. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>n</em>&nbsp;</td><td>a <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code>.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd><code>true</code> if <code>n</code> is a <code>PROTO</code> instance; <code>false</code> otherwise. </dd></dl>

</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="c1d8416db52555248fee1d89d85f5b6e"></a><!-- doxytag: member="openvrml::node::ref_count_mutex_" ref="c1d8416db52555248fee1d89d85f5b6e" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">boost::mutex <a class="el" href="classopenvrml_1_1node.html#c1d8416db52555248fee1d89d85f5b6e">openvrml::node::ref_count_mutex_</a><code> [mutable, private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Mutex to guard <code><a class="el" href="classopenvrml_1_1node.html#f3fcfa6708f5c027e61612749f656d1c" title="The number of owning references to the instance.">ref_count_</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
</p>

</div>
</div><p>
<a class="anchor" name="f3fcfa6708f5c027e61612749f656d1c"></a><!-- doxytag: member="openvrml::node::ref_count_" ref="f3fcfa6708f5c027e61612749f656d1c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t <a class="el" href="classopenvrml_1_1node.html#f3fcfa6708f5c027e61612749f656d1c">openvrml::node::ref_count_</a><code> [mutable, private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The number of owning references to the instance. 
<p>
<p><b>For internal use only.</b></p>
<p>
</p>

</div>
</div><p>
<a class="anchor" name="555c1add19cf9f556b3104cd9b3d5e66"></a><!-- doxytag: member="openvrml::node::type_" ref="555c1add19cf9f556b3104cd9b3d5e66" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classopenvrml_1_1node__type.html">openvrml::node_type</a> &amp; <a class="el" href="classopenvrml_1_1node.html#555c1add19cf9f556b3104cd9b3d5e66">openvrml::node::type_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The type information object for the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
</p>

<p>Reimplemented in <a class="el" href="classopenvrml_1_1script__node.html#1b29a18bf419fc6f3507d89cee5d20f6">openvrml::script_node</a>.</p>

</div>
</div><p>
<a class="anchor" name="ed7243d5a87faf95df1d2c7fc31355b0"></a><!-- doxytag: member="openvrml::node::scope_" ref="ed7243d5a87faf95df1d2c7fc31355b0" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">boost::shared_ptr&lt; <a class="el" href="classopenvrml_1_1scope.html">openvrml::scope</a> &gt; <a class="el" href="classopenvrml_1_1node.html#ed7243d5a87faf95df1d2c7fc31355b0">openvrml::node::scope_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The <code><a class="el" href="classopenvrml_1_1scope.html" title="The scope class keeps track of defined nodes and prototypes.">scope</a></code> to which the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> belongs. 
<p>
<p><b>For internal use only.</b></p>
<p>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a href="http://boost.org/libs/smart_ptr/shared_ptr.htm">http://boost.org/libs/smart_ptr/shared_ptr.htm</a> </dd></dl>
</p>

</div>
</div><p>
<a class="anchor" name="48a9b77c5e32d4785b547aa2986f7ad4"></a><!-- doxytag: member="openvrml::node::scene_mutex_" ref="48a9b77c5e32d4785b547aa2986f7ad4" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">boost::shared_mutex <a class="el" href="classopenvrml_1_1node.html#48a9b77c5e32d4785b547aa2986f7ad4">openvrml::node::scene_mutex_</a><code> [mutable, private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Mutex protecting <code><a class="el" href="classopenvrml_1_1node.html#5ee9baaea2f5ed9c8f2bfe225a443560" title="The scene with which the node is associated.">scene_</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
</p>

</div>
</div><p>
<a class="anchor" name="5ee9baaea2f5ed9c8f2bfe225a443560"></a><!-- doxytag: member="openvrml::node::scene_" ref="5ee9baaea2f5ed9c8f2bfe225a443560" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classopenvrml_1_1scene.html">openvrml::scene</a> * <a class="el" href="classopenvrml_1_1node.html#5ee9baaea2f5ed9c8f2bfe225a443560">openvrml::node::scene_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The <a class="el" href="classopenvrml_1_1scene.html" title="A scene in the VRML world.">scene</a> with which the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> is associated. 
<p>
<p><b>For internal use only.</b></p>
<p>
</p>

</div>
</div><p>
<a class="anchor" name="fcb5bdd27f68db85ee51cba0b9461a5d"></a><!-- doxytag: member="openvrml::node::modified_mutex_" ref="fcb5bdd27f68db85ee51cba0b9461a5d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">boost::shared_mutex <a class="el" href="classopenvrml_1_1node.html#fcb5bdd27f68db85ee51cba0b9461a5d">openvrml::node::modified_mutex_</a><code> [mutable, private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Mutex protecting <code><a class="el" href="classopenvrml_1_1node.html#c93b8f9ea278fbf3dd486c7a971a1549" title="Indicate whether the node has been modified.">modified_</a></code>. 
<p>
<p><b>For internal use only.</b></p>
<p>
</p>

</div>
</div><p>
<a class="anchor" name="c93b8f9ea278fbf3dd486c7a971a1549"></a><!-- doxytag: member="openvrml::node::modified_" ref="c93b8f9ea278fbf3dd486c7a971a1549" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classopenvrml_1_1node.html#c93b8f9ea278fbf3dd486c7a971a1549">openvrml::node::modified_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Indicate whether the <code><a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a></code> has been modified. 
<p>
<p><b>For internal use only.</b></p>
<p>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classopenvrml_1_1node.html#a585cebffd6dd52db6308aaf63a57926" title="Determine whether the node has been modified.">modified</a> </dd></dl>
</p>

</div>
</div><p>
<a class="anchor" name="c2f393065a6d6d67a96d0a12780597b6"></a><!-- doxytag: member="openvrml::node::self_tag" ref="c2f393065a6d6d67a96d0a12780597b6" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const boost::intrusive_ptr&lt; <a class="el" href="classopenvrml_1_1node.html">openvrml::node</a> &gt; <a class="el" href="classopenvrml_1_1node.html#c2f393065a6d6d67a96d0a12780597b6">openvrml::node::self_tag</a><code> [static]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Special value used when initializing a <code><a class="el" href="classopenvrml_1_1script__node.html" title="Represents a VRML Script node.">script_node</a></code>. 
<p>
One should never attempt to dereference this value. It is useful only for comparison. 
</div>
</div><p>
</div>
</div>
<address class="footer"><span class="images"><a href="http://web3d.org/x3d/"><img src="x3d-white-on-black.png" width="43" height="32" border="0" alt="X3D"></a><a href="http://opengl.org"><img src="OGL_sm_wht.png" width="68" height="32" border="0" alt="OpenGL"></a><a href="http://sourceforge.net/projects/openvrml"><img src="http://sourceforge.net/sflogo.php?group_id=7151&amp;type=11" width="120" height="30" border="0" alt="SourceForge.net"></a></span><a href="https://sourceforge.net/apps/trac/openvrml/newticket">Report error</a><br>Generated Thu Aug 13 02:49:20 2009 by Doxygen 1.5.8</address>
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript"></script>
<script type="text/javascript">_uacct = "UA-446379-2"; urchinTracker();</script>
<!-- Piwik -->
<script type="text/javascript">
var pkBaseURL = (("https:" == document.location.protocol) ? "https://sourceforge.net/apps/piwik/openvrml/" : "http://sourceforge.net/apps/piwik/openvrml/");
document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E"));
</script><script type="text/javascript">
piwik_action_name = '';
piwik_idsite = 1;
piwik_url = pkBaseURL + "piwik.php";
piwik_log(piwik_action_name, piwik_idsite, piwik_url);
</script>
<object><noscript><p><img src="http://sourceforge.net/apps/piwik/openvrml/piwik.php?idsite=1" alt="piwik"/></p></noscript></object>
<!-- End Piwik Tag -->
</body>
</html>