<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>OpenVRML: browser.h File 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 Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li><a href="annotated.html"><span>Classes</span></a></li> <li class="current"><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="files.html"><span>File List</span></a></li> </ul> </div> </div> <div class="contents"> <h1>browser.h File Reference</h1>Classes that manage the scene. <a href="#_details">More...</a> <p> <code>#include <boost/thread.hpp></code><br> <code>#include <<a class="el" href="script_8h.html">openvrml/script.h</a>></code><br> <p> <div class="dynheader"> Include dependency graph for browser.h:</div> <div class="dynsection"> <p><center><img src="browser_8h__incl.png" border="0" usemap="#browser.h_map" alt=""></center> <map name="browser.h_map"> <area shape="rect" href="script_8h.html" title="Pluggable scripting engine support." alt="" coords="857,83,977,112"><area shape="rect" href="bad__url_8h.html" title="Exceptions indicating various types of resource retrieval failure." alt="" coords="657,160,791,189"><area shape="rect" href="node_8h.html" title="Abstract node types and supporting types." alt="" coords="1257,160,1377,189"><area shape="rect" href="event_8h.html" title="Event emitter and listener interfaces." alt="" coords="856,160,979,189"><area shape="rect" href="field__value_8h.html" title="Field value types." alt="" coords="800,237,955,267"><area shape="rect" href="rendering__context_8h.html" title="Definition of openvrml::rendering_context." alt="" coords="1043,237,1240,267"><area shape="rect" href="basetypes_8h.html" title="Basic types for representing data in VRML/X3D worlds (color, rotations, vectors,..." alt="" coords="1657,392,1809,421"><area shape="rect" href="bounding__volume_8h.html" title="Bounding volumes." alt="" coords="1704,315,1899,344"></map> </div> <p> <div class="dynheader"> This graph shows which files directly or indirectly include this file:</div> <div class="dynsection"> <p><center><img src="browser_8h__dep__incl.png" border="0" usemap="#browser.hdep_map" alt=""></center> <map name="browser.hdep_map"> <area shape="rect" href="vrml97__grammar_8h.html" title="VRML97 Spirit grammar and associated parsers." alt="" coords="12,83,145,112"><area shape="rect" href="x3d__vrml__grammar_8h.html" title="Classic VRML X3D Spirit grammar." alt="" coords="5,160,152,189"></map> </div> <table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Classes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1resource__istream.html">openvrml::resource_istream</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">An abstract input stream for network resources. <a href="classopenvrml_1_1resource__istream.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1resource__fetcher.html">openvrml::resource_fetcher</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">An abstract factory for <code><a class="el" href="classopenvrml_1_1resource__istream.html" title="An abstract input stream for network resources.">resource_istream</a>s</code>. <a href="classopenvrml_1_1resource__fetcher.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1stream__listener.html">openvrml::stream_listener</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">An interface to simplify asynchronously reading a <code><a class="el" href="classopenvrml_1_1resource__istream.html" title="An abstract input stream for network resources.">resource_istream</a></code>. <a href="classopenvrml_1_1stream__listener.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1invalid__vrml.html">openvrml::invalid_vrml</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Exception thrown when the parser fails due to errors in the VRML input. <a href="classopenvrml_1_1invalid__vrml.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1viewer__in__use.html">openvrml::viewer_in_use</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Exception thrown when attempting to associate a <code><a class="el" href="classopenvrml_1_1viewer.html" title="Map the scene graph to the underlying graphics library.">viewer</a></code> with a <code><a class="el" href="classopenvrml_1_1browser.html" title="Encapsulates a VRML browser.">browser</a></code> when the <code><a class="el" href="classopenvrml_1_1viewer.html" title="Map the scene graph to the underlying graphics library.">viewer</a></code> is already associated with a <code><a class="el" href="classopenvrml_1_1browser.html" title="Encapsulates a VRML browser.">browser</a></code>. <a href="classopenvrml_1_1viewer__in__use.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1browser__event.html">openvrml::browser_event</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A <code><a class="el" href="classopenvrml_1_1browser.html" title="Encapsulates a VRML browser.">browser</a></code>-wide event. <a href="classopenvrml_1_1browser__event.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1browser__listener.html">openvrml::browser_listener</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">This class should be inherited by classes that want to listen for <code><a class="el" href="classopenvrml_1_1browser__event.html" title="A browser-wide event.">browser_event</a>s</code>. <a href="classopenvrml_1_1browser__listener.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1node__metatype__registry.html">openvrml::node_metatype_registry</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Registry for <code><a class="el" href="classopenvrml_1_1node__metatype.html" title="A class object for node instances.">node_metatype</a>s</code>. <a href="classopenvrml_1_1node__metatype__registry.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classopenvrml_1_1browser.html">openvrml::browser</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Encapsulates a VRML <a class="el" href="classopenvrml_1_1browser.html" title="Encapsulates a VRML browser.">browser</a>. <a href="classopenvrml_1_1browser.html#_details">More...</a><br></td></tr> <tr><td colspan="2"><br><h2>Namespaces</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">namespace </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceopenvrml.html">openvrml</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The OpenVRML Runtime Library. <br></td></tr> <p> <tr><td colspan="2"><br><h2>Typedefs</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceopenvrml.html#860a6fd5cd0e57596986571b8599bfbf">openvrml::register_node_metatypes_func</a> )(node_metatype_registry &)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The signature of the <a class="el" href="classopenvrml_1_1node.html" title="A node in the scene graph.">node</a> module entry point. <a href="#860a6fd5cd0e57596986571b8599bfbf"></a><br></td></tr> <tr><td colspan="2"><br><h2>Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">std::auto_ptr< node_type_decls > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceopenvrml.html#8ed3081b59a2d8ba70e6e8699abf2ec5">openvrml::profile</a> (const std::string &profile_id) throw ( std::invalid_argument , std::bad_alloc )</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a <code>node_type_decls</code> map corresponding to a particular profile. <a href="#8ed3081b59a2d8ba70e6e8699abf2ec5"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceopenvrml.html#2ff8163d3fcd4247faa78b10a742be8c">openvrml::add_component</a> (node_type_decls &node_types, const std::string &component_id, size_t level) throw ( std::invalid_argument , std::bad_alloc )</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add the nodes corresponding to a component level to a <code>node_type_decls</code> map. <a href="#2ff8163d3fcd4247faa78b10a742be8c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9ade0df7b3628c7419d57ae1ccbce9ec"></a><!-- doxytag: member="browser.h::parse_vrml" ref="9ade0df7b3628c7419d57ae1ccbce9ec" args="(std::istream &in, const std::string &uri, const std::string &type, const openvrml::scene &scene, std::vector< boost::intrusive_ptr< node > > &nodes, std::map< std::string, std::string > &meta)" --> void </td><td class="memItemRight" valign="bottom"><b>openvrml::local::parse_vrml</b> (std::istream &in, const std::string &uri, const std::string &type, const <a class="el" href="classopenvrml_1_1scene.html">openvrml::scene</a> &scene, std::vector< boost::intrusive_ptr< node > > &nodes, std::map< std::string, std::string > &meta)</td></tr> <tr><td colspan="2"><br><h2>Variables</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const char </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceopenvrml.html#b271737a62b4e27e3272775a00838c3d">openvrml::vrml_media_type</a> [11] = "model/vrml"</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">VRML MIME media type. <a href="#b271737a62b4e27e3272775a00838c3d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const char </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceopenvrml.html#56815601cfcfe8f8fc423b60d54a8872">openvrml::x_vrml_media_type</a> [15] = "x-world/x-vrml"</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Experimental VRML MIME media type. <a href="#56815601cfcfe8f8fc423b60d54a8872"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const char </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceopenvrml.html#acc18960fcb687d52d2a156a7dab4775">openvrml::x3d_vrml_media_type</a> [15] = "model/x3d-vrml"</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">X3D VRML MIME media type. <a href="#acc18960fcb687d52d2a156a7dab4775"></a><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Classes that manage the scene. <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&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:09 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>