Moved the apply(&) default implementations from the header into the NodeVisitor.cpp,
and changed the casts to use static_cast<>.
This commit is contained in:
@@ -11,7 +11,29 @@
|
||||
* OpenSceneGraph Public License for more details.
|
||||
*/
|
||||
#include <osg/NodeVisitor>
|
||||
|
||||
#include <osg/Billboard>
|
||||
#include <osg/ClearNode>
|
||||
#include <osg/ClipNode>
|
||||
#include <osg/CoordinateSystemNode>
|
||||
#include <osg/Geode>
|
||||
#include <osg/Group>
|
||||
#include <osg/LightSource>
|
||||
#include <osg/LOD>
|
||||
#include <osg/MatrixTransform>
|
||||
#include <osg/OccluderNode>
|
||||
#include <osg/OcclusionQueryNode>
|
||||
#include <osg/PagedLOD>
|
||||
#include <osg/PositionAttitudeTransform>
|
||||
#include <osg/Projection>
|
||||
#include <osg/ProxyNode>
|
||||
#include <osg/Sequence>
|
||||
#include <osg/Switch>
|
||||
#include <osg/TexGenNode>
|
||||
#include <osg/Transform>
|
||||
#include <osg/Camera>
|
||||
#include <osg/CameraView>
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
using namespace osg;
|
||||
@@ -44,3 +66,112 @@ NodeVisitor::~NodeVisitor()
|
||||
// if (_traversalVisitor) detach from _traversalVisitor;
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(Node& node)
|
||||
{
|
||||
traverse(node);
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(Geode& node)
|
||||
{
|
||||
apply(static_cast<Node&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(Billboard& node)
|
||||
{
|
||||
apply(static_cast<Geode&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(Group& node)
|
||||
{
|
||||
apply(static_cast<Node&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(ProxyNode& node)
|
||||
{
|
||||
apply(static_cast<Group&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(Projection& node)
|
||||
{
|
||||
apply(static_cast<Group&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(CoordinateSystemNode& node)
|
||||
{
|
||||
apply(static_cast<Group&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(ClipNode& node)
|
||||
{
|
||||
apply(static_cast<Group&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(TexGenNode& node)
|
||||
{
|
||||
apply(static_cast<Group&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(LightSource& node)
|
||||
{
|
||||
apply(static_cast<Group&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(Transform& node)
|
||||
{
|
||||
apply(static_cast<Group&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(Camera& node)
|
||||
{
|
||||
apply(static_cast<Transform&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(CameraView& node)
|
||||
{
|
||||
apply(static_cast<Transform&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(MatrixTransform& node)
|
||||
{
|
||||
apply(static_cast<Transform&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(PositionAttitudeTransform& node)
|
||||
{
|
||||
apply(static_cast<Transform&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(Switch& node)
|
||||
{
|
||||
apply(static_cast<Group&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(Sequence& node)
|
||||
{
|
||||
apply(static_cast<Group&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(LOD& node)
|
||||
{
|
||||
apply(static_cast<Group&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(PagedLOD& node)
|
||||
{
|
||||
apply(static_cast<LOD&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(ClearNode& node)
|
||||
{
|
||||
apply(static_cast<Group&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(OccluderNode& node)
|
||||
{
|
||||
apply(static_cast<Group&>(node));
|
||||
}
|
||||
|
||||
void NodeVisitor::apply(OcclusionQueryNode& node)
|
||||
{
|
||||
apply(static_cast<Group&>(node));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user