openvrml::node_impl_util::abstract_node_type Class Reference

Abstract base for openvrml::node_type subclasses. More...

#include <openvrml/node_impl_util.h>

Inheritance diagram for openvrml::node_impl_util::abstract_node_type:

Public Member Functions

virtual ~abstract_node_type ()=0 throw ()
 Destroy.
virtual const
openvrml::field_value
field_value (const openvrml::node &node, const std::string &id) const =0 throw ( openvrml::unsupported_interface )
 node's field_value corresponding to id.
virtual openvrml::event_listenerevent_listener (openvrml::node &node, const std::string &id) const =0 throw ( openvrml::unsupported_interface )
 node's openvrml::event_listener corresponding to the eventIn identifier id.
virtual openvrml::event_emitterevent_emitter (openvrml::node &node, const std::string &id) const =0 throw ( openvrml::unsupported_interface )
 node's openvrml::event_emitter corresponding to the eventOut identifier id.
- Public Member Functions inherited from openvrml::node_type
virtual ~node_type ()=0 throw ()
 Destructor.
const node_metatypemetatype () const throw ()
 The class object associated with the node_type.
const std::string & id () const throw ()
 The name of the node_type.
const node_interface_setinterfaces () const throw ()
 Get the set of interfaces for the node_type.
const boost::intrusive_ptr< nodecreate_node (const boost::shared_ptr< scope > &scope, const initial_value_map &initial_values=initial_value_map()) const throw ( unsupported_interface , std::bad_cast , std::bad_alloc )
 Create a new node with this node_type.

Protected Member Functions

 abstract_node_type (const openvrml::node_metatype &metatype, const std::string &id)
 Construct.
- Protected Member Functions inherited from openvrml::node_type
 node_type (const node_metatype &c, const std::string &id) throw ( std::bad_alloc )
 Constructor.

Additional Inherited Members

Detailed Description

Abstract base for openvrml::node_type subclasses.

This class is realized by instances of the node_type_impl class template.

See Also
openvrml::node_impl_util::node_type_impl

Constructor & Destructor Documentation

openvrml::node_impl_util::abstract_node_type::~abstract_node_type ( ) throw ()
pure virtual

Destroy.

openvrml::node_impl_util::abstract_node_type::abstract_node_type ( const openvrml::node_metatype metatype,
const std::string &  id 
)
protected

Construct.

Parameters
[in]metatypethe node_metatype.
[in]idthe node_type identifier.

Member Function Documentation

const openvrml::field_value & openvrml::node_impl_util::abstract_node_type::field_value ( const openvrml::node node,
const std::string &  id 
) const throw ( openvrml::unsupported_interface )
pure virtual

node's field_value corresponding to id.

Parameters
[in]nodethe openvrml::node for which to return the openvrml::field_value.
[in]idfield identifier.
Returns
node's openvrml::field_value corresponding to the field identifier id.
Exceptions
openvrml::unsupported_interfaceif node has no field id.

Implemented in openvrml::node_impl_util::node_type_impl< Node >.

const openvrml::event_listener & openvrml::node_impl_util::abstract_node_type::event_listener ( openvrml::node node,
const std::string &  id 
) const throw ( openvrml::unsupported_interface )
pure virtual

node's openvrml::event_listener corresponding to the eventIn identifier id.

Parameters
[in]nodethe openvrml::node for which to return the openvrml::event_listener.
[in]ideventIn identifier.
Returns
node's openvrml::event_listener corresponding to the eventIn identifier id.
Exceptions
openvrml::unsupported_interfaceif node has no eventIn id.

Implemented in openvrml::node_impl_util::node_type_impl< Node >.

const openvrml::event_emitter & openvrml::node_impl_util::abstract_node_type::event_emitter ( openvrml::node node,
const std::string &  id 
) const throw ( openvrml::unsupported_interface )
pure virtual

node's openvrml::event_emitter corresponding to the eventOut identifier id.

Parameters
[in]nodethe openvrml::node for which to return the openvrml::event_emitter.
[in]ideventOut identifier.
Returns
node's openvrml::event_emitter corresponding to the eventOut identifier id.
Exceptions
openvrml::unsupported_interfaceif node has no eventOut id.

Implemented in openvrml::node_impl_util::node_type_impl< Node >.