14 #ifndef OSGUTIL_UPDATEVISITOR
15 #define OSGUTIL_UPDATEVISITOR 1
17 #include <osg/NodeVisitor>
19 #include <osg/Billboard>
22 #include <osg/LightSource>
23 #include <osg/Transform>
24 #include <osg/Projection>
25 #include <osg/OccluderNode>
26 #include <osg/ScriptEngine>
28 #include <osgUtil/Export>
60 if (drawable_callback) drawable_callback->
update(
this,&drawable);
61 if (node_callback) (*node_callback)(&drawable,
this);
63 if ((!drawable_callback && !node_callback) || callback_object) callback_object->
run(&drawable,
this);
78 virtual void apply(
osg::LOD& node) { handle_callbacks_and_traverse(node); }
103 if (callback) callback->
run(&node,
this);
virtual void apply(osg::LightSource &node)
virtual void apply(osg::Group &node)
void runUpdateCallbacks(osg::NodeVisitor *nv)
Callback * getUpdateCallback()
virtual void apply(osg::Billboard &node)
virtual void update(osg::NodeVisitor *, osg::Drawable *)
bool run(osg::Object *object, osg::Object *data)
virtual void apply(osg::Geode &node)
unsigned int getNumChildrenRequiringUpdateTraversal() const
virtual bool run(osg::Object *object, osg::Object *data)
void handle_callbacks(osg::StateSet *stateset)
#define META_NodeVisitor(library, name)
virtual void apply(osg::Transform &node)
virtual void apply(osg::OccluderNode &node)
virtual void apply(osg::Switch &node)
virtual void apply(osg::LOD &node)
virtual void apply(osg::Projection &node)
virtual void apply(osg::Drawable &drawable)
virtual void apply(osg::Node &node)
bool requiresUpdateTraversal() const
void handle_callbacks_and_traverse(osg::Node &node)
osg::StateSet * getStateSet()
Shader generator framework.