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

openvrml::vrml97_node::appearance_node Class Reference

Appearance node instances. More...

Inheritance diagram for openvrml::vrml97_node::appearance_node:

Inheritance graph
[legend]
Collaboration diagram for openvrml::vrml97_node::appearance_node:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 appearance_node (const node_type &type, const scope_ptr &scope)
 Construct.

virtual ~appearance_node () throw ()
 Destroy.

virtual bool modified () const
 Determine whether the node has been modified.

virtual void render (openvrml::viewer &viewer, rendering_context context)
 Render the node.

virtual const node_ptrmaterial () const throw ()
 Get the material node.

virtual const node_ptrtexture () const throw ()
 Get the texture node.

virtual const node_ptrtexture_transform () const throw ()
 Get the texture transform node.


Private Member Functions

void process_set_material (const field_value &value, double timestamp) throw (std::bad_cast, std::bad_alloc)
 set_material eventIn handler.

void process_set_texture (const field_value &value, double timestamp) throw (std::bad_cast, std::bad_alloc)
 set_texture eventIn handler.

void process_set_textureTransform (const field_value &value, double timestamp) throw (std::bad_cast, std::bad_alloc)
 set_textureTransform eventIn handler.


Private Attributes

sfnode material_
 material exposedField.

sfnode texture_
 texture exposedField.

sfnode textureTransform
 textureTransform exposedField.


Friends

class appearance_class
 Class object for Appearance nodes.


Detailed Description

Appearance node instances.


Constructor & Destructor Documentation

openvrml::vrml97_node::appearance_node::appearance_node const node_type type,
const scope_ptr scope
 

Construct.

Parameters:
type the node_type associated with the node instance.
scope the scope to which the node belongs.

Reimplemented from openvrml::appearance_node.

openvrml::vrml97_node::appearance_node::~appearance_node  )  throw () [virtual]
 

Destroy.

Implements openvrml::appearance_node.


Member Function Documentation

const node_ptr & openvrml::vrml97_node::appearance_node::material  )  const throw () [virtual]
 

Get the material node.

Returns:
an sfnode object containing the Material node associated with this Appearance.

Implements openvrml::appearance_node.

bool openvrml::vrml97_node::appearance_node::modified  )  const [virtual]
 

Determine whether the node has been modified.

Returns:
true if the node or one of its children has been modified, false otherwise.

Reimplemented from openvrml::node.

void openvrml::vrml97_node::appearance_node::process_set_material const field_value value,
double  timestamp
throw (std::bad_cast, std::bad_alloc) [private]
 

set_material eventIn handler.

Parameters:
value an sfnode value; should be a Material node.
timestamp the current time.
Exceptions:
std::bad_cast if value is not an sfnode.
std::bad_alloc if memory allocation fails.

void openvrml::vrml97_node::appearance_node::process_set_texture const field_value value,
double  timestamp
throw (std::bad_cast, std::bad_alloc) [private]
 

set_texture eventIn handler.

Parameters:
value an sfnode value; should be a Texture node.
timestamp the current time.
Exceptions:
std::bad_cast if value is not an sfnode.
std::bad_alloc if memory allocation fails.

void openvrml::vrml97_node::appearance_node::process_set_textureTransform const field_value value,
double  timestamp
throw (std::bad_cast, std::bad_alloc) [private]
 

set_textureTransform eventIn handler.

Parameters:
value an sfnode value; should be a TextureTransform node.
timestamp the current time.
Exceptions:
std::bad_cast if value is not an sfnode.
std::bad_alloc if memory allocation fails.

void openvrml::vrml97_node::appearance_node::render openvrml::viewer viewer,
rendering_context  context
[virtual]
 

Render the node.

Parameters:
viewer a Viewer.
context a rendering context.

Reimplemented from openvrml::node.

const node_ptr & openvrml::vrml97_node::appearance_node::texture  )  const throw () [virtual]
 

Get the texture node.

Returns:
an sfnode object containing the texture node associated with this Appearance.

Implements openvrml::appearance_node.

const node_ptr & openvrml::vrml97_node::appearance_node::texture_transform  )  const throw () [virtual]
 

Get the texture transform node.

Returns:
an sfnode object containing the TextureTransform node associated with this Appearance.

Implements openvrml::appearance_node.


Friends And Related Function Documentation

openvrml::vrml97_node::appearance_node::appearance_class [friend]
 

Class object for Appearance nodes.


Member Data Documentation

sfnode openvrml::vrml97_node::appearance_node::material_ [private]
 

material exposedField.

sfnode openvrml::vrml97_node::appearance_node::texture_ [private]
 

texture exposedField.

sfnode openvrml::vrml97_node::appearance_node::textureTransform [private]
 

textureTransform exposedField.