Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

LightComponent.h

Go to the documentation of this file.
00001 
00037 #ifndef _AMIRE_COMPONENT_LIGHT_COMPONENT_H
00038 #define _AMIRE_COMPONENT_LIGHT_COMPONENT_H
00039 
00040 #include <amire/common/Defines.h>
00041 #include <amire/common/Light.h>
00042 #include <amire/component/Component.h>
00043 #include <amire/component/CallbackHandlers.h>
00044 
00045 namespace amire {
00046   namespace component {
00051     class AMIRE_EXPORT_API LightComponent : public virtual Component, public virtual DisplayHandler {
00052     public:
00053       static int getMinDepthLevel();
00054       static int getMaxDepthLevel();
00055       static double getMinDepthValue();
00056       static double getMaxDepthValue();
00057       static double getDepthDelta();
00058 
00059     private:
00060       bool initEmit;
00061 
00062     protected: 
00063       amire::common::Light light;
00064       bool enable;
00065 
00066       int enableInSlotId;
00067       int enableOutSlotId;
00068 
00069     public:
00070       LightComponent(ComponentManager *componentManager = NULL);
00071       virtual ~LightComponent();
00072 
00073       virtual osg::ref_ptr<Component> newInstance() const;
00074       virtual void configurationPropertyModified();
00075       virtual void reinitializeEngine(MREngine *engine);
00076       virtual void functionalCallback(MREngine *engine);
00077       virtual osg::ref_ptr<const amire::property::Property> emitOutSlotProperty(int outSlotId);
00078       virtual void receiveInSlotProperty(int inSlotId, const osg::ref_ptr<const amire::property::Property> &property) ;
00079       virtual void displayCallback(MREngine *engine, RenderMode mode);
00080     };
00081   }
00082 }
00083 #endif

Generated on Tue May 20 17:23:53 2003 for AMIRE-Framework by doxygen1.3