ug4
|
Derivates of a Traverser can be used to traverse a scenegraph. More...
#include <traverser.h>
Public Member Functions | |
Traverser () | |
virtual | ~Traverser () |
Protected Member Functions | |
void | apply (SPNode &node) |
virtual void | handle_boxed_group (BoxedGroupNode *boxedGroup) |
virtual void | handle_group (GroupNode *group) |
template<typename HandlerType > | |
void | register_handler_function (unsigned int oc, HandlerType func) |
void | traverse_object (Object *obj) |
Private Types | |
typedef void(Traverser::* | HandlerFunc) (Object *obj) |
Private Member Functions | |
bool | handler_function_registered (unsigned int oc) |
Private Attributes | |
std::vector< HandlerFunc > | m_vHandlerFuncs |
Derivates of a Traverser can be used to traverse a scenegraph.
|
private |
ug::node_tree::Traverser::Traverser | ( | ) |
|
virtual |
|
protected |
References SmartPtr< T, FreePolicy >::get(), and traverse_object().
|
protectedvirtual |
Reimplemented in ug::node_tree::Traverser_ProjectPoint, and ug::node_tree::Traverser_IntersectFaces.
References handle_group().
Referenced by ug::node_tree::Traverser_CollisionTree::handle_collision_tree_root(), and Traverser().
|
protectedvirtual |
Reimplemented in ug::node_tree::Traverser_ProjectPoint.
References SmartPtr< T, FreePolicy >::get(), ug::node_tree::GroupNode::get_child(), ug::node_tree::GroupNode::num_children(), and traverse_object().
Referenced by handle_boxed_group(), and Traverser().
|
private |
References m_vHandlerFuncs.
Referenced by traverse_object().
|
protected |
References func(), and m_vHandlerFuncs.
Referenced by Traverser(), and ug::node_tree::Traverser_CollisionTree::Traverser_CollisionTree().
|
protected |
References ug::node_tree::Object::getObjectCode(), handler_function_registered(), and m_vHandlerFuncs.
Referenced by apply(), and handle_group().
|
private |
Referenced by handler_function_registered(), register_handler_function(), traverse_object(), and Traverser().