1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-15 22:19:54 +00:00
openmw-tes3mp/components/sceneutil/visitor.hpp

43 lines
986 B
C++
Raw Normal View History

#ifndef OPENMW_COMPONENTS_SCENEUTIL_VISITOR_H
#define OPENMW_COMPONENTS_SCENEUTIL_VISITOR_H
#include <osg/NodeVisitor>
// Commonly used scene graph visitors
namespace SceneUtil
{
// Find a Group by name, case-insensitive
// If not found, mFoundNode will be NULL
class FindByNameVisitor : public osg::NodeVisitor
{
public:
FindByNameVisitor(const std::string& nameToFind)
: osg::NodeVisitor(TRAVERSE_ALL_CHILDREN)
, mNameToFind(nameToFind)
, mFoundNode(NULL)
{
}
virtual void apply(osg::Group& group);
2015-04-19 12:25:36 +00:00
std::string mNameToFind;
osg::Group* mFoundNode;
};
// Disable freezeOnCull for all visited particlesystems
class DisableFreezeOnCullVisitor : public osg::NodeVisitor
{
public:
DisableFreezeOnCullVisitor()
: osg::NodeVisitor(TRAVERSE_ALL_CHILDREN)
{
}
virtual void apply(osg::Drawable& drw);
};
}
#endif