14 #ifndef OSGGA_EVENTVISITOR
15 #define OSGGA_EVENTVISITOR 1
17 #include <osg/NodeVisitor>
20 #include <osg/Billboard>
23 #include <osg/LightSource>
24 #include <osg/Transform>
25 #include <osg/Projection>
26 #include <osg/OccluderNode>
27 #include <osg/ScriptEngine>
29 #include <osgGA/GUIEventAdapter>
30 #include <osgGA/GUIActionAdapter>
31 #include <osgGA/EventQueue>
55 void addEvent(
Event* event);
56 void removeEvent(
Event* event);
82 if (drawable_callback) drawable_callback->
event(
this,&drawable);
83 if (node_callback) (*node_callback)(&drawable,
this);
85 if ((!drawable_callback && !node_callback) || callback_object) callback_object->
run(&drawable,
this);
122 if (callback) callback->
run(&node,
this);
void setEvents(const EventQueue::Events &events)
const osgGA::GUIActionAdapter * getActionAdapter() const
virtual void apply(osg::Geode &node)
virtual void apply(osg::Drawable &drawable)
EventQueue::Events _events
Callback * getEventCallback()
virtual void apply(osg::Transform &node)
virtual void apply(osg::Node &node)
void handle_callbacks(osg::StateSet *stateset)
virtual void event(osg::NodeVisitor *, osg::Drawable *)
bool run(osg::Object *object, osg::Object *data)
virtual void apply(osg::Switch &node)
META_NodeVisitor(osgGA, EventVisitor) void setActionAdapter(osgGA
bool requiresEventTraversal() const
virtual void apply(osg::LOD &node)
virtual void apply(osg::Billboard &node)
std::list< osg::ref_ptr< Event > > Events
virtual bool run(osg::Object *object, osg::Object *data)
void handle_callbacks_and_traverse(osg::Node &node)
unsigned int getNumChildrenRequiringEventTraversal() const
typedef void(GL_APIENTRY *GLTexImage3DProc)(GLenum target
virtual void apply(osg::LightSource &node)
bool getEventHandled() const
virtual void apply(osg::Group &node)
osgGA::GUIActionAdapter * getActionAdapter()
void setEventHandled(bool handled)
virtual void apply(osg::OccluderNode &node)
EventQueue::Events & getEvents()
const EventQueue::Events & getEvents() const
void runEventCallbacks(osg::NodeVisitor *nv)
virtual void apply(osg::Projection &node)
osgGA::GUIActionAdapter * _actionAdapter
osg::StateSet * getStateSet()
osg::ref_ptr< GUIEventAdapter > _accumulateEventState