openvrml Namespace Reference


Detailed Description

The OpenVRML Runtime Library.


Classes

struct  color
 A POD-struct comprising a color. More...
struct  color_rgba
 A POD-struct comprising a color with an alpha channel. More...
struct  vec2f
 A POD-struct comprising a two-component single-precision vector. More...
struct  vec2d
 Two-component double-precision vector. More...
struct  vec3f
 Three-component single-precision vector. More...
struct  vec3d
 A POD-struct comprising a three-component double-precision vector. More...
struct  rotation
 A POD-struct comprising a rotation. More...
struct  mat4f
 A POD-struct comprising a 4x4 matrix. More...
struct  quatf
 A POD-struct comprising a quaternion. More...
class  image
 Pixmap data. More...
class  bounding_volume
 A bounding volume. More...
class  bounding_sphere
 A bounding sphere. More...
class  axis_aligned_bounding_box
 An axis-aligned bounding box. More...
class  resource_istream
 An abstract input stream for network resources. More...
class  resource_fetcher
 An abstract factory for resource_istreams. More...
class  stream_listener
 An interface to simplify asynchronously reading a resource_istream. More...
class  invalid_vrml
 Exception thrown when the parser fails due to errors in the VRML input. More...
class  viewer_in_use
 Exception thrown when attempting to associate a viewer with a browser when the viewer is already associated with a browser. More...
class  bad_url
 Thrown when there is a problem resolving a URI. More...
class  invalid_url
 Thrown when parsing a URI fails. More...
class  bad_media_type
 Thrown when an unexpected media type is received. More...
class  unreachable_url
 Thrown when a URI cannot be reached. More...
class  no_alternative_url
 Exception thrown when no URI in an alternative URI list can be resolved. More...
class  browser_event
 A browser-wide event. More...
class  browser_listener
 This class should be inherited by classes that want to listen for browser_events. More...
class  browser
 Encapsulates a VRML browser. More...
class  scene
 A scene in the VRML world. More...
class  event_listener
 Abstract base class of event listeners. More...
class  node_event_listener
 Base class for event listeners of nodes. More...
class  field_value_listener
 Concrete event listener template. More...
class  node_field_value_listener
 Base class for field_value_listeners that are members of nodes. More...
class  event_emitter
 Abstract base class of event emitters. More...
class  field_value_emitter
 Concrete event emitter template. More...
class  exposedfield
 Class template to simplify implementation of exposedFields. More...
class  field_value
 Abstract base class for the VRML field types. More...
struct  FieldValueConcept
 Concept checking class to validate that a template parameter is a model of the Field Value concept. More...
class  sfbool
 A boolean node field value. More...
class  sfcolor
 A color node field value. More...
class  sfcolorrgba
 A color_rgba node field value. More...
class  sffloat
 A single precision floating point node field value. More...
class  sfdouble
 A single precision doubleing point node field value. More...
class  sfimage
 A pixmap. More...
class  sfint32
 A 32-bit integer node field value. More...
class  sfnode
 A node field value to hold a single node reference. More...
class  sfrotation
 A rotation node field value. More...
class  sfstring
 A string node field value. More...
class  sftime
 A double precision floating point node field value. More...
class  sfvec2f
 A 2-component vector node field value. More...
class  sfvec2d
 A 2-component vector node field value. More...
class  sfvec3f
 A 3-component vector node field value. More...
class  sfvec3d
 A 3-component vector node field value. More...
class  mfbool
 A bool array node field value. More...
class  mfcolor
 A color array node field value. More...
class  mfcolorrgba
 A color_rgba array node field value. More...
class  mffloat
 A float array node field value. More...
class  mfdouble
 A double array node field value. More...
class  mfimage
 A image array node field value. More...
class  mfint32
 An integer array node field value. More...
class  mfnode
 A node reference array node field value. More...
class  mfrotation
 A rotation array node field value. More...
class  mfstring
 A string array node field value. More...
class  mftime
 A double array node field value. More...
