Added serailizer support for NodeVisitor, UpdateVisitor, CullVisitor and EventVisitor

git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14367 16af8721-9629-0410-8352-f15c8da7e697
This commit is contained in:
Robert Osfield
2014-07-18 17:17:01 +00:00
parent 50e63ad3ee
commit acb497b2ab
6 changed files with 97 additions and 0 deletions

View File

@@ -38,6 +38,7 @@ SET(TARGET_COMMON_LIBRARIES
)
ADD_SUBDIRECTORY(osg)
ADD_SUBDIRECTORY(osgUtil)
ADD_SUBDIRECTORY(osgAnimation)
ADD_SUBDIRECTORY(osgFX)
ADD_SUBDIRECTORY(osgManipulator)

View File

@@ -0,0 +1,35 @@
#undef OBJECT_CAST
#define OBJECT_CAST dynamic_cast
#include <osg/NodeVisitor>
#include <osgDB/ObjectWrapper>
#include <osgDB/InputStream>
#include <osgDB/OutputStream>
REGISTER_OBJECT_WRAPPER( NodeVistor,
new osg::NodeVisitor,
osg::NodeVisitor,
"osg::Object osg::NodeVisitor" )
{
BEGIN_ENUM_SERIALIZER( TraversalMode, TRAVERSE_NONE );
ADD_ENUM_VALUE( TRAVERSE_NONE );
ADD_ENUM_VALUE( TRAVERSE_PARENTS );
ADD_ENUM_VALUE( TRAVERSE_ALL_CHILDREN );
ADD_ENUM_VALUE( TRAVERSE_ACTIVE_CHILDREN );
END_ENUM_SERIALIZER();
BEGIN_ENUM_SERIALIZER( VisitorType, NODE_VISITOR );
ADD_ENUM_VALUE( UPDATE_VISITOR );
ADD_ENUM_VALUE( EVENT_VISITOR );
ADD_ENUM_VALUE( COLLECT_OCCLUDER_VISITOR );
ADD_ENUM_VALUE( CULL_VISITOR );
END_ENUM_SERIALIZER();
ADD_UINT_SERIALIZER(TraversalMask, 0xffffffff);
ADD_UINT_SERIALIZER(TraversalNumber, 0);
}
#undef OBJECT_CAST
#define OBJECT_CAST static_cast

View File

@@ -0,0 +1,18 @@
#undef OBJECT_CAST
#define OBJECT_CAST dynamic_cast
#include <osgGA/EventVisitor>
#include <osgDB/ObjectWrapper>
#include <osgDB/InputStream>
#include <osgDB/OutputStream>
REGISTER_OBJECT_WRAPPER( EventVisitor,
new osgGA::EventVisitor,
osgGA::EventVisitor,
"osg::Object osg::NodeVisitor osgGA::EventVisitor" )
{
}
#undef OBJECT_CAST
#define OBJECT_CAST static_cast

View File

@@ -0,0 +1,7 @@
FILE(GLOB TARGET_SRC *.cpp)
FILE(GLOB TARGET_H *.h)
SET(TARGET_ADDED_LIBRARIES osgUtil )
#### end var setup ###
SETUP_PLUGIN(osgutil)

View File

@@ -0,0 +1,18 @@
#undef OBJECT_CAST
#define OBJECT_CAST dynamic_cast
#include <osgUtil/CullVisitor>
#include <osgDB/ObjectWrapper>
#include <osgDB/InputStream>
#include <osgDB/OutputStream>
REGISTER_OBJECT_WRAPPER( CullVisitor,
new osgUtil::CullVisitor,
osgUtil::CullVisitor,
"osg::Object osg::NodeVisitor osgUtil::CullVisitor" )
{
}
#undef OBJECT_CAST
#define OBJECT_CAST static_cast

View File

@@ -0,0 +1,18 @@
#undef OBJECT_CAST
#define OBJECT_CAST dynamic_cast
#include <osgUtil/UpdateVisitor>
#include <osgDB/ObjectWrapper>
#include <osgDB/InputStream>
#include <osgDB/OutputStream>
REGISTER_OBJECT_WRAPPER( UpdateVisitor,
new osgUtil::UpdateVisitor,
osgUtil::UpdateVisitor,
"osg::Object osg::NodeVisitor osgUtil::UpdateVisitor" )
{
}
#undef OBJECT_CAST
#define OBJECT_CAST static_cast