| ## Public API Reference

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# iLightCallback Struct Reference
[Lighting]

Set a callback which is called when this light color is changed. More...

`#include <iengine/light.h>`

Inheritance diagram for iLightCallback:

[legend]
List of all members.

## Public Member Functions
virtual void | OnAttenuationChange (iLight *light, int newatt)=0
| Attenuation will be changed.
virtual void | OnColorChange (iLight *light, const csColor &newcolor)=0
| Light color will be changed.
virtual void | OnDestroy (iLight *light)=0
| Light will be destroyed.
virtual void | OnPositionChange (iLight *light, const csVector3 &newpos)=0
| Light position will be changed.
virtual void | OnRadiusChange (iLight *light, float newradius)=0
| Radius will be changed.
virtual void | OnSectorChange (iLight *light, iSector *newsector)=0
| Sector will be changed.

## Detailed Description

Set a callback which is called when this light color is changed.

The given context will be either an instance of iRenderView, iFrustumView, or else 0.

This callback is used by:

- iLight

Definition at line 155 of file light.h.

## Member Function Documentation

virtual void iLightCallback::OnAttenuationChange | ( | iLight * | light,
|  | int | newatt |
| ) |  |  | `[pure virtual]`

Attenuation will be changed.

It is safe to delete this callback in this function.

virtual void iLightCallback::OnColorChange | ( | iLight * | light,
|  | const csColor & | newcolor |
| ) |  |  | `[pure virtual]`

Light color will be changed.

It is safe to delete this callback in this function.

virtual void iLightCallback::OnDestroy | ( | iLight * | light | ) | `[pure virtual]`

Light will be destroyed.

It is safe to delete this callback in this function.

virtual void iLightCallback::OnPositionChange | ( | iLight * | light,
|  | const csVector3 & | newpos |
| ) |  |  | `[pure virtual]`

Light position will be changed.

It is safe to delete this callback in this function.

virtual void iLightCallback::OnRadiusChange | ( | iLight * | light,
|  | float | newradius |
| ) |  |  | `[pure virtual]`

Radius will be changed.

It is safe to delete this callback in this function.

virtual void iLightCallback::OnSectorChange | ( | iLight * | light,
|  | iSector * | newsector |
| ) |  |  | `[pure virtual]`

Sector will be changed.

It is safe to delete this callback in this function.

The documentation for this struct was generated from the following file:

- iengine/light.h