class  mfvec2f
 A 2-component vector array node field value. More...
class  mfvec2d
 A 2-component vector array node field value. More...
class  mfvec3f
 A 3-component vector array node field value. More...
class  mfvec3d
 A 3-component vector array node field value. More...
class  frustum
 A view frustum. More...
class  node_interface
 Type information for an interface of a node. More...
class  unsupported_interface
 Exception to indicate that a node interface is not supported. More...
struct  node_interface_matches_eventin
 Determine if a node_interface matches an eventIn identifier. More...
struct  node_interface_matches_eventout
 Determine if a node_interface matches an eventOut identifier. More...
struct  node_interface_matches_exposedfield
 Determine if a node_interface matches an exposedField identifier. More...
struct  node_interface_matches_field
 Determine if a node_interface matches an field identifier. More...
struct  node_interface_compare
 Function object to compare two node_interfaces based on their id. More...
class  node_metatype_id
 Identifier for node_metatypes. More...
class  node_metatype
 A class object for node instances. More...
class  node_type
 Type information object for nodes. More...
class  field_value_type_mismatch
 Thrown when field value types do not match, generally in a ROUTE or IS. More...
class  node
 A node in the scene graph. More...
class  appearance_node
 Abstract base class for appearance nodes. More...
class  bounded_volume_node
 Abstract base class for nodes that represent a bounded volume in the scene graph. More...
class  child_node
 Abstract base class for child nodes. More...
class  color_node
 Abstract base class for color nodes. More...
class  color_rgba_node
 Abstract base class for RGBA color nodes. More...
class  coordinate_node
 Abstract base class for coordinate nodes. More...
class  font_style_node
 Abstract base class for font style nodes. More...
class  geometry_node
 Abstract base class for geometry nodes. More...
class  grouping_node
 Abstract base class for grouping nodes. More...
class  light_node
 Abstract base class for light nodes. More...
class  material_node
 Abstract base class for material nodes. More...
class  navigation_info_node
 Abstract base class for normal nodes. More...
class  normal_node
 Abstract base class for normal nodes. More...
class  pointing_device_sensor_node
 A node that can be affected by a pointing device. More...
class  scoped_light_node
 A light that falls within a specified area. More...
class  sound_source_node
 Abstract base class for sound source nodes. More...
class  texture_node
 Abstract base class for texture nodes. More...
class  texture_coordinate_node
 Abstract base class for texture coordinate nodes. More...
class  texture_transform_node
 Abstract base class for texture transform nodes. More...
class  time_dependent_node
 Abstract base class for time-dependent nodes. More...
class  transform_node
 Abstract base class for transform nodes. More...
class  viewpoint_node
 Abstract base class for viewpoint nodes. More...
class  node_traverser
 Traverse the children of each node in a node hierarchy only once. More...
class  read_write_mutex
 A read/write mutex with an interface that follows the patterns established in the Boost thread library. More...
class  rendering_context
 Information needed during a render traversal. More...
class  scope
 The scope class keeps track of defined nodes and prototypes. More...
class  script
 Abstract class implemented by scripting language bindings. More...
class  script_node_metatype
 Class object for script_nodes. More...
class  script_node
 Represents a VRML Script node. More...
class  viewer
 Map the scene graph to the underlying graphics library. More...
struct  vrml97_space_parser
 A Spirit space parser appropriate for use with VRML97 and VRML-encoded X3D. More...
struct  vrml97_skip_grammar
 A Spirit grammar appropriate for use as a skip parser for VRML97 and VRML-encoded X3D. More...
struct  vrml97_parse_error_handler
 A Spirit error handler that emits error and warning messages to a std::ostream. More...
struct  null_vrml97_parse_actions
 No-op semantic actions for vrml97_grammar. More...
struct  vrml97_grammar
 A Spirit grammar for parsing VRML97. More...
struct  x3d_vrml_parse_error_handler
 A Spirit error handler that emits error and warning messages to a std::ostream. More...
