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

- Main Page
- Namespaces
- Classes
- Files
- Related Pages
- Examples

- Class List
- Class Hierarchy
- Class Members

# openvrml::node_interface Class Reference

`#include <openvrml/node.h>`

List of all members.

## Detailed Description

Type information for an interface of a `node`.

Examples:

  pretty_print.cpp.

## Public Types

enum | type_id { invalid_type_id, eventin_id, eventout_id, exposedfield_id, field_id }
| Identify the type of interface. More...

## Public Member Functions

| node_interface (type_id type, field_value::type_id field_type, const std::string &id)
| Constructor.

## Public Attributes

type_id | type
| The interface type.
field_value::type_id | field_type
| The field data type handled by this interface.
std::string | id
| The name of this interface.

## Related Functions

(Note that these are not member functions.)
std::ostream & | operator<< (std::ostream &out, const node_interface::type_id type)
| Stream inserter.
std::istream & | operator>> (std::istream &in, node_interface::type_id &type)
| Stream extractor.
bool | operator== (const node_interface &lhs, const node_interface &rhs) throw()
| Compare for equality.
bool | operator!= (const node_interface &lhs, const node_interface &rhs) throw()
| Compare for openvrml::inequality.
std::ostream & | operator<< (std::ostream &out, const node_interface &interface_)
| Stream output.
std::istream & | operator>> (std::istream &in, node_interface &interface_)
| Stream input.

## Member Enumeration Documentation

enum openvrml::node_interface::type_id

Identify the type of interface.

Enumerator:

  invalid_type_id | Used to indicate an invalid or unknown interface type.
  eventin_id | An `eventIn`.
  eventout_id | An `eventOut`.
  exposedfield_id | An `exposedField`.
  field_id | A `field`.

## Constructor & Destructor Documentation

openvrml::node_interface::node_interface | ( | type_id | type,
|  | field_value::type_id | field_type,
|  | const std::string & | id |
| ) |  |  | `[inline]`

Constructor.

Parameters:

  `[in]` | type | the type of interface.
  `[in]` | field_type | the field data type handled by the interface.
  `[in]` | id | the name of the interface.

## Friends And Related Function Documentation

std::ostream & operator<< | ( | std::ostream & | out,
|  | const node_interface::type_id | type |
| ) |  |  | `[related]`

Stream inserter.

If `type` is `node_interface::invalid_type_id`, `failbit` is set on `out`.

Parameters:

  `[in,out]` | out | an output stream.
  `[in]` | type | a `node` interface type.

Returns:
  `out`.

std::istream & operator>> | ( | std::istream & | in,
|  | node_interface::type_id & | type |
| ) |  |  | `[related]`

Stream extractor.

Parameters:

  `[in,out]` | in | an input stream.
  `[out]` | type | a `node` interface type.

Returns:
  `in`.

bool operator== | ( | const node_interface & | lhs,
|  | const node_interface & | rhs |
| ) |  |  | throw()`[related]`

Compare for equality.

Parameters:

  `[in]` | lhs | a `node_interface`.
  `[in]` | rhs | a `node_interface`.

Returns:
  `true` if the two `node_interfaces` are equal, `false` otherwise.

bool operator!= | ( | const node_interface & | lhs,
|  | const node_interface & | rhs |
| ) |  |  | throw()`[related]`

Compare for openvrml::inequality.

Parameters:

  `[in]` | lhs | a `node_interface`.
  `[in]` | rhs | a `node_interface`.

Returns:
  `true` if the two `node_interfaces` are equal, `false` otherwise.

std::ostream & operator<< | ( | std::ostream & | out,
|  | const node_interface & | interface_ |
| ) |  |  | `[related]`

Stream output.

Parameters:

  `[in,out]` | out | output stream.
  `[in]` | interface_ | `node_interface`.

Returns:
  `out`.

std::istream & operator>> | ( | std::istream & | in,
|  | node_interface & | interface_ |
| ) |  |  | `[related]`

Stream input.

Parameters:

  `[in,out]` | in | input stream.
  `[out]` | interface_ | `node_interface`.

Returns:
  `in`.

## Member Data Documentation

openvrml::node_interface::type

The interface type.

Examples:
  pretty_print.cpp.

openvrml::node_interface::field_type

The field data type handled by this interface.

openvrml::node_interface::id

The name of this interface.

Examples:
  pretty_print.cpp.