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

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

#include <osg/BoundingBox>
#include <osg/CameraNode>
#include <osg/CopyOp>
#include <osg/Drawable>
#include <osg/Matrix>
#include <osg/Object>
#include <osg/PrimitiveSet>
#include <osg/State>
#include <osg/StateSet>
#include <osg/Texture2D>
#include <osg/Vec2>
#include <osg/Vec3>
#include <osgSim/Impostor>
#include <osgSim/ImpostorSprite>

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

BEGIN_OBJECT_REFLECTOR(osgSim::ImpostorSprite)
	I_BaseType(osg::Drawable);
	I_Constructor0();
	I_Method0(osg::Object *, cloneType);
	I_Method1(osg::Object *, clone, IN, const osg::CopyOp &, x);
	I_Method1(bool, isSameKindAs, IN, const osg::Object *, obj);
	I_Method0(const char *, libraryName);
	I_Method0(const char *, className);
	I_Method1(void, setParent, IN, osgSim::Impostor *, parent);
	I_Method0(osgSim::Impostor *, getParent);
	I_Method0(const osgSim::Impostor *, getParent);
	I_Method1(void, setStoredLocalEyePoint, IN, const osg::Vec3 &, v);
	I_Method0(const osg::Vec3 &, getStoredLocalEyePoint);
	I_Method1(void, setLastFrameUsed, IN, int, frameNumber);
	I_Method0(int, getLastFrameUsed);
	I_Method0(osg::Vec3 *, getCoords);
	I_Method0(const osg::Vec3 *, getCoords);
	I_Method0(osg::Vec2 *, getTexCoords);
	I_Method0(const osg::Vec2 *, getTexCoords);
	I_Method0(osg::Vec3 *, getControlCoords);
	I_Method0(const osg::Vec3 *, getControlCoords);
	I_Method1(float, calcPixelError, IN, const osg::Matrix &, MVPW);
	I_Method3(void, setTexture, IN, osg::Texture2D *, tex, IN, int, s, IN, int, t);
	I_Method0(osg::Texture2D *, getTexture);
	I_Method0(const osg::Texture2D *, getTexture);
	I_Method0(int, s);
	I_Method0(int, t);
	I_Method1(void, drawImplementation, IN, osg::State &, state);
	I_Method1(bool, supports, IN, const osg::Drawable::AttributeFunctor &, x);
	I_Method1(void, accept, IN, osg::Drawable::AttributeFunctor &, af);
	I_Method1(bool, supports, IN, const osg::Drawable::ConstAttributeFunctor &, x);
	I_Method1(void, accept, IN, osg::Drawable::ConstAttributeFunctor &, af);
	I_Method1(bool, supports, IN, const osg::PrimitiveFunctor &, x);
	I_Method1(void, accept, IN, osg::PrimitiveFunctor &, pf);
	I_Method0(osg::BoundingBox, computeBound);
	I_Method1(void, setCameraNode, IN, osg::CameraNode *, camera);
	I_Method0(osg::CameraNode *, getCameraNode);
	I_Method0(const osg::CameraNode *, getCameraNode);
	I_Property(osg::CameraNode *, CameraNode);
	I_ReadOnlyProperty(osg::Vec3 *, ControlCoords);
	I_ReadOnlyProperty(osg::Vec3 *, Coords);
	I_Property(int, LastFrameUsed);
	I_Property(osgSim::Impostor *, Parent);
	I_Property(const osg::Vec3 &, StoredLocalEyePoint);
	I_ReadOnlyProperty(osg::Vec2 *, TexCoords);
	I_ReadOnlyProperty(osg::Texture2D *, Texture);
	I_PublicMemberProperty(osg::Vec4, _color);
END_REFLECTOR

BEGIN_OBJECT_REFLECTOR(osgSim::ImpostorSpriteManager)
	I_BaseType(osg::Referenced);
	I_Constructor0();
	I_Method0(bool, empty);
	I_Method0(osgSim::ImpostorSprite *, first);
	I_Method0(osgSim::ImpostorSprite *, last);
	I_Method1(void, push_back, IN, osgSim::ImpostorSprite *, is);
	I_Method1(void, remove, IN, osgSim::ImpostorSprite *, is);
	I_Method3(osgSim::ImpostorSprite *, createOrReuseImpostorSprite, IN, int, s, IN, int, t, IN, int, frameNumber);
	I_Method0(osg::StateSet *, createOrReuseStateSet);
	I_Method0(void, reset);
END_REFLECTOR