struct  color_rgba_parser
 The implementation of the openvrml::color_rgba_p functor parser. More...
struct  vec2d_parser
 The implementation of the openvrml::vec2d_p functor parser. More...
struct  vec3d_parser
 The implementation of the openvrml::vec3d_p functor parser. More...
struct  null_x3d_vrml_parse_actions
 No-op semantic actions for x3d_vrml_grammar. More...
struct  x3d_vrml_grammar
 A Spirit grammar for parsing Classic VRML X3D. More...

Namespaces

namespace  node_impl_util
 Utility classes to facilitate node implementations.
namespace  gl
 OpenGL geometry renderer.

Typedefs

typedef boost::int32_t int32
 32-bit signed integer.
typedef std::list< node_path_element > node_path_t
 A node path is used to store the path to a node for the purpose of duplicating a route in a cloned node hierarchy.
typedef field_value_listener<
sfbool
sfbool_listener
 sfbool event listener.
typedef field_value_listener<
sfcolor
sfcolor_listener
 sfcolor event listener.
typedef field_value_listener<
sfcolorrgba
sfcolorrgba_listener
 sfcolorrgba event listener.
typedef field_value_listener<
sffloat
sffloat_listener
 sffloat event listener.
typedef field_value_listener<
sfdouble
sfdouble_listener
 sfdouble event listener.
typedef field_value_listener<
sfimage
sfimage_listener
 sfimage event listener.
typedef field_value_listener<
sfint32
sfint32_listener
 sfint32 event listener.
typedef field_value_listener<
sfnode
sfnode_listener
 sfnode event listener.
typedef field_value_listener<
sfrotation
sfrotation_listener
 sfrotation event listener.
typedef field_value_listener<
sfstring
sfstring_listener
 sfstring event listener.
typedef field_value_listener<
sftime
sftime_listener
 sftime event listener.
typedef field_value_listener<
sfvec2f
sfvec2f_listener
 sfvec2f event listener.
typedef field_value_listener<
sfvec2d
sfvec2d_listener
 sfvec2d event listener.
typedef field_value_listener<
sfvec3f
sfvec3f_listener
 sfvec3f event listener.
typedef field_value_listener<
sfvec3d
sfvec3d_listener
 sfvec3d event listener.
typedef field_value_listener<
mfbool
mfbool_listener
 mfbool event listener.
typedef field_value_listener<
mfcolor
mfcolor_listener
 mfcolor event listener.
typedef field_value_listener<
mfcolorrgba
mfcolorrgba_listener
 mfcolorrgba event listener.
typedef field_value_listener<
mffloat
mffloat_listener
 mffloat event listener.
typedef field_value_listener<
mfdouble
mfdouble_listener
 mfdouble event listener.
typedef field_value_listener<
mfimage
mfimage_listener
 mfimage event listener.
typedef field_value_listener<
mfint32
mfint32_listener
 mfint32 event listener.
typedef field_value_listener<
mfnode
mfnode_listener
 mfnode event listener.
typedef field_value_listener<
mfrotation
mfrotation_listener
 mfrotation event listener.
typedef field_value_listener<
mfstring
mfstring_listener
 mfstring event listener.
typedef field_value_listener<
mftime
mftime_listener
 mftime event listener.
typedef field_value_listener<
mfvec2f
mfvec2f_listener
 mfvec2f event listener.
typedef field_value_listener<
mfvec2d
mfvec2d_listener
 mfvec2d event listener.
typedef field_value_listener<
mfvec3f
mfvec3f_listener
 mfvec3f event listener.
typedef field_value_listener<
mfvec3d
mfvec3d_listener
 mfvec3d event listener.
typedef field_value_emitter<
sfbool
sfbool_emitter
 sfbool event emitter.
typedef field_value_emitter<
sfcolor
sfcolor_emitter
 sfcolor event emitter.
typedef field_value_emitter<
sfcolorrgba
sfcolorrgba_emitter
 sfcolorrgba event emitter.
typedef field_value_emitter<
sffloat
sffloat_emitter
 sffloat event emitter.
