Public Types | |
enum | ModeValues { SWITCH_ON_DISPLAY_LISTS = 0x1, SWITCH_OFF_DISPLAY_LISTS = 0x2, COMPILE_DISPLAY_LISTS = 0x4, COMPILE_STATE_ATTRIBUTES = 0x8, RELEASE_DISPLAY_LISTS = 0x10, RELEASE_STATE_ATTRIBUTES = 0x20, SWITCH_ON_VERTEX_BUFFER_OBJECTS = 0x40, SWITCH_OFF_VERTEX_BUFFER_OBJECTS = 0x80, CHECK_BLACK_LISTED_MODES = 0x100 } |
Operation modes of the. More... | |
typedef unsigned int | Mode |
Public Member Functions | |
GLObjectsVisitor (Mode mode=COMPILE_DISPLAY_LISTS|COMPILE_STATE_ATTRIBUTES|CHECK_BLACK_LISTED_MODES) | |
Construct a GLObjectsVisitor to traverse all children, operating on node according to specified mode, such as to compile or release display list/texture objects etc. | |
virtual void | reset () |
Method to call to reset visitor. | |
void | setMode (Mode mode) |
Set the operational mode of what operations to do on the scene graph. | |
Mode | getMode () const |
Get the operational mode. | |
void | setState (osg::State *state) |
Set the State to use during traversal. | |
osg::State * | getState () |
void | setRenderInfo (osg::RenderInfo &renderInfo) |
osg::RenderInfo & | getRenderInfo () |
virtual void | apply (osg::Node &node) |
Simply traverse using standard NodeVisitor traverse method. | |
virtual void | apply (osg::Geode &node) |
For each Geode visited set the display list usage according to the _displayListMode. | |
void | apply (osg::Drawable &drawable) |
void | apply (osg::StateSet &stateset) |
Protected Types | |
typedef std::set < osg::Drawable * > | DrawableAppliedSet |
typedef std::set < osg::StateSet * > | StatesSetAppliedSet |
Protected Attributes | |
Mode | _mode |
osg::RenderInfo | _renderInfo |
DrawableAppliedSet | _drawablesAppliedSet |
StatesSetAppliedSet | _stateSetAppliedSet |
osg::ref_ptr < osg::Program > | _lastCompiledProgram |
typedef unsigned int osgUtil::GLObjectsVisitor::Mode |
typedef std::set<osg::Drawable*> osgUtil::GLObjectsVisitor::DrawableAppliedSet [protected] |
typedef std::set<osg::StateSet*> osgUtil::GLObjectsVisitor::StatesSetAppliedSet [protected] |
osgUtil::GLObjectsVisitor::GLObjectsVisitor | ( | Mode | mode = COMPILE_DISPLAY_LISTS|COMPILE_STATE_ATTRIBUTES|CHECK_BLACK_LISTED_MODES |
) |
Construct a GLObjectsVisitor to traverse all children, operating on node according to specified mode, such as to compile or release display list/texture objects etc.
Default mode is to compile GL objects.
virtual void osgUtil::GLObjectsVisitor::reset | ( | ) | [inline, virtual] |
Method to call to reset visitor.
Useful if your visitor accumulates state during a traversal, and you plan to reuse the visitor. To flush that state for the next traversal: call reset() prior to each traversal.
Reimplemented from osg::NodeVisitor.
void osgUtil::GLObjectsVisitor::setMode | ( | Mode | mode | ) | [inline] |
Set the operational mode of what operations to do on the scene graph.
Mode osgUtil::GLObjectsVisitor::getMode | ( | ) | const [inline] |
Get the operational mode.
void osgUtil::GLObjectsVisitor::setState | ( | osg::State * | state | ) | [inline] |
Set the State to use during traversal.
osg::State* osgUtil::GLObjectsVisitor::getState | ( | ) | [inline] |
void osgUtil::GLObjectsVisitor::setRenderInfo | ( | osg::RenderInfo & | renderInfo | ) | [inline] |
osg::RenderInfo& osgUtil::GLObjectsVisitor::getRenderInfo | ( | ) | [inline] |
virtual void osgUtil::GLObjectsVisitor::apply | ( | osg::Node & | node | ) | [virtual] |
virtual void osgUtil::GLObjectsVisitor::apply | ( | osg::Geode & | node | ) | [virtual] |
For each Geode visited set the display list usage according to the _displayListMode.
Reimplemented from osg::NodeVisitor.
void osgUtil::GLObjectsVisitor::apply | ( | osg::Drawable & | drawable | ) |
void osgUtil::GLObjectsVisitor::apply | ( | osg::StateSet & | stateset | ) |
Mode osgUtil::GLObjectsVisitor::_mode [protected] |