openvrml::node_impl_util::abstract_node_type Class Referenceabstract

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. More...
 
virtual const openvrml::field_valuefield_value (const openvrml::node &node, const std::string &id) const =0 throw ( openvrml::unsupported_interface )
 node's field_value corresponding to id. More...
 
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. More...
 
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. More...
 

Protected Member Functions

 abstract_node_type (const openvrml::node_metatype &metatype, const std::string &id)
 Construct. More...
 

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 >.