typedef field_value_emitter<
sfdouble
sfdouble_emitter
 sfdouble event emitter.
typedef field_value_emitter<
sfimage
sfimage_emitter
 sfimage event emitter.
typedef field_value_emitter<
sfint32
sfint32_emitter
 sfint32 event emitter.
typedef field_value_emitter<
sfnode
sfnode_emitter
 sfnode event emitter.
typedef field_value_emitter<
sfrotation
sfrotation_emitter
 sfrotation event emitter.
typedef field_value_emitter<
sfstring
sfstring_emitter
 sfstring event emitter.
typedef field_value_emitter<
sftime
sftime_emitter
 sftime event emitter.
typedef field_value_emitter<
sfvec2f
sfvec2f_emitter
 sfvec2f event emitter.
typedef field_value_emitter<
sfvec2d
sfvec2d_emitter
 sfvec2d event emitter.
typedef field_value_emitter<
sfvec3f
sfvec3f_emitter
 sfvec3f event emitter.
typedef field_value_emitter<
sfvec3d
sfvec3d_emitter
 sfvec3d event emitter.
typedef field_value_emitter<
mfbool
mfbool_emitter
 mfbool event emitter.
typedef field_value_emitter<
mfcolor
mfcolor_emitter
 mfcolor event emitter.
typedef field_value_emitter<
mfcolorrgba
mfcolorrgba_emitter
 mfcolorrgba event emitter.
typedef field_value_emitter<
mffloat
mffloat_emitter
 mffloat event emitter.
typedef field_value_emitter<
mfdouble
mfdouble_emitter
 mfdouble event emitter.
typedef field_value_emitter<
mfint32
mfint32_emitter
 mfint32 event emitter.
typedef field_value_emitter<
mfimage
mfimage_emitter
 mfimage event emitter.
typedef field_value_emitter<
mfnode
mfnode_emitter
 mfnode event emitter.
typedef field_value_emitter<
mfrotation
mfrotation_emitter
 mfrotation event emitter.
typedef field_value_emitter<
mfstring
mfstring_emitter
 mfstring event emitter.
typedef field_value_emitter<
mftime
mftime_emitter
 mftime event emitter.
typedef field_value_emitter<
mfvec2f
mfvec2f_emitter
 mfvec2f event emitter.
typedef field_value_emitter<
mfvec2d
mfvec2d_emitter
 mfvec2d event emitter.
typedef field_value_emitter<
mfvec3f
mfvec3f_emitter
 mfvec3f event emitter.
typedef field_value_emitter<
mfvec3d
mfvec3d_emitter
 mfvec3d event emitter.
typedef std::set< node_interface,
node_interface_compare
node_interface_set
 A group of unique node_interfaces.
typedef std::map< std::string,
node_interface_set
node_type_decls
typedef std::map< std::string,
boost::shared_ptr< field_value > > 
initial_value_map
 A map of the initial values with which a node is instantiated.
typedef std::deque< node * > node_path
 A path to a node in the scene starting with one of the scene root nodes and ending with the objective node.
typedef boost::spirit::assertion<
vrml_parse_error
vrml_parse_assertion
typedef std::multimap< std::string,
node_interface_set
script_node_types_t
typedef std::pair< node_type_decls::key_type,
node_type_decls::mapped_type > 
node_type_decl
typedef std::map< std::string,
const node_type_decls::value_type * > 
defs_t

Enumerations

