Index: /OpenSceneGraph/trunk/src/osgWrappers/introspection/CMakeLists.txt
===================================================================
--- /OpenSceneGraph/trunk/src/osgWrappers/introspection/CMakeLists.txt (revision 10966)
+++ /OpenSceneGraph/trunk/src/osgWrappers/introspection/CMakeLists.txt (revision 10966)
@@ -0,0 +1,155 @@
+PROJECT(OSG_WRAPPERS)
+
+IF(NOT DYNAMIC_OPENSCENEGRAPH)
+    ADD_DEFINITIONS(-DOSG_LIBRARY_STATIC)
+ENDIF()
+
+SET(LIBRARY_OUTPUT_PATH "${LIBRARY_OUTPUT_PATH}/${OSG_PLUGINS}")
+
+SET(CMAKE_SHARED_MODULE_PREFIX ${OSG_PLUGIN_PREFIX})
+
+IF(MSVC80 OR MSVC90)
+    IF(NOT OSG_MSVC_GENERATE_PLUGINS_AND_WRAPPERS_MANIFESTS)
+        SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} /MANIFEST:NO")
+    ENDIF()
+ENDIF()
+
+MACRO(ADD_WRAPPER_LIB SUBDIR EXPORTDEF)
+    SET(TARGET_NAME "osgwrapper_${SUBDIR}")
+#    MESSAGE(STATUS "--inizio-->${TARGET_NAME}<->${LINK}<-")
+
+    FILE(GLOB SRC_FILES ${OSGWRAPPER_DIR}/${SUBDIR}/*.cpp)
+    
+    #-- extract link files, defines, exclude files form additional arguments 
+
+    SET(LISTNAME "TEMP")
+    SET(DEFSTR "")
+
+    FOREACH(ARG ${ARGN})                    # parse remaining args 
+        #MESSAGE(STATUS "+ [${ARG}]")
+        #MESSAGE("ARG-->${ARG}")
+        # if we find our keywords set the active list to given keyname 
+        STRING(COMPARE EQUAL "${ARG}" "LINK" IS_LINK)
+        STRING(COMPARE EQUAL "${ARG}" "DEFINE" IS_DEFINE)
+        STRING(COMPARE EQUAL "${ARG}" "EXCLUDE" IS_EXCLUDE)
+        
+        #MESSAGE(STATUS "STRSTUFF L ${IS_LINK} D ${IS_DEFINE} E ${IS_EXCLUDE}")
+        
+        SET(EXPRESSION ${IS_LINK} OR ${IS_DEFINE} OR ${IS_EXCLUDE})
+        IF(${EXPRESSION})
+            SET(${LISTNAME} ${CURRLIST})
+            # MESSAGE(STATUS "STORED LIST [${LISTNAME}] = (${CURRLIST})")
+            SET(LISTNAME ${ARG})
+            REMOVE(CURRLIST ${CURRLIST} )
+        ELSE()
+            SET(CURRLIST ${CURRLIST} ${ARG})    
+        ENDIF()
+    ENDFOREACH()
+    SET(${LISTNAME} ${CURRLIST})
+    #MESSAGE(STATUS "STORED LIST [${LISTNAME}] = (${CURRLIST})")
+    REMOVE(CURRLIST ${CURRLIST} )
+    
+    #MESSAGE(STATUS "AFTER: EXC (${EXCLUDE}) DEF (${DEFINE}) LINK (${LINK})")
+    FOREACH(EXF ${EXCLUDE})
+        REMOVE(SRC_FILES ${OPENSCENEGRAPH_DIR}/src/${SUBDIR}/${EXF})
+    ENDFOREACH()
+        
+    FOREACH(DEF ${DEFINE})
+        SET(DEFSTR "${DEFSTR} /D \"${DEF}\"")
+        #MESSAGE(STATUS "add symbol : " ${DEF})
+    ENDFOREACH()
+    
+    IF(NOT DEFSTR STREQUAL "")
+        SET_SOURCE_FILES_PROPERTIES(${SRC_FILES} PROPERTIES COMPILE_FLAGS ${DEFSTR})
+        #MESSAGE(STATUS "*********  ADD COMPILE FLAGS ${DEFSTR} **********")
+    ENDIF()
+    
+    #ADD_LIBRARY(${TARGET_NAME} SHARED ${SRC_FILES} )
+    ADD_LIBRARY(${TARGET_NAME} MODULE ${SRC_FILES} )
+        
+    #not sure if needed, but for plugins only msvc need the d suffix
+    IF(NOT MSVC)
+        SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES DEBUG_POSTFIX "")
+    ELSE()
+        IF(OSG_MSVC_VERSIONED_DLL) 
+            #this is a hack... the build place is set to lib/<debug or release> by LIBARARY_OUTPUT_PATH equal to OUTPUT_LIBDIR
+            #the .lib will be crated in ../ so going straight in lib by the IMPORT_PREFIX property
+            #because we want dll placed in OUTPUT_BINDIR ie the bin folder sibling of lib, we can use ../../bin to go there,
+            #it is hardcoded, we should compute OUTPUT_BINDIR position relative to OUTPUT_LIBDIR ... to be implemented
+            #changing bin to something else breaks this hack
+            #the dll are placed in bin/${OSG_PLUGINS} 
+            
+            IF(NOT MSVC_IDE)
+                SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES PREFIX "../bin/${OSG_PLUGINS}/")
+            ELSE()
+                SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES PREFIX "../../bin/${OSG_PLUGINS}/" IMPORT_PREFIX "../")
+            ENDIF()
+
+        ELSE()
+            #in standard mode (unversioned) the .lib and .dll are placed in lib/<debug or release>/${OSG_PLUGINS}.
+            #here the PREFIX property has been used, the same result would be accomplidhe by prepending ${OSG_PLUGINS}/ to OUTPUT_NAME target property
+            SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES PREFIX "${OSG_PLUGINS}/")
+        ENDIF()
+    ENDIF()
+
+    SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES DEFINE_SYMBOL "${EXPORTDEF}" PROJECT_LABEL "Wrapper ${SUBDIR}")
+    IF(MSVC AND OSG_MSVC_VERSIONED_DLL)
+        LINK_INTERNAL(${TARGET_NAME} ${LINK})
+        #when using full path name to specify linkage, it seems that already linked libs must be specified
+        LINK_EXTERNAL(${TARGET_NAME} ${OPENGL_LIBRARIES}) 
+
+    ELSE()
+        TARGET_LINK_LIBRARIES(${TARGET_NAME} ${LINK})
+    ENDIF()
+    #MESSAGE(STATUS "--TARGET_LINK_LIBRARIES-->${TARGET_NAME}<->${LINK}<-")
+    
+    #FIXME: Deprecated
+    REMOVE(DEFINE ${DEFINE})    
+    REMOVE(LINK ${LINK})    
+    REMOVE(EXCLUDE ${EXCLUDE})    
+    
+    IF(WIN32)
+        INSTALL(TARGETS ${TARGET_NAME}
+            RUNTIME DESTINATION bin
+            ARCHIVE DESTINATION lib/${OSG_PLUGINS}
+            LIBRARY DESTINATION bin/${OSG_PLUGINS}
+            COMPONENT libopenscenegraph-wrappers)
+    ELSE()
+        INSTALL(TARGETS ${TARGET_NAME}
+            RUNTIME DESTINATION bin
+            ARCHIVE DESTINATION lib${LIB_POSTFIX}/${OSG_PLUGINS}
+            LIBRARY DESTINATION lib${LIB_POSTFIX}/${OSG_PLUGINS}
+            COMPONENT libopenscenegraph-wrappers)
+    ENDIF()
+ENDMACRO(ADD_WRAPPER_LIB)
+
+SET(OSGWRAPPER_LIB_LIST 
+    OpenThreads
+    osg
+    osgDB
+    osgFX
+    osgGA
+    osgManipulator
+    osgAnimation
+    osgParticle
+    osgPresentation
+    osgShadow
+    osgSim
+    osgTerrain
+    osgText
+    osgUtil
+    osgViewer
+    osgVolume
+    osgWidget
+)
+
+
+SET(OSGWRAPPER_DIR ${CMAKE_CURRENT_SOURCE_DIR})
+
+IF(MSVC)
+    SET(LIBRARY_OUTPUT_PATH ${OUTPUT_LIBDIR})
+ENDIF()
+
+FOREACH(LIB ${OSGWRAPPER_LIB_LIST})
+    ADD_WRAPPER_LIB(${LIB} OSGWRAPPERS_LIBRARY LINK OpenThreads osg osgGA ${LIB} osgIntrospection)    
+ENDFOREACH()
Index: /OpenSceneGraph/trunk/src/osgWrappers/introspection/Doxyfile.template
===================================================================
--- /OpenSceneGraph/trunk/src/osgWrappers/introspection/Doxyfile.template (revision 10966)
+++ /OpenSceneGraph/trunk/src/osgWrappers/introspection/Doxyfile.template (revision 10966)
@@ -0,0 +1,236 @@
+# Doxyfile 1.4.1
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+PROJECT_NAME           = "OSG Introspection Wrappers"
+PROJECT_NUMBER         = 
+OUTPUT_DIRECTORY       = "$(OUTPUT_DIR)"
+CREATE_SUBDIRS         = NO
+OUTPUT_LANGUAGE        = English
+BRIEF_MEMBER_DESC      = YES
+REPEAT_BRIEF           = YES
+ABBREVIATE_BRIEF       = "The $name class" \
+                         "The $name widget" \
+                         "The $name file" \
+                         is \
+                         provides \
+                         specifies \
+                         contains \
+                         represents \
+                         a \
+                         an \
+                         the
+ALWAYS_DETAILED_SEC    = NO
+INLINE_INHERITED_MEMB  = NO
+FULL_PATH_NAMES        = YES
+STRIP_FROM_PATH        = "$(INPUT_DIR)"
+STRIP_FROM_INC_PATH    = 
+SHORT_NAMES            = NO
+JAVADOC_AUTOBRIEF      = YES
+MULTILINE_CPP_IS_BRIEF = NO
+INHERIT_DOCS           = YES
+DISTRIBUTE_GROUP_DOC   = NO
+TAB_SIZE               = 8
+ALIASES                = 
+OPTIMIZE_OUTPUT_FOR_C  = NO
+OPTIMIZE_OUTPUT_JAVA   = NO
+SUBGROUPING            = YES
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+EXTRACT_ALL            = YES
+EXTRACT_PRIVATE        = YES
+EXTRACT_STATIC         = YES
+EXTRACT_LOCAL_CLASSES  = YES
+EXTRACT_LOCAL_METHODS  = NO
+HIDE_UNDOC_MEMBERS     = NO
+HIDE_UNDOC_CLASSES     = NO
+HIDE_FRIEND_COMPOUNDS  = NO
+HIDE_IN_BODY_DOCS      = NO
+INTERNAL_DOCS          = NO
+CASE_SENSE_NAMES       = NO
+HIDE_SCOPE_NAMES       = NO
+SHOW_INCLUDE_FILES     = YES
+INLINE_INFO            = YES
+SORT_MEMBER_DOCS       = YES
+SORT_BRIEF_DOCS        = NO
+SORT_BY_SCOPE_NAME     = NO
+GENERATE_TODOLIST      = NO
+GENERATE_TESTLIST      = NO
+GENERATE_BUGLIST       = NO
+GENERATE_DEPRECATEDLIST= NO
+ENABLED_SECTIONS       = 
+MAX_INITIALIZER_LINES  = 30
+SHOW_USED_FILES        = YES
+SHOW_DIRECTORIES       = YES
+FILE_VERSION_FILTER    = 
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+QUIET                  = YES
+WARNINGS               = YES
+WARN_IF_UNDOCUMENTED   = YES
+WARN_IF_DOC_ERROR      = YES
+WARN_NO_PARAMDOC       = NO
+WARN_FORMAT            = "$file:$line: $text"
+WARN_LOGFILE           = 
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+INPUT                  = "$(INPUT_DIR)include"
+FILE_PATTERNS          = */include/*
+RECURSIVE              = YES
+EXCLUDE                = 
+EXCLUDE_SYMLINKS       = NO
+EXCLUDE_PATTERNS       = "*/include/osgIntrospection/*" "*/include/CVS/*" "*/include/osg*/CVS/*" "*.#*" "*/.svn/*"
+EXAMPLE_PATH           = 
+EXAMPLE_PATTERNS       = *
+EXAMPLE_RECURSIVE      = NO
+IMAGE_PATH             = 
+INPUT_FILTER           = 
+FILTER_PATTERNS        = 
+FILTER_SOURCE_FILES    = NO
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+SOURCE_BROWSER         = NO
+INLINE_SOURCES         = NO
+STRIP_CODE_COMMENTS    = YES
+REFERENCED_BY_RELATION = NO
+REFERENCES_RELATION    = NO
+VERBATIM_HEADERS       = NO
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+ALPHABETICAL_INDEX     = NO
+COLS_IN_ALPHA_INDEX    = 5
+IGNORE_PREFIX          = 
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+GENERATE_HTML          = NO
+HTML_OUTPUT            = html
+HTML_FILE_EXTENSION    = .html
+HTML_HEADER            = 
+HTML_FOOTER            = 
+HTML_STYLESHEET        = 
+HTML_ALIGN_MEMBERS     = YES
+GENERATE_HTMLHELP      = NO
+CHM_FILE               = 
+HHC_LOCATION           = 
+GENERATE_CHI           = NO
+BINARY_TOC             = NO
+TOC_EXPAND             = NO
+DISABLE_INDEX          = NO
+ENUM_VALUES_PER_LINE   = 4
+GENERATE_TREEVIEW      = NO
+TREEVIEW_WIDTH         = 250
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+GENERATE_LATEX         = NO
+LATEX_OUTPUT           = latex
+LATEX_CMD_NAME         = latex
+MAKEINDEX_CMD_NAME     = makeindex
+COMPACT_LATEX          = NO
+PAPER_TYPE             = a4wide
+EXTRA_PACKAGES         = 
+LATEX_HEADER           = 
+PDF_HYPERLINKS         = NO
+USE_PDFLATEX           = NO
+LATEX_BATCHMODE        = NO
+LATEX_HIDE_INDICES     = NO
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+GENERATE_RTF           = NO
+RTF_OUTPUT             = rtf
+COMPACT_RTF            = NO
+RTF_HYPERLINKS         = NO
+RTF_STYLESHEET_FILE    = 
+RTF_EXTENSIONS_FILE    = 
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+GENERATE_MAN           = NO
+MAN_OUTPUT             = man
+MAN_EXTENSION          = .3
+MAN_LINKS              = NO
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+GENERATE_XML           = YES
+XML_OUTPUT             = xml
+XML_SCHEMA             = 
+XML_DTD                = 
+XML_PROGRAMLISTING     = YES
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+GENERATE_AUTOGEN_DEF   = NO
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+GENERATE_PERLMOD       = NO
+PERLMOD_LATEX          = NO
+PERLMOD_PRETTY         = YES
+PERLMOD_MAKEVAR_PREFIX = 
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor   
+#---------------------------------------------------------------------------
+ENABLE_PREPROCESSING   = YES
+MACRO_EXPANSION        = YES
+EXPAND_ONLY_PREDEF     = YES
+SEARCH_INCLUDES        = YES
+INCLUDE_PATH           = "$(INPUT_DIR)include"
+INCLUDE_FILE_PATTERNS  = 
+EXPAND_AS_DEFINED      = META_Object \
+                         META_StateAttribute \
+                         META_Node \
+                         META_Shape \
+                         META_Technique \
+                         META_NodeVisitor \
+                         META_Effect \
+                         META_Action \
+                         META_ActionVisitor \
+                         META_OSGMANIPULATOR_Object
+                          
+PREDEFINED             = 
+SKIP_FUNCTION_MACROS   = YES
+#---------------------------------------------------------------------------
+# Configuration::additions related to external references   
+#---------------------------------------------------------------------------
+TAGFILES               = 
+GENERATE_TAGFILE       = 
+ALLEXTERNALS           = NO
+EXTERNAL_GROUPS        = YES
+PERL_PATH              = /usr/bin/perl
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool   
+#---------------------------------------------------------------------------
+CLASS_DIAGRAMS         = NO
+HIDE_UNDOC_RELATIONS   = YES
+HAVE_DOT               = NO
+CLASS_GRAPH            = YES
+COLLABORATION_GRAPH    = YES
+GROUP_GRAPHS           = YES
+UML_LOOK               = NO
+TEMPLATE_RELATIONS     = NO
+INCLUDE_GRAPH          = YES
+INCLUDED_BY_GRAPH      = YES
+CALL_GRAPH             = NO
+GRAPHICAL_HIERARCHY    = YES
+DIRECTORY_GRAPH        = YES
+DOT_IMAGE_FORMAT       = png
+DOT_PATH               = 
+DOTFILE_DIRS           = 
+MAX_DOT_GRAPH_DEPTH    = 1000
+DOT_TRANSPARENT        = NO
+DOT_MULTI_TARGETS      = NO
+GENERATE_LEGEND        = YES
+DOT_CLEANUP            = YES
+#---------------------------------------------------------------------------
+# Configuration::additions related to the search engine   
+#---------------------------------------------------------------------------
+SEARCHENGINE           = NO
Index: /OpenSceneGraph/trunk/src/osgWrappers/introspection/genwrapper.conf
===================================================================
--- /OpenSceneGraph/trunk/src/osgWrappers/introspection/genwrapper.conf (revision 10966)
+++ /OpenSceneGraph/trunk/src/osgWrappers/introspection/genwrapper.conf (revision 10966)
@@ -0,0 +1,538 @@
+#############################################################################
+#                                                                           #
+#                     GenWrapper Configuration File                         #
+#                                                                           #
+#############################################################################
+
+
+configure library "osgFX"
+	dependency unix "-losgUtil -losgDB"
+end
+
+configure library "osgParticle"
+	dependency unix "-losgUtil -losgDB"
+end
+
+configure library "osgGA"
+	dependency unix "-losgUtil"
+end
+
+configure library "osgSim"
+	dependency unix "-losgUtil -losgText -losgDB"
+end
+
+configure library "osgTerrain"
+	dependency win32-debug      "gdal_iD.lib"
+	dependency win32-release    "gdal_i.lib"
+	dependency unix "-losgDB -losgUtil -losgFX"
+end
+
+configure library "osgText"
+	dependency unix "-losgDB"
+end
+
+configure library "osgVolume"
+	dependency unix "-losgUtil -losgDB -losgGA"
+end
+
+configure library "osgViewer"
+	dependency unix "-losgUtil -losgDB -losgGA -losgText"
+end
+
+#############################################################################
+
+ignore file "osgDB/fstream"
+
+ignore file "osgUtil/PrintVisitor"
+ignore file "osgUtil/OperationArrayFunctor"
+
+ignore file "osgViewer/api/X11/GraphicsWindowX11"
+ignore file "osgViewer/api/Win32/GraphicsWindowWin32"
+ignore file "osgViewer/api/Cocoa/GraphicsWindowCocoa"
+
+suppress reflector "osgUtil::AddRangeFunctor"
+suppress reflector "osgUtil::MultiplyRangeFunctor"
+
+suppress reflector "CPluginFunction"
+suppress reflector "PluginFunctionProxy"
+
+suppress reflector "osgWidget::UIObjectParent"
+
+
+#############################################################################
+
+suppress reflector "osgShadow::ProjectionShadowMap"
+
+suppress reflector "osgShadow::DebugShadowMap::ViewData"
+suppress reflector "osgShadow::DebugShadowMap::ViewData::PolytopeGeometry"
+suppress reflector "osgShadow::ViewDependentShadowTechnique::ViewData"
+
+suppress reflector "osgShadow::MinimalDrawBoundsShadowMap::META_ViewDependentShadowTechniqueData"
+suppress reflector "osgShadow::DebugShadowMap::META_ViewDependentShadowTechniqueData"
+suppress reflector "osgShadow::MinimalCullBoundsShadowMap::META_ViewDependentShadowTechniqueData"
+suppress reflector "osgShadow::MinimalShadowMap::META_ViewDependentShadowTechniqueData"
+suppress reflector "osgShadow::ProjectionShadowMap::META_ViewDependentShadowTechniqueData"
+suppress reflector "osgShadow::StandardShadowMap::META_ViewDependentShadowTechniqueData"
+suppress reflector "osgShadow::ViewDependentShadowTechnique::META_ViewDependentShadowTechniqueData"
+
+
+suppress reflector "osgShadow::ViewDependentShadowTechnique::getViewDependentData"
+suppress reflector "osgShadow::ViewDependentShadowTechnique::setViewDependentData"
+
+#############################################################################
+
+configure file /osg\/GraphicsContext/
+	emit before "#include <osg/Camera>
+	"
+end
+
+configure file /osgViewer\/ViewerBase/
+	emit before "#include <osgViewer/View>
+	"
+end
+
+configure file /osg\/BoundingBox/
+	emit before "#include <osg/BoundingSphere>
+	"
+end
+
+configure file /osg\/BoundingSphere/
+        emit before "#include <osg/BoundingBox>
+        "
+end
+
+configure file /osgDB\/ReaderWriter/
+        emit before "#include <osgDB/Options>
+        "
+end
+
+#############################################################################
+
+# add <io_utils> header to Plane, Quat and Vec* files
+
+configure file /osg\/(Plane|Quat|(Vec(2|3|4)(f|d|b|ub)))/
+	emit before "#include <osg/io_utils>
+	"
+end
+
+# add ReaderWriter and Comparator objects to Vec*, Quat and Plane classes
+
+configure reflector /osg::(Plane|Quat|(Vec(2|3|4)(f|d|b|ub)))/
+	readerwriter "osgIntrospection::StdReaderWriter<reflected_type>"
+	comparator "osgIntrospection::PartialOrderComparator<reflected_type>"
+end
+
+
+# add StateGraph includes in RenderLeaf.cpp
+
+configure file /osgUtil\/RenderLeaf/
+	emit before "#include <osgUtil/StateGraph>
+	"
+end
+
+#############################################################################
+
+# Doxygen fails to detect that std::vector<T> is a base class for
+# osg::Vector*, so we need to specify that manually
+
+configure reflector "osgText::VectorUInt"
+	add base "std::vector<unsigned int>"
+end
+
+
+#############################################################################
+
+# Doxygen/genwrapper is not coping with the new MixinVector so disable associated wrappers
+
+suppress reflector /osg::TemplateIndexArray< GLbyte.*/
+suppress reflector /osg::TemplateIndexArray< GLubyte.*/
+suppress reflector /osg::TemplateIndexArray< GLshort.*/
+suppress reflector /osg::TemplateIndexArray< GLushort.*/
+suppress reflector /osg::TemplateIndexArray< GLint.*/
+suppress reflector /osg::TemplateIndexArray< GLuint.*/
+suppress reflector /osg::TemplateArray< GLfloat.*/
+suppress reflector /osg::TemplateArray< GLdouble.*/
+suppress reflector /osg::TemplateArray< osg::Vec2\s*\,.*/
+suppress reflector /osg::TemplateArray< osg::Vec3\s*\,.*/
+suppress reflector /osg::TemplateArray< osg::Vec4\s*\,.*/
+suppress reflector /osg::TemplateArray< osg::Vec2d\s*\,.*/
+suppress reflector /osg::TemplateArray< osg::Vec3d\s*\,.*/
+suppress reflector /osg::TemplateArray< osg::Vec4d\s*\,.*/
+suppress reflector /osg::TemplateArray< osg::Vec2b\s*\,.*/
+suppress reflector /osg::TemplateArray< osg::Vec3b\s*\,.*/
+suppress reflector /osg::TemplateArray< osg::Vec4b\s*\,.*/
+suppress reflector /osg::TemplateArray< osg::Vec2s\s*\,.*/
+suppress reflector /osg::TemplateArray< osg::Vec3s\s*\,.*/
+suppress reflector /osg::TemplateArray< osg::Vec4s\s*\,.*/
+suppress reflector /osg::TemplateArray< osg::Vec4ub\s*\,.*/
+
+
+suppress reflector "osg::DrawArrayLengths"
+suppress reflector "osg::DrawElementsUByte"
+suppress reflector "osg::DrawElementsUShort"
+suppress reflector "osg::DrawElementsUInt"
+
+suppress reflector "osg::VectorGLsizei"
+suppress reflector "osg::VectorGLubyte"
+suppress reflector "osg::VectorGLushort"
+suppress reflector "osg::VectorGLuint"
+
+suppress reflector "osg::MixinVector< GLsizei >"
+suppress reflector "osg::MixinVector< GLubyte >"
+suppress reflector "osg::MixinVector< GLushort >"
+suppress reflector "osg::MixinVector< GLuint >"
+
+suppress reflector "OpenThreads::Atomic"
+suppress reflector "OpenThreads::AtomicPtr"
+
+suppress reflector "osg::BoundingBoxImpl< osg::Vec3f >"
+suppress reflector "osg::BoundingBoxImpl< osg::Vec3d >"
+
+suppress reflector "osg::BoundingSphereImpl< osg::Vec3f >"
+suppress reflector "osg::BoundingSphereImpl< osg::Vec3d >"
+
+suppress reflector "osgAnimation::TemplateTarget< osg::Quat >"
+suppress reflector "osgAnimation::TemplateTarget< osg::Vec3 >"
+suppress reflector "osgAnimation::TemplateTarget< osg::Vec4 >"
+suppress reflector "osgAnimation::TemplateTarget< osg::Vec2 >"
+suppress reflector "osgAnimation::TemplateTarget< float >"
+suppress reflector "osgAnimation::TemplateTarget< double >"
+
+suppress reflector "osgAnimation::TemplateLinearInterpolator< double, double >"
+suppress reflector "osgAnimation::TemplateLinearInterpolator< float, float >"
+suppress reflector "osgAnimation::TemplateLinearInterpolator< osg::Vec2, osg::Vec2 >"
+suppress reflector "osgAnimation::TemplateLinearInterpolator< osg::Vec3, osg::Vec3 >"
+suppress reflector "osgAnimation::TemplateLinearInterpolator< osg::Vec3, osgAnimation::Vec3Packed >"
+suppress reflector "osgAnimation::TemplateLinearInterpolator< osg::Vec4, osg::Vec4 >"
+suppress reflector "osgAnimation::TemplateSphericalLinearInterpolator< osg::Quat, osg::Quat >"
+
+suppress reflector "osgAnimation::TemplateStepInterpolator< double, double >"
+suppress reflector "osgAnimation::TemplateStepInterpolator< float, float >"
+suppress reflector "osgAnimation::TemplateStepInterpolator< osg::Vec2, osg::Vec2 >"
+suppress reflector "osgAnimation::TemplateStepInterpolator< osg::Vec3, osg::Vec3 >"
+suppress reflector "osgAnimation::TemplateStepInterpolator< osg::Vec3, osgAnimation::Vec3Packed >"
+suppress reflector "osgAnimation::TemplateStepInterpolator< osg::Vec4, osg::Vec4 >"
+suppress reflector "osgAnimation::TemplateStepInterpolator< osg::Quat, osg::Quat >"
+
+suppress reflector "osgAnimation::TemplateCubicBezierInterpolator< float, osgAnimation::FloatCubicBezier >"
+suppress reflector "osgAnimation::TemplateCubicBezierInterpolator< double, osgAnimation::DoubleCubicBezier >"
+suppress reflector "osgAnimation::TemplateCubicBezierInterpolator< osg::Vec2, osgAnimation::Vec2CubicBezier >"
+suppress reflector "osgAnimation::TemplateCubicBezierInterpolator< osg::Vec3, osgAnimation::Vec3CubicBezier >"
+suppress reflector "osgAnimation::TemplateCubicBezierInterpolator< osg::Vec4, osgAnimation::Vec4CubicBezier >"
+
+suppress reflector "osgAnimation::TemplateKeyframe< float >"
+suppress reflector "osgAnimation::TemplateKeyframeContainer< float >"
+    
+suppress reflector "osgAnimation::TemplateKeyframe< double >"
+suppress reflector "osgAnimation::TemplateKeyframeContainer< double >"
+
+suppress reflector "osgAnimation::TemplateKeyframe< osg::Vec2 >"
+suppress reflector "osgAnimation::TemplateKeyframeContainer< osg::Vec2 >"
+
+suppress reflector "osgAnimation::TemplateKeyframe< osg::Vec3 >"
+suppress reflector "osgAnimation::TemplateKeyframeContainer< osg::Vec3 >"
+
+suppress reflector "osgAnimation::TemplateKeyframe< osg::Vec4 >"
+suppress reflector "osgAnimation::TemplateKeyframeContainer< osg::Vec4 >"
+
+suppress reflector "osgAnimation::TemplateKeyframe< osg::Quat >"
+suppress reflector "osgAnimation::TemplateKeyframeContainer< osg::Quat >"
+
+suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::Vec3Packed >"
+suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::Vec3Packed >"
+
+suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::FloatCubicBezier >"
+suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::FloatCubicBezier >"
+    
+suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::DoubleCubicBezier >"
+suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::DoubleCubicBezier >"
+    
+suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::Vec2CubicBezier >"
+suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::Vec2CubicBezier >"
+    
+suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::Vec3CubicBezier >"
+suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::Vec3CubicBezier >"
+    
+suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::Vec4CubicBezier >"
+suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::Vec4CubicBezier >"
+
+suppress reflector "osgAnimation::TemplateCubicBezier< float >"
+suppress reflector "osgAnimation::TemplateCubicBezier< double >"
+suppress reflector "osgAnimation::TemplateCubicBezier< osg::Vec2 >"
+suppress reflector "osgAnimation::TemplateCubicBezier< osg::Vec3 >"
+suppress reflector "osgAnimation::TemplateCubicBezier< osg::Vec4 >"
+
+
+suppress reflector "osgAnimation::std::vector< osg::ref_ptr< osgAnimation::Channel >  >"
+
+suppress reflector "osgAnimation::TemplateChannel< osgAnimation::DoubleStepSampler >"
+suppress reflector "osgAnimation::TemplateChannel< osgAnimation::FloatStepSampler >"
+suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec2StepSampler >"
+suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec3StepSampler >"
+suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec4StepSampler >"
+suppress reflector "osgAnimation::TemplateChannel< osgAnimation::QuatStepSampler >"
+
+suppress reflector "osgAnimation::TemplateChannel< osgAnimation::DoubleLinearSampler >"
+suppress reflector "osgAnimation::TemplateChannel< osgAnimation::FloatLinearSampler >"
+suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec2LinearSampler >"
+suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec3LinearSampler >"
+suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec4LinearSampler >"
+suppress reflector "osgAnimation::TemplateChannel< osgAnimation::QuatSphericalLinearSampler >"
+
+suppress reflector "osgAnimation::TemplateChannel< osgAnimation::FloatCubicBezierSampler >"
+suppress reflector "osgAnimation::TemplateChannel< osgAnimation::DoubleCubicBezierSampler >"
+suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec2CubicBezierSampler >"
+suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec3CubicBezierSampler >"
+suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec4CubicBezierSampler >"
+
+suppress reflector "osgAnimation::AnimationUpdateCallback"
+
+#############################################################################
+
+# StateSet and related types need some advanced tweaking
+
+configure reflector "std::map< osg::StateAttribute::GLMode, osg::StateAttribute::GLModeValue >"
+	replace with "STD_MAP_REFLECTOR_WITH_TYPES(std::map< osg::StateAttribute::GLMode COMMA  osg::StateAttribute::GLModeValue >, osg::StateAttribute::GLMode, osg::StateAttribute::Values)"
+end
+
+configure reflector "osg::StateSet"
+
+	# remove indexed property "Mode" because its index would not belong to a
+	# finite set of values
+		
+	configure property "Mode"
+		replace with ""
+	end	
+	
+end
+
+configure reflector "osg::Geometry"
+
+	# define the count method for some Property
+ 
+		
+	configure property "TexCoordData"
+		count_method "__unsigned_int__getNumTexCoordArrays"
+	end
+
+	configure property "TexCoordIndices"
+		count_method "__unsigned_int__getNumTexCoordArrays"
+	end
+
+	configure property "VertexAttribBinding"
+		count_method "__unsigned_int__getNumVertexAttribArrays"
+	end
+
+	configure property "VertexAttribData"
+		count_method "__unsigned_int__getNumVertexAttribArrays"
+	end
+
+	configure property "VertexAttribIndices"
+		count_method "__unsigned_int__getNumVertexAttribArrays"
+	end
+
+	configure property "VertexAttribNormalize"
+		count_method "__unsigned_int__getNumVertexAttribArrays"
+	end
+	
+end
+
+#############################################################################
+
+# Doxygen fails to detect that /osg::Texture(1D|2D|3D|Rectangle)/ and
+# osgText::Font::GlyphTexture are not-abstract class, so we need
+# to specify that manually
+
+configure reflector /osg::Texture(1D|2D|3D|Rectangle)/
+    object-type
+end
+
+configure reflector "osgText::Font::GlyphTexture"
+    object-type
+end
+
+#############################################################################
+
+# must suppress reflector for osgDB::Output because some of its methods
+# are not supported by osgIntrospection (they return non-const references)
+
+suppress reflector "osgDB::Output"
+
+#############################################################################
+
+# some types are incorrectly detected as value type or object type. Here we
+# specify the type kind explicitly
+
+configure reflector "OpenThreads::Mutex"
+	object-type
+end
+
+configure reflector "OpenThreads::Condition"
+	object-type
+end
+
+configure reflector "OpenThreads::Block"
+	object-type
+end
+
+configure reflector "OpenThreads::BlockCount"
+	object-type
+end
+
+configure reflector "OpenThreads::Barrier"
+	object-type
+end
+
+configure reflector "OpenThreads::ReentrantMutex"
+	object-type
+end
+
+configure reflector "OpenThreads::ReadWriteMutex"
+	object-type
+end
+
+configure reflector "osg::DeleteHandler"
+	object-type
+end
+
+configure reflector "osg::GraphicsContext"
+	abstract-object-type
+end
+
+#############################################################################
+
+# Suppress scoped lock template
+
+suppress reflector "OpenThreads::ScopedLock< OpenThreads::Mutex >"
+
+#############################################################################
+
+# Suppress nested nested class method
+
+configure reflector "osgShadow::OccluderGeometry"
+       configure method /.*_Edge_.*/
+               replace with ""
+       end
+end
+
+#############################################################################
+
+# Doxygen doesn't parse ReadFunc and WriteFunc correctly...
+
+configure reflector "osgDB::DotOsgWrapper::ReadFunc"
+	replace with "TYPE_NAME_ALIAS(bool (*)(osg::Object&,osgDB::Input&), osgDB::DotOsgWrapper::ReadFunc)
+	"
+end
+
+configure reflector "osgDB::DotOsgWrapper::WriteFunc"
+	replace with "TYPE_NAME_ALIAS(bool (*)(const osg::Object&,osgDB::Output&), osgDB::DotOsgWrapper::WriteFunc)
+	"
+end
+
+#############################################################################
+
+# temporary workaround for problems related to ambiguous name resolution
+
+suppress reflector "osg::ref_ptr< const osg::StateAttribute >"
+suppress reflector "osg::ref_ptr< const osgFX::Effect >"
+
+#############################################################################
+
+# Doxygen incorrectly parses function typedefs as methods
+
+suppress reflector "osg::VertexProgram::Extensions"
+suppress reflector "osg::StencilTwoSided::Extensions"
+suppress reflector "osg::Texture3D::Extensions"
+suppress reflector "osg::GL2Extensions"
+suppress reflector "osg::GLBufferObject::Extensions"
+suppress reflector "osg::FBOExtensions"
+suppress reflector "osg::BlendColor::Extensions"
+suppress reflector "osg::BlendEquation::Extensions"
+suppress reflector "osg::BlendFunc::Extensions"
+suppress reflector "osg::FragmentProgram::Extensions"
+suppress reflector "osg::Multisample::Extensions"
+suppress reflector "osg::Point::Extensions"
+suppress reflector "osg::ClampColor::Extensions"
+suppress reflector "osg::Texture::Extensions"
+suppress reflector "osg::Texture2DArray::Extensions"
+suppress reflector "osgSim::ShapeAttribute"
+suppress reflector "osg::Drawable::Extensions"
+
+configure reflector "osg::State"
+	configure method "__typedef__void__APIENTRY_P1"
+		replace with ""
+	end
+end
+
+configure reflector "osgWidget::Window::Getter"
+    replace with ""
+end
+
+configure reflector "osgWidget::MouseHandler::MouseAction"
+    replace with ""
+end
+
+configure reflector "osgWidget::MouseHandler::MouseEvent"
+    replace with ""
+end
+
+
+
+#############################################################################
+
+# avoid functions that use protected types, since those are not handled
+# currently
+
+configure reflector "osgSim::OverlayNode"
+	configure method /.*getOverlayData.*/
+		replace with ""
+	end
+end
+
+configure reflector "osg::Shader"
+	configure method /.*_PerContextShader_.*/
+		replace with ""
+	end
+end
+
+configure reflector "osg::State"
+	configure method /.*_(ModeStack|AttributeStack|ModeMap|AttributeMap|UniformMap)_.*/
+		replace with ""
+	end
+end
+
+configure reflector "osgUtil::Optimizer::TextureAtlasBuilder"
+	configure method /.*_Source_.*/
+		replace with ""
+	end
+end
+
+configure reflector "osgUtil::Tessellator"
+	configure method /.*_VertexPtrToIndexMap_.*/
+		replace with ""
+	end
+end
+
+configure reflector "osgDB::Registry"
+	configure method /.*_(DynamicLibraryList_iterator|DotOsgWrapperMap)_.*/
+		replace with ""
+	end
+end
+
+configure reflector "osgText::FadeText"
+	configure method /.*_ViewBlendColou?rMap_.*/
+		replace with ""
+	end
+end
+
+configure reflector "osgParticle::PrecipitationEffect"
+	configure method /.*_PrecipitationDrawableSet_.*/
+		replace with ""
+	end
+end
+
+configure reflector "osgManipulator::MotionCommand"
+	configure method /.*_SelectionList_.*/
+		replace with ""
+	end
+end
Index: /enSceneGraph/trunk/src/osgWrappers/Doxyfile.template
===================================================================
--- /OpenSceneGraph/trunk/src/osgWrappers/Doxyfile.template (revision 10355)
+++  (revision )
@@ -1,236 +1,0 @@
-# Doxyfile 1.4.1
-
-#---------------------------------------------------------------------------
-# Project related configuration options
-#---------------------------------------------------------------------------
-PROJECT_NAME           = "OSG Introspection Wrappers"
-PROJECT_NUMBER         = 
-OUTPUT_DIRECTORY       = "$(OUTPUT_DIR)"
-CREATE_SUBDIRS         = NO
-OUTPUT_LANGUAGE        = English
-BRIEF_MEMBER_DESC      = YES
-REPEAT_BRIEF           = YES
-ABBREVIATE_BRIEF       = "The $name class" \
-                         "The $name widget" \
-                         "The $name file" \
-                         is \
-                         provides \
-                         specifies \
-                         contains \
-                         represents \
-                         a \
-                         an \
-                         the
-ALWAYS_DETAILED_SEC    = NO
-INLINE_INHERITED_MEMB  = NO
-FULL_PATH_NAMES        = YES
-STRIP_FROM_PATH        = "$(INPUT_DIR)"
-STRIP_FROM_INC_PATH    = 
-SHORT_NAMES            = NO
-JAVADOC_AUTOBRIEF      = YES
-MULTILINE_CPP_IS_BRIEF = NO
-INHERIT_DOCS           = YES
-DISTRIBUTE_GROUP_DOC   = NO
-TAB_SIZE               = 8
-ALIASES                = 
-OPTIMIZE_OUTPUT_FOR_C  = NO
-OPTIMIZE_OUTPUT_JAVA   = NO
-SUBGROUPING            = YES
-#---------------------------------------------------------------------------
-# Build related configuration options
-#---------------------------------------------------------------------------
-EXTRACT_ALL            = YES
-EXTRACT_PRIVATE        = YES
-EXTRACT_STATIC         = YES
-EXTRACT_LOCAL_CLASSES  = YES
-EXTRACT_LOCAL_METHODS  = NO
-HIDE_UNDOC_MEMBERS     = NO
-HIDE_UNDOC_CLASSES     = NO
-HIDE_FRIEND_COMPOUNDS  = NO
-HIDE_IN_BODY_DOCS      = NO
-INTERNAL_DOCS          = NO
-CASE_SENSE_NAMES       = NO
-HIDE_SCOPE_NAMES       = NO
-SHOW_INCLUDE_FILES     = YES
-INLINE_INFO            = YES
-SORT_MEMBER_DOCS       = YES
-SORT_BRIEF_DOCS        = NO
-SORT_BY_SCOPE_NAME     = NO
-GENERATE_TODOLIST      = NO
-GENERATE_TESTLIST      = NO
-GENERATE_BUGLIST       = NO
-GENERATE_DEPRECATEDLIST= NO
-ENABLED_SECTIONS       = 
-MAX_INITIALIZER_LINES  = 30
-SHOW_USED_FILES        = YES
-SHOW_DIRECTORIES       = YES
-FILE_VERSION_FILTER    = 
-#---------------------------------------------------------------------------
-# configuration options related to warning and progress messages
-#---------------------------------------------------------------------------
-QUIET                  = YES
-WARNINGS               = YES
-WARN_IF_UNDOCUMENTED   = YES
-WARN_IF_DOC_ERROR      = YES
-WARN_NO_PARAMDOC       = NO
-WARN_FORMAT            = "$file:$line: $text"
-WARN_LOGFILE           = 
-#---------------------------------------------------------------------------
-# configuration options related to the input files
-#---------------------------------------------------------------------------
-INPUT                  = "$(INPUT_DIR)include"
-FILE_PATTERNS          = */include/*
-RECURSIVE              = YES
-EXCLUDE                = 
-EXCLUDE_SYMLINKS       = NO
-EXCLUDE_PATTERNS       = "*/include/osgIntrospection/*" "*/include/CVS/*" "*/include/osg*/CVS/*" "*.#*" "*/.svn/*"
-EXAMPLE_PATH           = 
-EXAMPLE_PATTERNS       = *
-EXAMPLE_RECURSIVE      = NO
-IMAGE_PATH             = 
-INPUT_FILTER           = 
-FILTER_PATTERNS        = 
-FILTER_SOURCE_FILES    = NO
-#---------------------------------------------------------------------------
-# configuration options related to source browsing
-#---------------------------------------------------------------------------
-SOURCE_BROWSER         = NO
-INLINE_SOURCES         = NO
-STRIP_CODE_COMMENTS    = YES
-REFERENCED_BY_RELATION = NO
-REFERENCES_RELATION    = NO
-VERBATIM_HEADERS       = NO
-#---------------------------------------------------------------------------
-# configuration options related to the alphabetical class index
-#---------------------------------------------------------------------------
-ALPHABETICAL_INDEX     = NO
-COLS_IN_ALPHA_INDEX    = 5
-IGNORE_PREFIX          = 
-#---------------------------------------------------------------------------
-# configuration options related to the HTML output
-#---------------------------------------------------------------------------
-GENERATE_HTML          = NO
-HTML_OUTPUT            = html
-HTML_FILE_EXTENSION    = .html
-HTML_HEADER            = 
-HTML_FOOTER            = 
-HTML_STYLESHEET        = 
-HTML_ALIGN_MEMBERS     = YES
-GENERATE_HTMLHELP      = NO
-CHM_FILE               = 
-HHC_LOCATION           = 
-GENERATE_CHI           = NO
-BINARY_TOC             = NO
-TOC_EXPAND             = NO
-DISABLE_INDEX          = NO
-ENUM_VALUES_PER_LINE   = 4
-GENERATE_TREEVIEW      = NO
-TREEVIEW_WIDTH         = 250
-#---------------------------------------------------------------------------
-# configuration options related to the LaTeX output
-#---------------------------------------------------------------------------
-GENERATE_LATEX         = NO
-LATEX_OUTPUT           = latex
-LATEX_CMD_NAME         = latex
-MAKEINDEX_CMD_NAME     = makeindex
-COMPACT_LATEX          = NO
-PAPER_TYPE             = a4wide
-EXTRA_PACKAGES         = 
-LATEX_HEADER           = 
-PDF_HYPERLINKS         = NO
-USE_PDFLATEX           = NO
-LATEX_BATCHMODE        = NO
-LATEX_HIDE_INDICES     = NO
-#---------------------------------------------------------------------------
-# configuration options related to the RTF output
-#---------------------------------------------------------------------------
-GENERATE_RTF           = NO
-RTF_OUTPUT             = rtf
-COMPACT_RTF            = NO
-RTF_HYPERLINKS         = NO
-RTF_STYLESHEET_FILE    = 
-RTF_EXTENSIONS_FILE    = 
-#---------------------------------------------------------------------------
-# configuration options related to the man page output
-#---------------------------------------------------------------------------
-GENERATE_MAN           = NO
-MAN_OUTPUT             = man
-MAN_EXTENSION          = .3
-MAN_LINKS              = NO
-#---------------------------------------------------------------------------
-# configuration options related to the XML output
-#---------------------------------------------------------------------------
-GENERATE_XML           = YES
-XML_OUTPUT             = xml
-XML_SCHEMA             = 
-XML_DTD                = 
-XML_PROGRAMLISTING     = YES
-#---------------------------------------------------------------------------
-# configuration options for the AutoGen Definitions output
-#---------------------------------------------------------------------------
-GENERATE_AUTOGEN_DEF   = NO
-#---------------------------------------------------------------------------
-# configuration options related to the Perl module output
-#---------------------------------------------------------------------------
-GENERATE_PERLMOD       = NO
-PERLMOD_LATEX          = NO
-PERLMOD_PRETTY         = YES
-PERLMOD_MAKEVAR_PREFIX = 
-#---------------------------------------------------------------------------
-# Configuration options related to the preprocessor   
-#---------------------------------------------------------------------------
-ENABLE_PREPROCESSING   = YES
-MACRO_EXPANSION        = YES
-EXPAND_ONLY_PREDEF     = YES
-SEARCH_INCLUDES        = YES
-INCLUDE_PATH           = "$(INPUT_DIR)include"
-INCLUDE_FILE_PATTERNS  = 
-EXPAND_AS_DEFINED      = META_Object \
-                         META_StateAttribute \
-                         META_Node \
-                         META_Shape \
-                         META_Technique \
-                         META_NodeVisitor \
-                         META_Effect \
-                         META_Action \
-                         META_ActionVisitor \
-                         META_OSGMANIPULATOR_Object
-                          
-PREDEFINED             = 
-SKIP_FUNCTION_MACROS   = YES
-#---------------------------------------------------------------------------
-# Configuration::additions related to external references   
-#---------------------------------------------------------------------------
-TAGFILES               = 
-GENERATE_TAGFILE       = 
-ALLEXTERNALS           = NO
-EXTERNAL_GROUPS        = YES
-PERL_PATH              = /usr/bin/perl
-#---------------------------------------------------------------------------
-# Configuration options related to the dot tool   
-#---------------------------------------------------------------------------
-CLASS_DIAGRAMS         = NO
-HIDE_UNDOC_RELATIONS   = YES
-HAVE_DOT               = NO
-CLASS_GRAPH            = YES
-COLLABORATION_GRAPH    = YES
-GROUP_GRAPHS           = YES
-UML_LOOK               = NO
-TEMPLATE_RELATIONS     = NO
-INCLUDE_GRAPH          = YES
-INCLUDED_BY_GRAPH      = YES
-CALL_GRAPH             = NO
-GRAPHICAL_HIERARCHY    = YES
-DIRECTORY_GRAPH        = YES
-DOT_IMAGE_FORMAT       = png
-DOT_PATH               = 
-DOTFILE_DIRS           = 
-MAX_DOT_GRAPH_DEPTH    = 1000
-DOT_TRANSPARENT        = NO
-DOT_MULTI_TARGETS      = NO
-GENERATE_LEGEND        = YES
-DOT_CLEANUP            = YES
-#---------------------------------------------------------------------------
-# Configuration::additions related to the search engine   
-#---------------------------------------------------------------------------
-SEARCHENGINE           = NO
Index: /enSceneGraph/trunk/src/osgWrappers/genwrapper.conf
===================================================================
--- /OpenSceneGraph/trunk/src/osgWrappers/genwrapper.conf (revision 10653)
+++  (revision )
@@ -1,538 +1,0 @@
-#############################################################################
-#                                                                           #
-#                     GenWrapper Configuration File                         #
-#                                                                           #
-#############################################################################
-
-
-configure library "osgFX"
-	dependency unix "-losgUtil -losgDB"
-end
-
-configure library "osgParticle"
-	dependency unix "-losgUtil -losgDB"
-end
-
-configure library "osgGA"
-	dependency unix "-losgUtil"
-end
-
-configure library "osgSim"
-	dependency unix "-losgUtil -losgText -losgDB"
-end
-
-configure library "osgTerrain"
-	dependency win32-debug      "gdal_iD.lib"
-	dependency win32-release    "gdal_i.lib"
-	dependency unix "-losgDB -losgUtil -losgFX"
-end
-
-configure library "osgText"
-	dependency unix "-losgDB"
-end
-
-configure library "osgVolume"
-	dependency unix "-losgUtil -losgDB -losgGA"
-end
-
-configure library "osgViewer"
-	dependency unix "-losgUtil -losgDB -losgGA -losgText"
-end
-
-#############################################################################
-
-ignore file "osgDB/fstream"
-
-ignore file "osgUtil/PrintVisitor"
-ignore file "osgUtil/OperationArrayFunctor"
-
-ignore file "osgViewer/api/X11/GraphicsWindowX11"
-ignore file "osgViewer/api/Win32/GraphicsWindowWin32"
-ignore file "osgViewer/api/Cocoa/GraphicsWindowCocoa"
-
-suppress reflector "osgUtil::AddRangeFunctor"
-suppress reflector "osgUtil::MultiplyRangeFunctor"
-
-suppress reflector "CPluginFunction"
-suppress reflector "PluginFunctionProxy"
-
-suppress reflector "osgWidget::UIObjectParent"
-
-
-#############################################################################
-
-suppress reflector "osgShadow::ProjectionShadowMap"
-
-suppress reflector "osgShadow::DebugShadowMap::ViewData"
-suppress reflector "osgShadow::DebugShadowMap::ViewData::PolytopeGeometry"
-suppress reflector "osgShadow::ViewDependentShadowTechnique::ViewData"
-
-suppress reflector "osgShadow::MinimalDrawBoundsShadowMap::META_ViewDependentShadowTechniqueData"
-suppress reflector "osgShadow::DebugShadowMap::META_ViewDependentShadowTechniqueData"
-suppress reflector "osgShadow::MinimalCullBoundsShadowMap::META_ViewDependentShadowTechniqueData"
-suppress reflector "osgShadow::MinimalShadowMap::META_ViewDependentShadowTechniqueData"
-suppress reflector "osgShadow::ProjectionShadowMap::META_ViewDependentShadowTechniqueData"
-suppress reflector "osgShadow::StandardShadowMap::META_ViewDependentShadowTechniqueData"
-suppress reflector "osgShadow::ViewDependentShadowTechnique::META_ViewDependentShadowTechniqueData"
-
-
-suppress reflector "osgShadow::ViewDependentShadowTechnique::getViewDependentData"
-suppress reflector "osgShadow::ViewDependentShadowTechnique::setViewDependentData"
-
-#############################################################################
-
-configure file /osg\/GraphicsContext/
-	emit before "#include <osg/Camera>
-	"
-end
-
-configure file /osgViewer\/ViewerBase/
-	emit before "#include <osgViewer/View>
-	"
-end
-
-configure file /osg\/BoundingBox/
-	emit before "#include <osg/BoundingSphere>
-	"
-end
-
-configure file /osg\/BoundingSphere/
-        emit before "#include <osg/BoundingBox>
-        "
-end
-
-configure file /osgDB\/ReaderWriter/
-        emit before "#include <osgDB/Options>
-        "
-end
-
-#############################################################################
-
-# add <io_utils> header to Plane, Quat and Vec* files
-
-configure file /osg\/(Plane|Quat|(Vec(2|3|4)(f|d|b|ub)))/
-	emit before "#include <osg/io_utils>
-	"
-end
-
-# add ReaderWriter and Comparator objects to Vec*, Quat and Plane classes
-
-configure reflector /osg::(Plane|Quat|(Vec(2|3|4)(f|d|b|ub)))/
-	readerwriter "osgIntrospection::StdReaderWriter<reflected_type>"
-	comparator "osgIntrospection::PartialOrderComparator<reflected_type>"
-end
-
-
-# add StateGraph includes in RenderLeaf.cpp
-
-configure file /osgUtil\/RenderLeaf/
-	emit before "#include <osgUtil/StateGraph>
-	"
-end
-
-#############################################################################
-
-# Doxygen fails to detect that std::vector<T> is a base class for
-# osg::Vector*, so we need to specify that manually
-
-configure reflector "osgText::VectorUInt"
-	add base "std::vector<unsigned int>"
-end
-
-
-#############################################################################
-
-# Doxygen/genwrapper is not coping with the new MixinVector so disable associated wrappers
-
-suppress reflector /osg::TemplateIndexArray< GLbyte.*/
-suppress reflector /osg::TemplateIndexArray< GLubyte.*/
-suppress reflector /osg::TemplateIndexArray< GLshort.*/
-suppress reflector /osg::TemplateIndexArray< GLushort.*/
-suppress reflector /osg::TemplateIndexArray< GLint.*/
-suppress reflector /osg::TemplateIndexArray< GLuint.*/
-suppress reflector /osg::TemplateArray< GLfloat.*/
-suppress reflector /osg::TemplateArray< GLdouble.*/
-suppress reflector /osg::TemplateArray< osg::Vec2\s*\,.*/
-suppress reflector /osg::TemplateArray< osg::Vec3\s*\,.*/
-suppress reflector /osg::TemplateArray< osg::Vec4\s*\,.*/
-suppress reflector /osg::TemplateArray< osg::Vec2d\s*\,.*/
-suppress reflector /osg::TemplateArray< osg::Vec3d\s*\,.*/
-suppress reflector /osg::TemplateArray< osg::Vec4d\s*\,.*/
-suppress reflector /osg::TemplateArray< osg::Vec2b\s*\,.*/
-suppress reflector /osg::TemplateArray< osg::Vec3b\s*\,.*/
-suppress reflector /osg::TemplateArray< osg::Vec4b\s*\,.*/
-suppress reflector /osg::TemplateArray< osg::Vec2s\s*\,.*/
-suppress reflector /osg::TemplateArray< osg::Vec3s\s*\,.*/
-suppress reflector /osg::TemplateArray< osg::Vec4s\s*\,.*/
-suppress reflector /osg::TemplateArray< osg::Vec4ub\s*\,.*/
-
-
-suppress reflector "osg::DrawArrayLengths"
-suppress reflector "osg::DrawElementsUByte"
-suppress reflector "osg::DrawElementsUShort"
-suppress reflector "osg::DrawElementsUInt"
-
-suppress reflector "osg::VectorGLsizei"
-suppress reflector "osg::VectorGLubyte"
-suppress reflector "osg::VectorGLushort"
-suppress reflector "osg::VectorGLuint"
-
-suppress reflector "osg::MixinVector< GLsizei >"
-suppress reflector "osg::MixinVector< GLubyte >"
-suppress reflector "osg::MixinVector< GLushort >"
-suppress reflector "osg::MixinVector< GLuint >"
-
-suppress reflector "OpenThreads::Atomic"
-suppress reflector "OpenThreads::AtomicPtr"
-
-suppress reflector "osg::BoundingBoxImpl< osg::Vec3f >"
-suppress reflector "osg::BoundingBoxImpl< osg::Vec3d >"
-
-suppress reflector "osg::BoundingSphereImpl< osg::Vec3f >"
-suppress reflector "osg::BoundingSphereImpl< osg::Vec3d >"
-
-suppress reflector "osgAnimation::TemplateTarget< osg::Quat >"
-suppress reflector "osgAnimation::TemplateTarget< osg::Vec3 >"
-suppress reflector "osgAnimation::TemplateTarget< osg::Vec4 >"
-suppress reflector "osgAnimation::TemplateTarget< osg::Vec2 >"
-suppress reflector "osgAnimation::TemplateTarget< float >"
-suppress reflector "osgAnimation::TemplateTarget< double >"
-
-suppress reflector "osgAnimation::TemplateLinearInterpolator< double, double >"
-suppress reflector "osgAnimation::TemplateLinearInterpolator< float, float >"
-suppress reflector "osgAnimation::TemplateLinearInterpolator< osg::Vec2, osg::Vec2 >"
-suppress reflector "osgAnimation::TemplateLinearInterpolator< osg::Vec3, osg::Vec3 >"
-suppress reflector "osgAnimation::TemplateLinearInterpolator< osg::Vec3, osgAnimation::Vec3Packed >"
-suppress reflector "osgAnimation::TemplateLinearInterpolator< osg::Vec4, osg::Vec4 >"
-suppress reflector "osgAnimation::TemplateSphericalLinearInterpolator< osg::Quat, osg::Quat >"
-
-suppress reflector "osgAnimation::TemplateStepInterpolator< double, double >"
-suppress reflector "osgAnimation::TemplateStepInterpolator< float, float >"
-suppress reflector "osgAnimation::TemplateStepInterpolator< osg::Vec2, osg::Vec2 >"
-suppress reflector "osgAnimation::TemplateStepInterpolator< osg::Vec3, osg::Vec3 >"
-suppress reflector "osgAnimation::TemplateStepInterpolator< osg::Vec3, osgAnimation::Vec3Packed >"
-suppress reflector "osgAnimation::TemplateStepInterpolator< osg::Vec4, osg::Vec4 >"
-suppress reflector "osgAnimation::TemplateStepInterpolator< osg::Quat, osg::Quat >"
-
-suppress reflector "osgAnimation::TemplateCubicBezierInterpolator< float, osgAnimation::FloatCubicBezier >"
-suppress reflector "osgAnimation::TemplateCubicBezierInterpolator< double, osgAnimation::DoubleCubicBezier >"
-suppress reflector "osgAnimation::TemplateCubicBezierInterpolator< osg::Vec2, osgAnimation::Vec2CubicBezier >"
-suppress reflector "osgAnimation::TemplateCubicBezierInterpolator< osg::Vec3, osgAnimation::Vec3CubicBezier >"
-suppress reflector "osgAnimation::TemplateCubicBezierInterpolator< osg::Vec4, osgAnimation::Vec4CubicBezier >"
-
-suppress reflector "osgAnimation::TemplateKeyframe< float >"
-suppress reflector "osgAnimation::TemplateKeyframeContainer< float >"
-    
-suppress reflector "osgAnimation::TemplateKeyframe< double >"
-suppress reflector "osgAnimation::TemplateKeyframeContainer< double >"
-
-suppress reflector "osgAnimation::TemplateKeyframe< osg::Vec2 >"
-suppress reflector "osgAnimation::TemplateKeyframeContainer< osg::Vec2 >"
-
-suppress reflector "osgAnimation::TemplateKeyframe< osg::Vec3 >"
-suppress reflector "osgAnimation::TemplateKeyframeContainer< osg::Vec3 >"
-
-suppress reflector "osgAnimation::TemplateKeyframe< osg::Vec4 >"
-suppress reflector "osgAnimation::TemplateKeyframeContainer< osg::Vec4 >"
-
-suppress reflector "osgAnimation::TemplateKeyframe< osg::Quat >"
-suppress reflector "osgAnimation::TemplateKeyframeContainer< osg::Quat >"
-
-suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::Vec3Packed >"
-suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::Vec3Packed >"
-
-suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::FloatCubicBezier >"
-suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::FloatCubicBezier >"
-    
-suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::DoubleCubicBezier >"
-suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::DoubleCubicBezier >"
-    
-suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::Vec2CubicBezier >"
-suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::Vec2CubicBezier >"
-    
-suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::Vec3CubicBezier >"
-suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::Vec3CubicBezier >"
-    
-suppress reflector "osgAnimation::TemplateKeyframe< osgAnimation::Vec4CubicBezier >"
-suppress reflector "osgAnimation::TemplateKeyframeContainer< osgAnimation::Vec4CubicBezier >"
-
-suppress reflector "osgAnimation::TemplateCubicBezier< float >"
-suppress reflector "osgAnimation::TemplateCubicBezier< double >"
-suppress reflector "osgAnimation::TemplateCubicBezier< osg::Vec2 >"
-suppress reflector "osgAnimation::TemplateCubicBezier< osg::Vec3 >"
-suppress reflector "osgAnimation::TemplateCubicBezier< osg::Vec4 >"
-
-
-suppress reflector "osgAnimation::std::vector< osg::ref_ptr< osgAnimation::Channel >  >"
-
-suppress reflector "osgAnimation::TemplateChannel< osgAnimation::DoubleStepSampler >"
-suppress reflector "osgAnimation::TemplateChannel< osgAnimation::FloatStepSampler >"
-suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec2StepSampler >"
-suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec3StepSampler >"
-suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec4StepSampler >"
-suppress reflector "osgAnimation::TemplateChannel< osgAnimation::QuatStepSampler >"
-
-suppress reflector "osgAnimation::TemplateChannel< osgAnimation::DoubleLinearSampler >"
-suppress reflector "osgAnimation::TemplateChannel< osgAnimation::FloatLinearSampler >"
-suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec2LinearSampler >"
-suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec3LinearSampler >"
-suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec4LinearSampler >"
-suppress reflector "osgAnimation::TemplateChannel< osgAnimation::QuatSphericalLinearSampler >"
-
-suppress reflector "osgAnimation::TemplateChannel< osgAnimation::FloatCubicBezierSampler >"
-suppress reflector "osgAnimation::TemplateChannel< osgAnimation::DoubleCubicBezierSampler >"
-suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec2CubicBezierSampler >"
-suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec3CubicBezierSampler >"
-suppress reflector "osgAnimation::TemplateChannel< osgAnimation::Vec4CubicBezierSampler >"
-
-suppress reflector "osgAnimation::AnimationUpdateCallback"
-
-#############################################################################
-
-# StateSet and related types need some advanced tweaking
-
-configure reflector "std::map< osg::StateAttribute::GLMode, osg::StateAttribute::GLModeValue >"
-	replace with "STD_MAP_REFLECTOR_WITH_TYPES(std::map< osg::StateAttribute::GLMode COMMA  osg::StateAttribute::GLModeValue >, osg::StateAttribute::GLMode, osg::StateAttribute::Values)"
-end
-
-configure reflector "osg::StateSet"
-
-	# remove indexed property "Mode" because its index would not belong to a
-	# finite set of values
-		
-	configure property "Mode"
-		replace with ""
-	end	
-	
-end
-
-configure reflector "osg::Geometry"
-
-	# define the count method for some Property
- 
-		
-	configure property "TexCoordData"
-		count_method "__unsigned_int__getNumTexCoordArrays"
-	end
-
-	configure property "TexCoordIndices"
-		count_method "__unsigned_int__getNumTexCoordArrays"
-	end
-
-	configure property "VertexAttribBinding"
-		count_method "__unsigned_int__getNumVertexAttribArrays"
-	end
-
-	configure property "VertexAttribData"
-		count_method "__unsigned_int__getNumVertexAttribArrays"
-	end
-
-	configure property "VertexAttribIndices"
-		count_method "__unsigned_int__getNumVertexAttribArrays"
-	end
-
-	configure property "VertexAttribNormalize"
-		count_method "__unsigned_int__getNumVertexAttribArrays"
-	end
-	
-end
-
-#############################################################################
-
-# Doxygen fails to detect that /osg::Texture(1D|2D|3D|Rectangle)/ and
-# osgText::Font::GlyphTexture are not-abstract class, so we need
-# to specify that manually
-
-configure reflector /osg::Texture(1D|2D|3D|Rectangle)/
-    object-type
-end
-
-configure reflector "osgText::Font::GlyphTexture"
-    object-type
-end
-
-#############################################################################
-
-# must suppress reflector for osgDB::Output because some of its methods
-# are not supported by osgIntrospection (they return non-const references)
-
-suppress reflector "osgDB::Output"
-
-#############################################################################
-
-# some types are incorrectly detected as value type or object type. Here we
-# specify the type kind explicitly
-
-configure reflector "OpenThreads::Mutex"
-	object-type
-end
-
-configure reflector "OpenThreads::Condition"
-	object-type
-end
-
-configure reflector "OpenThreads::Block"
-	object-type
-end
-
-configure reflector "OpenThreads::BlockCount"
-	object-type
-end
-
-configure reflector "OpenThreads::Barrier"
-	object-type
-end
-
-configure reflector "OpenThreads::ReentrantMutex"
-	object-type
-end
-
-configure reflector "OpenThreads::ReadWriteMutex"
-	object-type
-end
-
-configure reflector "osg::DeleteHandler"
-	object-type
-end
-
-configure reflector "osg::GraphicsContext"
-	abstract-object-type
-end
-
-#############################################################################
-
-# Suppress scoped lock template
-
-suppress reflector "OpenThreads::ScopedLock< OpenThreads::Mutex >"
-
-#############################################################################
-
-# Suppress nested nested class method
-
-configure reflector "osgShadow::OccluderGeometry"
-       configure method /.*_Edge_.*/
-               replace with ""
-       end
-end
-
-#############################################################################
-
-# Doxygen doesn't parse ReadFunc and WriteFunc correctly...
-
-configure reflector "osgDB::DotOsgWrapper::ReadFunc"
-	replace with "TYPE_NAME_ALIAS(bool (*)(osg::Object&,osgDB::Input&), osgDB::DotOsgWrapper::ReadFunc)
-	"
-end
-
-configure reflector "osgDB::DotOsgWrapper::WriteFunc"
-	replace with "TYPE_NAME_ALIAS(bool (*)(const osg::Object&,osgDB::Output&), osgDB::DotOsgWrapper::WriteFunc)
-	"
-end
-
-#############################################################################
-
-# temporary workaround for problems related to ambiguous name resolution
-
-suppress reflector "osg::ref_ptr< const osg::StateAttribute >"
-suppress reflector "osg::ref_ptr< const osgFX::Effect >"
-
-#############################################################################
-
-# Doxygen incorrectly parses function typedefs as methods
-
-suppress reflector "osg::VertexProgram::Extensions"
-suppress reflector "osg::StencilTwoSided::Extensions"
-suppress reflector "osg::Texture3D::Extensions"
-suppress reflector "osg::GL2Extensions"
-suppress reflector "osg::GLBufferObject::Extensions"
-suppress reflector "osg::FBOExtensions"
-suppress reflector "osg::BlendColor::Extensions"
-suppress reflector "osg::BlendEquation::Extensions"
-suppress reflector "osg::BlendFunc::Extensions"
-suppress reflector "osg::FragmentProgram::Extensions"
-suppress reflector "osg::Multisample::Extensions"
-suppress reflector "osg::Point::Extensions"
-suppress reflector "osg::ClampColor::Extensions"
-suppress reflector "osg::Texture::Extensions"
-suppress reflector "osg::Texture2DArray::Extensions"
-suppress reflector "osgSim::ShapeAttribute"
-suppress reflector "osg::Drawable::Extensions"
-
-configure reflector "osg::State"
-	configure method "__typedef__void__APIENTRY_P1"
-		replace with ""
-	end
-end
-
-configure reflector "osgWidget::Window::Getter"
-    replace with ""
-end
-
-configure reflector "osgWidget::MouseHandler::MouseAction"
-    replace with ""
-end
-
-configure reflector "osgWidget::MouseHandler::MouseEvent"
-    replace with ""
-end
-
-
-
-#############################################################################
-
-# avoid functions that use protected types, since those are not handled
-# currently
-
-configure reflector "osgSim::OverlayNode"
-	configure method /.*getOverlayData.*/
-		replace with ""
-	end
-end
-
-configure reflector "osg::Shader"
-	configure method /.*_PerContextShader_.*/
-		replace with ""
-	end
-end
-
-configure reflector "osg::State"
-	configure method /.*_(ModeStack|AttributeStack|ModeMap|AttributeMap|UniformMap)_.*/
-		replace with ""
-	end
-end
-
-configure reflector "osgUtil::Optimizer::TextureAtlasBuilder"
-	configure method /.*_Source_.*/
-		replace with ""
-	end
-end
-
-configure reflector "osgUtil::Tessellator"
-	configure method /.*_VertexPtrToIndexMap_.*/
-		replace with ""
-	end
-end
-
-configure reflector "osgDB::Registry"
-	configure method /.*_(DynamicLibraryList_iterator|DotOsgWrapperMap)_.*/
-		replace with ""
-	end
-end
-
-configure reflector "osgText::FadeText"
-	configure method /.*_ViewBlendColou?rMap_.*/
-		replace with ""
-	end
-end
-
-configure reflector "osgParticle::PrecipitationEffect"
-	configure method /.*_PrecipitationDrawableSet_.*/
-		replace with ""
-	end
-end
-
-configure reflector "osgManipulator::MotionCommand"
-	configure method /.*_SelectionList_.*/
-		replace with ""
-	end
-end
Index: /enSceneGraph/trunk/src/osgWrappers/CMakeLists.txt
===================================================================
--- /OpenSceneGraph/trunk/src/osgWrappers/CMakeLists.txt (revision 10850)
+++  (revision )
@@ -1,154 +1,0 @@
-PROJECT(OSG_WRAPPERS)
-
-IF(NOT DYNAMIC_OPENSCENEGRAPH)
-    ADD_DEFINITIONS(-DOSG_LIBRARY_STATIC)
-ENDIF()
-
-SET(LIBRARY_OUTPUT_PATH "${LIBRARY_OUTPUT_PATH}/${OSG_PLUGINS}")
-
-SET(CMAKE_SHARED_MODULE_PREFIX ${OSG_PLUGIN_PREFIX})
-
-IF(MSVC80 OR MSVC90)
-    IF(NOT OSG_MSVC_GENERATE_PLUGINS_AND_WRAPPERS_MANIFESTS)
-        SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} /MANIFEST:NO")
-    ENDIF()
-ENDIF()
-
-MACRO(ADD_WRAPPER_LIB SUBDIR EXPORTDEF)
-    SET(TARGET_NAME "osgwrapper_${SUBDIR}")
-#    MESSAGE(STATUS "--inizio-->${TARGET_NAME}<->${LINK}<-")
-
-    FILE(GLOB SRC_FILES ${OSGWRAPPER_DIR}/${SUBDIR}/*.cpp)
-    
-    #-- extract link files, defines, exclude files form additional arguments 
-
-    SET(LISTNAME "TEMP")
-    SET(DEFSTR "")
-
-    FOREACH(ARG ${ARGN})                    # parse remaining args 
-        #MESSAGE(STATUS "+ [${ARG}]")
-        #MESSAGE("ARG-->${ARG}")
-        # if we find our keywords set the active list to given keyname 
-        STRING(COMPARE EQUAL "${ARG}" "LINK" IS_LINK)
-        STRING(COMPARE EQUAL "${ARG}" "DEFINE" IS_DEFINE)
-        STRING(COMPARE EQUAL "${ARG}" "EXCLUDE" IS_EXCLUDE)
-        
-        #MESSAGE(STATUS "STRSTUFF L ${IS_LINK} D ${IS_DEFINE} E ${IS_EXCLUDE}")
-        
-        SET(EXPRESSION ${IS_LINK} OR ${IS_DEFINE} OR ${IS_EXCLUDE})
-        IF(${EXPRESSION})
-            SET(${LISTNAME} ${CURRLIST})
-            # MESSAGE(STATUS "STORED LIST [${LISTNAME}] = (${CURRLIST})")
-            SET(LISTNAME ${ARG})
-            REMOVE(CURRLIST ${CURRLIST} )
-        ELSE()
-            SET(CURRLIST ${CURRLIST} ${ARG})    
-        ENDIF()
-    ENDFOREACH()
-    SET(${LISTNAME} ${CURRLIST})
-    #MESSAGE(STATUS "STORED LIST [${LISTNAME}] = (${CURRLIST})")
-    REMOVE(CURRLIST ${CURRLIST} )
-    
-    #MESSAGE(STATUS "AFTER: EXC (${EXCLUDE}) DEF (${DEFINE}) LINK (${LINK})")
-    FOREACH(EXF ${EXCLUDE})
-        REMOVE(SRC_FILES ${OPENSCENEGRAPH_DIR}/src/${SUBDIR}/${EXF})
-    ENDFOREACH()
-        
-    FOREACH(DEF ${DEFINE})
-        SET(DEFSTR "${DEFSTR} /D \"${DEF}\"")
-        #MESSAGE(STATUS "add symbol : " ${DEF})
-    ENDFOREACH()
-    
-    IF(NOT DEFSTR STREQUAL "")
-        SET_SOURCE_FILES_PROPERTIES(${SRC_FILES} PROPERTIES COMPILE_FLAGS ${DEFSTR})
-        #MESSAGE(STATUS "*********  ADD COMPILE FLAGS ${DEFSTR} **********")
-    ENDIF()
-    
-    #ADD_LIBRARY(${TARGET_NAME} SHARED ${SRC_FILES} )
-    ADD_LIBRARY(${TARGET_NAME} MODULE ${SRC_FILES} )
-        
-    #not sure if needed, but for plugins only msvc need the d suffix
-    IF(NOT MSVC)
-        SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES DEBUG_POSTFIX "")
-    ELSE()
-        IF(OSG_MSVC_VERSIONED_DLL) 
-            #this is a hack... the build place is set to lib/<debug or release> by LIBARARY_OUTPUT_PATH equal to OUTPUT_LIBDIR
-            #the .lib will be crated in ../ so going straight in lib by the IMPORT_PREFIX property
-            #because we want dll placed in OUTPUT_BINDIR ie the bin folder sibling of lib, we can use ../../bin to go there,
-            #it is hardcoded, we should compute OUTPUT_BINDIR position relative to OUTPUT_LIBDIR ... to be implemented
-            #changing bin to something else breaks this hack
-            #the dll are placed in bin/${OSG_PLUGINS} 
-            
-            IF(NOT MSVC_IDE)
-                SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES PREFIX "../bin/${OSG_PLUGINS}/")
-            ELSE()
-                SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES PREFIX "../../bin/${OSG_PLUGINS}/" IMPORT_PREFIX "../")
-            ENDIF()
-
-        ELSE()
-            #in standard mode (unversioned) the .lib and .dll are placed in lib/<debug or release>/${OSG_PLUGINS}.
-            #here the PREFIX property has been used, the same result would be accomplidhe by prepending ${OSG_PLUGINS}/ to OUTPUT_NAME target property
-            SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES PREFIX "${OSG_PLUGINS}/")
-        ENDIF()
-    ENDIF()
-
-    SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES DEFINE_SYMBOL "${EXPORTDEF}" PROJECT_LABEL "Wrapper ${SUBDIR}")
-    IF(MSVC AND OSG_MSVC_VERSIONED_DLL)
-        LINK_INTERNAL(${TARGET_NAME} ${LINK})
-        #when using full path name to specify linkage, it seems that already linked libs must be specified
-        LINK_EXTERNAL(${TARGET_NAME} ${OPENGL_LIBRARIES}) 
-
-    ELSE()
-        TARGET_LINK_LIBRARIES(${TARGET_NAME} ${LINK})
-    ENDIF()
-    #MESSAGE(STATUS "--TARGET_LINK_LIBRARIES-->${TARGET_NAME}<->${LINK}<-")
-    
-    #FIXME: Deprecated
-    REMOVE(DEFINE ${DEFINE})    
-    REMOVE(LINK ${LINK})    
-    REMOVE(EXCLUDE ${EXCLUDE})    
-    
-    IF(WIN32)
-        INSTALL(TARGETS ${TARGET_NAME}
-            RUNTIME DESTINATION bin
-            ARCHIVE DESTINATION lib/${OSG_PLUGINS}
-            LIBRARY DESTINATION bin/${OSG_PLUGINS}
-            COMPONENT libopenscenegraph-wrappers)
-    ELSE()
-        INSTALL(TARGETS ${TARGET_NAME}
-            RUNTIME DESTINATION bin
-            ARCHIVE DESTINATION lib${LIB_POSTFIX}/${OSG_PLUGINS}
-            LIBRARY DESTINATION lib${LIB_POSTFIX}/${OSG_PLUGINS}
-            COMPONENT libopenscenegraph-wrappers)
-    ENDIF()
-ENDMACRO(ADD_WRAPPER_LIB)
-
-SET(OSGWRAPPER_LIB_LIST 
-    OpenThreads
-    osg
-    osgDB
-    osgFX
-    osgGA
-    osgManipulator
-    osgAnimation
-    osgParticle
-    osgShadow
-    osgSim
-    osgTerrain
-    osgText
-    osgUtil
-    osgViewer
-    osgVolume
-    osgWidget
-)
-
-
-SET(OSGWRAPPER_DIR ${CMAKE_CURRENT_SOURCE_DIR})
-
-IF(MSVC)
-    SET(LIBRARY_OUTPUT_PATH ${OUTPUT_LIBDIR})
-ENDIF()
-
-FOREACH(LIB ${OSGWRAPPER_LIB_LIST})
-    ADD_WRAPPER_LIB(${LIB} OSGWRAPPERS_LIBRARY LINK OpenThreads osg osgGA ${LIB} osgIntrospection)    
-ENDFOREACH()
