openvrml::navigation_info_node Class Reference

Abstract base class for normal nodes. More...

#include <openvrml/node.h>

Inheritance diagram for openvrml::navigation_info_node:

Public Member Functions

virtual ~navigation_info_node ()=0 throw ()
 Destroy.
const std::vector< float > & avatar_size () const throw ()
 Get the avatar dimensions.
bool headlight () const throw ()
 Get the state of the headlight.
float speed () const throw ()
 Get the current speed of the user view.
const std::vector< std::string > & type () const throw ()
 Get the navigation type.
float visibility_limit () const throw ()
 Get the visibility limit.
- Public Member Functions inherited from openvrml::child_node
virtual ~child_node ()=0 throw ()
 Destructor.
void relocate () throw ( std::bad_alloc )
 Called when the node is relocated to a new position in the scene graph.
void render_child (viewer &v, rendering_context context)
 Render the node.
- Public Member Functions inherited from openvrml::bounded_volume_node
virtual ~bounded_volume_node () throw ()
 Destroy.
const openvrml::bounding_volumebounding_volume () const
 Get this node's bounding volume.
- Public Member Functions inherited from openvrml::node
virtual ~node ()=0 throw ()
 Destructor.
void add_ref () const throw ()
 Increment the reference count.
void remove_ref () const throw ()
 Decrement the reference count.
void release () const throw ()
 Decrement the reference count; destroy the instance if the count drops to zero.
size_t use_count () const throw ()
 The number of owning references to the instance.
const std::string & id () const throw ()
 Retrieve the name of this node.
void id (const std::string &node_id) throw ( std::bad_alloc )
 Set the name of the node.
const openvrml::scopescope () const throw ()
 Get the scope to which the node belongs.
openvrml::scenescene () const throw ()
 Get the scene with which the node is associated.
const std::vector
< boost::intrusive_ptr< node > > & 
impl_nodes () const throw ()
 Get the implementation nodes of a PROTO instance.
std::ostream & print (std::ostream &out, size_t indent) const
 Pretty print.
void initialize (openvrml::scene &scene, double timestamp) throw ( std::bad_alloc )
 Initialize the node.
std::auto_ptr< field_valuefield (const std::string &id) const throw ( unsupported_interface , std::bad_alloc )
 Generalized field accessor.
openvrml::event_listenerevent_listener (const std::string &id) throw ( unsupported_interface )
 Get an event listener.
openvrml::event_emitterevent_emitter (const std::string &id) throw ( unsupported_interface )
 Get an event emitter.
void shutdown (double timestamp) throw ()
 Shut down the node.
bool modified () const throw ( boost::thread_resource_error )
 Determine whether the node has been modified.
void modified (bool value) throw ( boost::thread_resource_error )
 Set the modified flag.

Protected Member Functions

 navigation_info_node (const node_type &type, const boost::shared_ptr< openvrml::scope > &scope) throw ()
 Construct.
- Protected Member Functions inherited from openvrml::child_node
 child_node (const node_type &type, const boost::shared_ptr< openvrml::scope > &scope) throw ()
 Constructor.
- Protected Member Functions inherited from openvrml::bounded_volume_node
 bounded_volume_node (const node_type &type, const boost::shared_ptr< openvrml::scope > &scope) throw ()
 Construct.
void bounding_volume_dirty (bool value)
 Set whether the node's bounding volume needs to be recalculated.
bool bounding_volume_dirty () const
 Whether the node's bounding volume needs to be recalculated.
virtual const
openvrml::bounding_volume
do_bounding_volume () const
 Called by bounding_volume.
- Protected Member Functions inherited from openvrml::node
 node (const node_type &type, const boost::shared_ptr< openvrml::scope > &scope) throw ()
 Construct.
boost::shared_mutex & scene_mutex ()
 The scene mutex.

Private Member Functions

virtual navigation_info_nodeto_navigation_info () throw ()
 Cast to a navigation_info_node.
virtual const std::vector
< float > & 
do_avatar_size () const =0 throw ()
 Get the avatar dimensions.
virtual bool do_headlight () const =0 throw ()
 Get the state of the headlight.
virtual float do_speed () const =0 throw ()
 Get the current speed of the user view.
virtual const std::vector
< std::string > & 
do_type () const =0 throw ()
 Get the navigation type.
virtual float do_visibility_limit () const =0 throw ()
 Get the visibility limit.

Additional Inherited Members

- Static Public Attributes inherited from openvrml::node
static const
boost::intrusive_ptr< node
self_tag
 Special value used when initializing a script_node.
- Static Protected Member Functions inherited from openvrml::node
static void emit_event (openvrml::event_emitter &emitter, double timestamp) throw ( std::bad_alloc )
 Emit an event.

Detailed Description

Abstract base class for normal nodes.

Constructor & Destructor Documentation

openvrml::navigation_info_node::~navigation_info_node ( ) throw ()
pure virtual

Destroy.

openvrml::navigation_info_node::navigation_info_node ( const node_type t,
const boost::shared_ptr< openvrml::scope > &  scope 
) throw ()
protected

Construct.

Parameters
[in]tthe node_type associated with the node.
[in]scopethe scope the node belongs to.

Member Function Documentation

const std::vector< float > & openvrml::navigation_info_node::avatar_size ( ) const throw ()

Get the avatar dimensions.

This function delegates to do_avatar_size.

Returns
the avatar dimensions.
bool openvrml::navigation_info_node::headlight ( ) const throw ()

Get the state of the headlight.

This function delegates to do_headlight.

Returns
true if the headlight is on; false otherwise.
float openvrml::navigation_info_node::speed ( ) const throw ()

Get the current speed of the user view.

This function delegates to do_speed.

Returns
the current speed of the user view.
const std::vector< std::string > & openvrml::navigation_info_node::type ( ) const throw ()

Get the navigation type.

This function delegates to do_type.

Returns
the navigation type.

Reimplemented from openvrml::node.

float openvrml::navigation_info_node::visibility_limit ( ) const throw ()

Get the visibility limit.

This function delegates to do_visibility_limit.

Returns
the visibility limit.
openvrml::navigation_info_node * openvrml::navigation_info_node::to_navigation_info ( ) throw ()
privatevirtual

Cast to a navigation_info_node.

Returns
a pointer to this navigation_info_node.
const std::vector< float > & openvrml::navigation_info_node::do_avatar_size ( ) const throw ()
privatepure virtual

Get the avatar dimensions.

Returns
the avatar dimensions.
bool openvrml::navigation_info_node::do_headlight ( ) const throw ()
privatepure virtual

Get the state of the headlight.

Returns
true if the headlight is on; false otherwise.
float openvrml::navigation_info_node::do_speed ( ) const throw ()
privatepure virtual

Get the current speed of the user view.

Returns
the current speed of the user view.
const std::vector< std::string > & openvrml::navigation_info_node::do_type ( ) const throw ()
privatepure virtual

Get the navigation type.

Returns
the navigation type.
float openvrml::navigation_info_node::do_visibility_limit ( ) const throw ()
privatepure virtual

Get the visibility limit.

Returns
the visibility limit.