enum  vrml_parse_error {
  dot_expected,
  lbrace_expected,
  lbracket_expected,
  id_expected,
  to_expected,
  is_expected,
  interface_type_or_rbracket_expected,
  field_type_expected,
  bool_expected,
  color_expected,
  color_or_lbracket_expected,
  color_or_rbracket_expected,
  float_expected,
  float_or_lbracket_expected,
  float_or_rbracket_expected,
  int32_expected,
  int32_or_lbracket_expected,
  int32_or_rbracket_expected,
  rotation_expected,
  rotation_or_lbracket_expected,
  rotation_or_rbracket_expected,
  string_expected,
  string_or_lbracket_expected,
  string_or_rbracket_expected,
  vec2_expected,
  vec2_or_lbracket_expected,
  vec2_or_rbracket_expected,
  vec3_expected,
  vec3_or_lbracket_expected,
  vec3_or_rbracket_expected,
  node_expected,
  node_or_lbracket_expected,
  node_or_rbracket_expected,
  interface_collision,
  unknown_node_type_id,
  node_type_already_exists,
  unknown_node_name_id,
  unknown_node_interface_id,
  proto_interface_id_expected,
  incompatible_proto_interface,
  eventin_id_expected,
  eventout_id_expected,
  event_value_type_mismatch,
  field_or_prototype_or_route_or_rbrace_expected,
  script_interface_or_field_or_prototype_or_route_or_rbrace_expected,
  rotation_axis_not_normalized,
  vrml_parse_error_end,
  vrml_parse_error_max = INT_MAX
}
 Identifiers used to designate parse error conditions. More...

Functions

const openvrml::color make_color () throw ()
 Create a zero-initialized color.
const openvrml::color make_color (const float(&rgb)[3]) throw ()
 Create a color.
const openvrml::color make_color (const float r, const float g, const float b) throw ()
 Create a color.
bool operator== (const color &lhs, const color &rhs) throw ()
 Compare for equality.
bool operator!= (const color &lhs, const color &rhs) throw ()
 Compare for inequality.
std::istream & operator>> (std::istream &in, color &c)
 Stream input.
std::ostream & operator<< (std::ostream &out, const color &c)
 Stream output.
const openvrml::color_rgba make_color_rgba () throw ()
 Create a zero-initialized color_rgba.
const openvrml::color_rgba make_color_rgba (const float(&rgba)[4]) throw ()
 Create a color_rgba.
const openvrml::color_rgba make_color_rgba (const float r, const float g, const float b, const float a) throw ()
 Create a color_rgba.
bool operator== (const color_rgba &lhs, const color_rgba &rhs) throw ()
 Compare for equality.
bool operator!= (const color_rgba &lhs, const color_rgba &rhs) throw ()
 Compare for inequality.
std::istream & operator>> (std::istream &in, color_rgba &c)
 Stream input.
std::ostream & operator<< (std::ostream &out, const color_rgba &c)
 Stream output.
const openvrml::vec2f make_vec2f () throw ()
 Create a vec2f.
const openvrml::vec2f make_vec2f (const float(&vec)[2]) throw ()
 Create a vec2f from an array.
const openvrml::vec2f make_vec2f (const float x, const float y) throw ()
 Create a vec2f from x and y components.
const openvrml::vec2f operator * (const vec2f &lhs, const float rhs) throw ()
 Multiply a vector by a scalar.
const openvrml::vec2f operator * (const float lhs, const vec2f &rhs) throw ()
 Multiply a vector by a scalar.
const openvrml::vec2f operator/ (const vec2f &lhs, const float rhs) throw ()
 Divide a vector by a scalar.
const openvrml::vec2f operator+ (const vec2f &lhs, const vec2f &rhs) throw ()
 Add two vectors.
const openvrml::vec2f operator- (const vec2f &lhs, const vec2f &rhs) throw ()
 Subtract two vectors.
bool operator== (const vec2f &lhs, const vec2f &rhs) throw ()
 Compare for equality.
bool operator!= (const vec2f &lhs, const vec2f &rhs) throw ()
 Compare for inequality.
std::istream & operator>> (std::istream &in, vec2f &v)
 Stream input.
std::ostream & operator<< (std::ostream &out, const vec2f &v)
 Stream output.
const openvrml::vec2d make_vec2d () throw ()
 Create a vec2d.
const openvrml::vec2d make_vec2d (const double(&vec)[2]) throw ()
 Create a vec2d from an array.
const openvrml::vec2d make_vec2d (const double x, const double y) throw ()
 Create a