// ***************************************************************************
//
//   Generated automatically by genwrapper.
//   Please DO NOT EDIT this file!
//
// ***************************************************************************

#include <osgIntrospection/ReflectionMacros>
#include <osgIntrospection/TypedMethodInfo>
#include <osgIntrospection/StaticMethodInfo>
#include <osgIntrospection/Attributes>

#include <osg/PrimitiveSet>
#include <osg/Vec2>
#include <osg/Vec2d>
#include <osg/Vec3>
#include <osg/Vec3d>
#include <osg/Vec4>
#include <osg/Vec4d>
#include <osgUtil/ReversePrimitiveFunctor>

// Must undefine IN and OUT macros defined in Windows headers
#ifdef IN
#undef IN
#endif
#ifdef OUT
#undef OUT
#endif

#include <osg/observer_ptr>
        
BEGIN_ABSTRACT_OBJECT_REFLECTOR(osgUtil::ReversePrimitiveFunctor)
	I_DeclaringFile("osgUtil/ReversePrimitiveFunctor");
	I_BaseType(osg::PrimitiveIndexFunctor);
	I_Constructor0(____ReversePrimitiveFunctor,
	               "",
	               "");
	I_Method0(osg::PrimitiveSet *, getReversedPrimitiveSet,
	          Properties::NON_VIRTUAL,
	          __osg_PrimitiveSet_P1__getReversedPrimitiveSet,
	          "",
	          "");
	I_Method2(void, setVertexArray, IN, unsigned, int, IN, const osg::Vec2 *, x,
	          Properties::VIRTUAL,
	          __void__setVertexArray__unsigned__C5_osg_Vec2_P1,
	          "",
	          "");
	I_Method2(void, setVertexArray, IN, unsigned, int, IN, const osg::Vec3 *, x,
	          Properties::VIRTUAL,
	          __void__setVertexArray__unsigned__C5_osg_Vec3_P1,
	          "",
	          "");
	I_Method2(void, setVertexArray, IN, unsigned, int, IN, const osg::Vec4 *, x,
	          Properties::VIRTUAL,
	          __void__setVertexArray__unsigned__C5_osg_Vec4_P1,
	          "",
	          "");
	I_Method2(void, setVertexArray, IN, unsigned, int, IN, const osg::Vec2d *, x,
	          Properties::VIRTUAL,
	          __void__setVertexArray__unsigned__C5_osg_Vec2d_P1,
	          "",
	          "");
	I_Method2(void, setVertexArray, IN, unsigned, int, IN, const osg::Vec3d *, x,
	          Properties::VIRTUAL,
	          __void__setVertexArray__unsigned__C5_osg_Vec3d_P1,
	          "",
	          "");
	I_Method2(void, setVertexArray, IN, unsigned, int, IN, const osg::Vec4d *, x,
	          Properties::VIRTUAL,
	          __void__setVertexArray__unsigned__C5_osg_Vec4d_P1,
	          "",
	          "");
	I_Method3(void, drawArrays, IN, GLenum, mode, IN, GLint, first, IN, GLsizei, count,
	          Properties::VIRTUAL,
	          __void__drawArrays__GLenum__GLint__GLsizei,
	          "",
	          "");
	I_Method3(void, drawElements, IN, GLenum, mode, IN, GLsizei, count, IN, const GLubyte *, indices,
	          Properties::VIRTUAL,
	          __void__drawElements__GLenum__GLsizei__C5_GLubyte_P1,
	          "",
	          "");
	I_Method3(void, drawElements, IN, GLenum, mode, IN, GLsizei, count, IN, const GLushort *, indices,
	          Properties::VIRTUAL,
	          __void__drawElements__GLenum__GLsizei__C5_GLushort_P1,
	          "",
	          "");
	I_Method3(void, drawElements, IN, GLenum, mode, IN, GLsizei, count, IN, const GLuint *, indices,
	          Properties::VIRTUAL,
	          __void__drawElements__GLenum__GLsizei__C5_GLuint_P1,
	          "",
	          "");
	I_Method1(void, begin, IN, GLenum, mode,
	          Properties::VIRTUAL,
	          __void__begin__GLenum,
	          "Mimics the OpenGL glBegin() function. ",
	          "");
	I_Method1(void, vertex, IN, unsigned, int,
	          Properties::VIRTUAL,
	          __void__vertex__unsigned,
	          "",
	          "");
	I_Method0(void, end,
	          Properties::VIRTUAL,
	          __void__end,
	          "",
	          "");
	I_SimpleProperty(osg::PrimitiveSet *, ReversedPrimitiveSet, 
	                 __osg_PrimitiveSet_P1__getReversedPrimitiveSet, 
	                 0);
	I_PublicMemberProperty(osg::ref_ptr< osg::PrimitiveSet >, _reversedPrimitiveSet);
END_REFLECTOR

