Home | Download | Screen shots | Discussion | Documentation
--- | --- | --- | --- | ---

Main Page | Modules | Namespace List | Class Hierarchy | Class List | Namespace Members | Class Members | Related Pages

# openvrml::field_value_listener< FieldValue > Class Template Reference

Inheritance diagram for openvrml::field_value_listener< FieldValue >:

[legend]
List of all members.

## Detailed Description

### template<typename FieldValue>
class openvrml::field_value_listener< FieldValue >

Concrete event listener template.

## Public Member Functions

virtual | ~field_value_listener ()=0 throw ()
| Destroy.
void | process_event (const FieldValue &value, double timestamp) throw (std::bad_alloc)
| Process an event.

## Protected Member Functions

| field_value_listener (openvrml::node &node) throw ()
| Construct.

## Private Member Functions

virtual void | do_process_event (const FieldValue &value, double timestamp)=0 throw (std::bad_alloc)
| Called by `field_value_listener<FieldValue>do_process_event`.

## Constructor & Destructor Documentation

template<typename FieldValue>
openvrml::field_value_listener< FieldValue >::~field_value_listener | ( |  | ) | throw ()`[pure virtual]`

| Destroy.

template<typename FieldValue>
openvrml::field_value_listener< FieldValue >::field_value_listener | ( | openvrml::node & | node | ) | throw ()`[explicit, protected]`

Construct.

Parameters:

  | node | the node to which the event_listener belongs.

## Member Function Documentation

template<typename FieldValue>
void openvrml::field_value_listener< FieldValue >::process_event | ( | const FieldValue & | value,
|  | double | timestamp
| ) | throw (std::bad_alloc)

Process an event.

Parameters:

  | value | the event value.
  | timestamp | the current time.

Exceptions:

  | std::bad_alloc | if memory allocation fails.

template<typename FieldValue>
void openvrml::field_value_listener< FieldValue >::do_process_event | ( | const FieldValue & | value,
|  | double | timestamp
| ) | throw (std::bad_alloc)`[private, pure virtual]`

Called by `field_value_listener<FieldValue>do_process_event`.

Subclasses must implement this function.

Parameters:

  | value | the event value.
  | timestamp | the current time.

Exceptions:

  | std::bad_alloc | if memory allocation fails.

Implemented in openvrml::exposedfield< FieldValue >, openvrml::script_node::script_event_listener< FieldValue >, openvrml::script_node::set_url_listener_t, openvrml::vrml97_node::abstract_indexed_set_node::set_color_index_listener, openvrml::vrml97_node::group_node::add_children_listener, openvrml::vrml97_node::group_node::remove_children_listener, openvrml::vrml97_node::coordinate_interpolator_node::set_fraction_listener, openvrml::vrml97_node::elevation_grid_node::set_height_listener, openvrml::vrml97_node::extrusion_node::set_cross_section_listener, openvrml::vrml97_node::extrusion_node::set_scale_listener, openvrml::vrml97_node::fog_node::set_bind_listener, openvrml::vrml97_node::indexed_face_set_node::set_normal_index_listener, openvrml::vrml97_node::indexed_face_set_node::set_tex_coord_index_listener, openvrml::vrml97_node::movie_texture_node::set_speed_listener, openvrml::vrml97_node::navigation_info_node::set_bind_listener, openvrml::vrml97_node::orientation_interpolator_node::set_fraction_listener, openvrml::vrml97_node::position_interpolator_node::set_fraction_listener, openvrml::vrml97_node::time_sensor_node::set_cycle_interval_listener, openvrml::exposedfield< mfcolor >, openvrml::exposedfield< sffloat >, openvrml::exposedfield< sftime >, openvrml::exposedfield< sfstring >, openvrml::exposedfield< mfnode >, openvrml::exposedfield< mfrotation >, openvrml::exposedfield< mfvec2f >, openvrml::exposedfield< mfvec3f >, openvrml::exposedfield< sfcolor >, openvrml::exposedfield< mffloat >, openvrml::exposedfield< sfbool >, openvrml::exposedfield< sfimage >, openvrml::exposedfield< mfstring >, openvrml::exposedfield< sfnode >, openvrml::exposedfield< sfrotation >, openvrml::exposedfield< sfvec2f >, openvrml::exposedfield< sfint32 >, and openvrml::exposedfield< sfvec3f >.