Home | Download | Screen shots | Discussion | Documentation |
---|
Classes | |
class | ptr_to_polymorphic_mem |
Abstract base class for a pointer-to-polymorphic-member type. More... | |
class | ptr_to_polymorphic_mem_impl |
Concrete pointer-to-polymorphic-member type. More... | |
class | abstract_node_type |
Abstract base for openvrml::node_type subclasses. More... | |
class | node_type_impl |
A template for concrete node_types . More... | |
class | event_listener_base |
Abstract base for event_listener implementations. More... | |
class | event_emitter_base |
Abstract base for event_emitter implementations. More... | |
class | abstract_node |
Abstract base class for node implementations. More... | |
struct | BindableNodeConcept |
Concept checking class to validate that a template parameter is a model of the Bindable Node concept. More... | |
class | bound_node_stack |
A stack of bindable nodes. More... |
While the API comprising the members of the openvrml
namespace provides everything necessary to implement nodes, node implementation can be very verbose. The members of the openvrml::node_impl_util
namespace can make node implementation more concise by abstracting and providing code that many node implementations are likely to have in common.
In particular, node_type_impl
centralizes the logic for generalized field access. By using an instance of this class template for your openvrml::node_type
implementation you can avoid a lot of tedious and repetitive code to implement openvrml::node::do_field
, openvrml::node::do_event_listener
, and openvrml::node::do_event_emitter
.