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

# openvrml::node_impl_util::event_emitter_base< Node > Class Template Reference

Abstract base for `event_emitter` implementations. More...

`#include <openvrml/node_impl_util.h>`

Inheritance diagram for openvrml::node_impl_util::event_emitter_base< Node >:
[legend]

List of all members.

## Classes

struct | event_emitter_equal_to
| A model of Adaptable Predicate. More...

## Public Member Functions

virtual | ~event_emitter_base ()=0 throw ()
| Destroy.
openvrml::node & | node () const throw ()
| The node with which the `event_emitter` is associated.

## Protected Member Functions

| event_emitter_base (openvrml::node &n, const field_value &value) throw ()
| Construct.

## Private Types

typedef node_type_impl< Node > | node_type_t
| The concrete `node_type`.
typedef node_type_t::event_emitter_map_t | event_emitter_map_t
| The map of `event_emitters`.

## Private Member Functions

virtual const std::string | do_eventout_id () const throw ()
| The associated `eventOut` identifier.

## Private Attributes

openvrml::node * | node_
| The `node` with which the `event_emitter` is associated.

## Detailed Description

### template<typename Node>
class openvrml::node_impl_util::event_emitter_base< Node >

Abstract base for `event_emitter` implementations.

`event_emitter_base` implements `openvrml::event_emitter::do_eventout_id`.

Template Parameters:

  | Node | a concrete node type.

## Member Typedef Documentation

template<typename Node>

openvrml::node_impl_util::node_type_impl< Node > openvrml::node_impl_util::event_emitter_base< Node >::node_type_t`[private]`

The concrete `node_type`.

template<typename Node>

openvrml::node_impl_util::event_emitter_base::node_type_t::event_emitter_map_t openvrml::node_impl_util::event_emitter_base< Node >::event_emitter_map_t`[private]`

The map of `event_emitters`.

## Constructor & Destructor Documentation

template<typename Node >

openvrml::node_impl_util::event_emitter_base< Node >::~event_emitter_base | ( |  | ) | throw ()`[inline, pure virtual]`

Destroy.

template<typename Node >

openvrml::node_impl_util::event_emitter_base< Node >::event_emitter_base | ( | openvrml::node & | n,
|  | const field_value & | value |
| ) |  |  | throw ()`[inline, protected]`

Construct.

Parameters:

  `[in]` | n | the `node` associated with the `event_emitter`.
  `[in]` | value | the field value associated with the `event_emitter`.

## Member Function Documentation

template<typename Node >

openvrml::node & openvrml::node_impl_util::event_emitter_base< Node >::node | ( |  | ) | const throw ()`[inline]`

The node with which the `event_emitter` is associated.

template<typename Node >

const std::string openvrml::node_impl_util::event_emitter_base< Node >::do_eventout_id | ( |  | ) | const throw ()`[inline, private, virtual]`

The associated `eventOut` identifier.

Returns:
  the associated `eventOut` identifier.

Implements openvrml::event_emitter.

## Member Data Documentation

template<typename Node>

openvrml::node * openvrml::node_impl_util::event_emitter_base< Node >::node_`[private]`

The `node` with which the `event_emitter` is associated.