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

amire::component::LightComponent Class Reference

Inheritance diagram for amire::component::LightComponent:

amire::component::Component amire::component::DisplayHandler amire::component::Handler amire::component::RenderingHandler amire::component::Handler List of all members.

Public Member Functions

 LightComponent (ComponentManager *componentManager=NULL)
virtual ~LightComponent ()
virtual osg::ref_ptr< ComponentnewInstance () const
virtual void configurationPropertyModified ()
virtual void reinitializeEngine (MREngine *engine)
virtual void functionalCallback (MREngine *engine)
virtual osg::ref_ptr< const
amire::property::Property
emitOutSlotProperty (int outSlotId)
virtual void receiveInSlotProperty (int inSlotId, const osg::ref_ptr< const amire::property::Property > &property)
virtual void displayCallback (MREngine *engine, RenderMode mode)

Static Public Member Functions

int getMinDepthLevel ()
int getMaxDepthLevel ()
double getMinDepthValue ()
double getMaxDepthValue ()
double getDepthDelta ()

Protected Attributes

amire::common::Light light
bool enable
int enableInSlotId
int enableOutSlotId

Detailed Description

The LightComponent provides the functionality of a light source. The default behavior is a head light.


Constructor & Destructor Documentation

amire::component::LightComponent::LightComponent ComponentManager componentManager = NULL  ) 
 

virtual amire::component::LightComponent::~LightComponent  )  [virtual]
 


Member Function Documentation

virtual void amire::component::LightComponent::configurationPropertyModified  )  [virtual]
 

The configurationPropertyModified method is an abstract method that must be implemented by the component implementation class. It is called each time when the configuration property is released, which implies the possibility of a modified configuration property.

Implements amire::component::Component.

virtual void amire::component::LightComponent::displayCallback MREngine engine,
RenderMode  mode
[virtual]
 

The displayCallback method must be overwritten by the derived class and provide OpenGL code for displaying objects augmenting the real world by virtual content. The callback method will be invoked for each frame after the display scene graph is rendered. An assert exception should be thrown in any failure case.

Implements amire::component::DisplayHandler.

virtual osg::ref_ptr<const amire::property::Property> amire::component::LightComponent::emitOutSlotProperty int  outSlotId  )  [virtual]
 

The emitOutSlotProperty method must be implemented to integrate out-slots into the component implementation. It is called, when the out-slot specified by the out-slot id is emitted by the component itself or from outside the component. It must provide the property that should be produced for this emit. An assert exception should be thrown for any failure case.

Reimplemented from amire::component::Component.

virtual void amire::component::LightComponent::functionalCallback MREngine engine  )  [virtual]
 

The functionalCallback method must be overwritten by the derived class and provide the functional or logical behaviour of the callback handler. A logical and functionality for example or the setting of a transformation matrix or scene graph at the MR engine for a specific component would be such a functionality. This callback should be used to integrate the functional behaviour into a component. An assert exception should be thrown in any failure case.

Reimplemented from amire::component::Component.

double amire::component::LightComponent::getDepthDelta  )  [static]
 

int amire::component::LightComponent::getMaxDepthLevel  )  [static]
 

double amire::component::LightComponent::getMaxDepthValue  )  [static]
 

int amire::component::LightComponent::getMinDepthLevel  )  [static]
 

double amire::component::LightComponent::getMinDepthValue  )  [static]
 

virtual osg::ref_ptr<Component> amire::component::LightComponent::newInstance  )  const [virtual]
 

The newInstance() method must be implemented by a component. It must return a new instance of the component. It must not clone the configuration.

Reimplemented from amire::component::Component.

virtual void amire::component::LightComponent::receiveInSlotProperty int  inSlotId,
const osg::ref_ptr< const amire::property::Property > &  property
[virtual]
 

The receiveInSlotProperty method must be implemented to integrate in-slots into the component implementation. It is called when the component receives a property at the in-slot specified by its in-slot id. An assert exception should be thrown for any failure case.

Reimplemented from amire::component::Component.

virtual void amire::component::LightComponent::reinitializeEngine MREngine engine  )  [virtual]
 

DEPRECATED: Will be renamed to to reintitialize as soon as possible!!!
The reinitializeEngine method is called by the MR engine to initialize the scene graph of the MR engine. It is called when the component manager of the MR engine has changed. The default implementation does nothing. An assert exception should be thrown in any failure case.

Reimplemented from amire::component::Component.


Member Data Documentation

bool amire::component::LightComponent::enable [protected]
 

int amire::component::LightComponent::enableInSlotId [protected]
 

int amire::component::LightComponent::enableOutSlotId [protected]
 

amire::common::Light amire::component::LightComponent::light [protected]
 


The documentation for this class was generated from the following file:
Generated on Tue May 20 17:23:57 2003 for AMIRE-Framework by doxygen1.3