|
ug4
|
Derivates of a Traverser can be used to traverse a scenegraph. More...
#include <traverser.h>
Inheritance diagram for ug::node_tree::Traverser: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().
Referenced by ug::node_tree::Traverser_IntersectFaces::intersect_tri(), and ug::node_tree::Traverser_ProjectPoint::project().
|
protectedvirtual |
Reimplemented in ug::node_tree::Traverser_IntersectFaces, and ug::node_tree::Traverser_ProjectPoint.
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(), ug::node_tree::Traverser_IntersectFaces::handle_boxed_group(), ug::node_tree::Traverser_ProjectPoint::handle_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(), handle_group(), and ug::node_tree::Traverser_ProjectPoint::handle_group().
|
private |
Referenced by handler_function_registered(), register_handler_function(), traverse_object(), and Traverser().