1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-15 15:49:56 +00:00
openmw-tes3mp/components/sceneutil/visitor.hpp
2015-04-10 23:16:17 +02:00

37 lines
830 B
C++

#ifndef OPENMW_COMPONENTS_SCENEUTIL_VISITOR_H
#define OPENMW_COMPONENTS_SCENEUTIL_VISITOR_H
#include <osg/NodeVisitor>
// Commonly used scene graph visitors
namespace SceneUtil
{
class FindByNameVisitor : public osg::NodeVisitor
{
public:
FindByNameVisitor(const std::string& nameToFind)
: osg::NodeVisitor(TRAVERSE_ALL_CHILDREN)
, mNameToFind(nameToFind)
, mFoundNode(NULL)
{
}
virtual void apply(osg::Node &node)
{
osg::Group* group = node.asGroup();
if (group && node.getName() == mNameToFind)
{
mFoundNode = group;
return;
}
traverse(node);
}
const std::string& mNameToFind;
osg::Group* mFoundNode;
};
}
#endif