OpenSceneGraph/include/osg/LightSource
2001-09-19 21:08:56 +00:00

43 lines
1.0 KiB
Plaintext

#ifndef OSG_LIGHTSOURCE
#define OSG_LIGHTSOURCE 1
#include <osg/MemoryAdapter>
#include <osg/NodeVisitor>
#include <osg/Light>
namespace osg {
/** Leaf Node for defining a light in the scene.*/
class SG_EXPORT LightSource : public Node
{
public:
LightSource();
virtual Object* clone() const { return new LightSource(); }
virtual bool isSameKindAs(const Object* obj) const { return dynamic_cast<const LightSource*>(obj)!=NULL; }
virtual const char* className() const { return "LightSource"; }
virtual void accept(NodeVisitor& nv) { nv.apply(*this); }
/** Set the attached light.*/
inline void setLight(Light* light) { _light = light; }
/** Get the attached light.*/
inline Light* getLight() { return _light.get(); }
/** Get the const attached light.*/
inline const Light* getLight() const { return _light.get(); }
protected:
virtual ~LightSource();
virtual const bool computeBound() const;
ref_ptr<Light> _light;
};
};
#endif