18 #include <osg/Drawable>
22 #include <osg/BlendFunc>
23 #include <osg/BlendEquation>
24 #include <osg/ColorMask>
27 #include <osg/Texture>
28 #include <osgSim/Export>
36 class DtOsgLightPointManager;
78 LightPointVertexAttrib(
int type,
int groupId,
int nodeId,
const osg::Matrix3 §orLocalToLp,
float phase,
const osg::Vec3& pos) :
82 mySectorLocalToLp(sectorLocalToLp),
89 virtual void releaseGLObjects(osg::State* state)
const;
102 virtual osg::Object* clone(
const osg::CopyOp& copyop)
const
106 virtual osg::Object* cloneType()
const
110 virtual bool isSameKindAs(
const osg::Object* obj)
const
114 virtual const char* className()
const
116 return "DtLightPointDrawable";
118 virtual const char* libraryName()
const
122 virtual void accept(osg::NodeVisitor& nv)
124 if (nv.validNodeMask(*
this))
126 nv.pushOntoNodePath(
this);
128 nv.popFromNodePath();
142 virtual void addLightPoint(
const LightPointVertexAttrib& attribData);
145 virtual void removeLightPoints(
const std::vector<int>& nodeIds);
148 virtual void drawImplementation(osg::RenderInfo& renderInfo)
const;
151 virtual void setSimulationTime(
double time);
154 virtual double simulationTime()
const;
157 virtual osg::BoundingBox computeBoundingBox()
const;
162 void slot_reverseZChanged(
bool flag);
209 static const std::string& theClassName();