| Irrlicht 3D Engine |

ILightSceneNode.h
Go to the documentation of this file.

    00001 // Copyright (C) 2002-2012 Nikolaus Gebhardt
    00002 // This file is part of the "Irrlicht Engine".
    00003 // For conditions of distribution and use, see copyright notice in irrlicht.h
    00004
    00005 #ifndef __I_LIGHT_SCENE_NODE_H_INCLUDED__
    00006 #define __I_LIGHT_SCENE_NODE_H_INCLUDED__
    00007
    00008 #include "ISceneNode.h"
    00009 #include "SLight.h"
    00010
    00011 namespace irr
    00012 {
    00013 namespace scene
    00014 {
    00015
    00017
    00022 class ILightSceneNode : public ISceneNode
    00023 {
    00024 public:
    00025
    00027     ILightSceneNode(ISceneNode* parent, ISceneManager* mgr, s32 id,
    00028         const core::vector3df& position = core::vector3df(0,0,0))
    00029         : ISceneNode(parent, mgr, id, position) {}
    00030
    00032
    00033     virtual void setLightData(const video::SLight& light) = 0;
    00034
    00036
    00037     virtual const video::SLight& getLightData() const = 0;
    00038
    00040
    00041     virtual video::SLight& getLightData() = 0;
    00042
    00044
    00047     virtual void setVisible(bool isVisible) = 0;
    00048
    00050
    00055     virtual void setRadius(f32 radius) = 0;
    00056
    00058
    00059     virtual f32 getRadius() const = 0;
    00060
    00062
    00063     virtual void setLightType(video::E_LIGHT_TYPE type) = 0;
    00064
    00066
    00067     virtual video::E_LIGHT_TYPE getLightType() const = 0;
    00068
    00070
    00074     virtual void enableCastShadow(bool shadow=true) = 0;
    00075
    00077
    00078     virtual bool getCastShadow() const = 0;
    00079 };
    00080
    00081 } // end namespace scene
    00082 } // end namespace irr
    00083
    00084
    00085 #endif
    00086