Fluxus::Light Class Reference

#include <Light.h>

Collaboration diagram for Fluxus::Light:

Collaboration graph
[legend]

Public Types

enum  Type { POINT, DIRECTIONAL, SPOT }

Public Member Functions

 Light ()
virtual ~Light ()
Renderer Interface
void Render ()
Accessors
void SetType (Type s)
void SetIndex (int s)
void SetAmbient (dColour s)
void SetDiffuse (dColour s)
void SetSpecular (dColour s)
void SetSpotAngle (float s)
void SetSpotExponent (float s)
void SetPosition (dVector s)
void SetAttenuation (int type, float s)
void SetDirection (dVector s)
dVector GetPosition ()
Camera Locking
Whether the light is to be locked onto the camera

void SetCameraLock (bool s)
bool GetCameraLock ()

Protected Attributes

int m_Index
dColour m_Ambient
dColour m_Diffuse
dColour m_Specular
dVector m_Position
dVector m_Direction
Type m_Type
bool m_CameraLock

Friends

istream & operator>> (istream &s, Light &o)
ostream & operator<< (ostream &s, Light &o)

Detailed Description

The fluxus light This is a fairly simple and stupid abstraction of OpenGL lights.

Definition at line 31 of file Light.h.


Member Enumeration Documentation

enum Fluxus::Light::Type

Enumerator:
POINT 
DIRECTIONAL 
SPOT 

Definition at line 42 of file Light.h.


Constructor & Destructor Documentation

Light::Light (  ) 

Definition at line 6 of file Light.cpp.

Light::~Light (  )  [virtual]

Definition at line 18 of file Light.cpp.


Member Function Documentation

void Light::Render (  ) 

Definition at line 75 of file Light.cpp.

void Fluxus::Light::SetType ( Type  s  )  [inline]

Definition at line 47 of file Light.h.

void Light::SetIndex ( int  s  ) 

Definition at line 23 of file Light.cpp.

void Light::SetAmbient ( dColour  s  ) 

Definition at line 29 of file Light.cpp.

void Light::SetDiffuse ( dColour  s  ) 

Definition at line 34 of file Light.cpp.

void Light::SetSpecular ( dColour  s  ) 

Definition at line 39 of file Light.cpp.

void Light::SetSpotAngle ( float  s  ) 

Definition at line 44 of file Light.cpp.

void Light::SetSpotExponent ( float  s  ) 

Definition at line 49 of file Light.cpp.

void Light::SetPosition ( dVector  s  ) 

Definition at line 54 of file Light.cpp.

void Light::SetAttenuation ( int  type,
float  s 
)

Definition at line 59 of file Light.cpp.

void Light::SetDirection ( dVector  s  ) 

Definition at line 69 of file Light.cpp.

dVector Fluxus::Light::GetPosition (  )  [inline]

Definition at line 57 of file Light.h.

void Fluxus::Light::SetCameraLock ( bool  s  )  [inline]

Definition at line 65 of file Light.h.

bool Fluxus::Light::GetCameraLock (  )  [inline]

Definition at line 66 of file Light.h.


Friends And Related Function Documentation

istream& operator>> ( istream &  s,
Light o 
) [friend]

ostream& operator<< ( ostream &  s,
Light o 
) [friend]


Field Documentation

int Fluxus::Light::m_Index [protected]

Definition at line 72 of file Light.h.

dColour Fluxus::Light::m_Ambient [protected]

Definition at line 73 of file Light.h.

dColour Fluxus::Light::m_Diffuse [protected]

Definition at line 74 of file Light.h.

dColour Fluxus::Light::m_Specular [protected]

Definition at line 75 of file Light.h.

dVector Fluxus::Light::m_Position [protected]

Definition at line 76 of file Light.h.

dVector Fluxus::Light::m_Direction [protected]

Definition at line 77 of file Light.h.

Type Fluxus::Light::m_Type [protected]

Definition at line 79 of file Light.h.

bool Fluxus::Light::m_CameraLock [protected]

Definition at line 80 of file Light.h.


The documentation for this class was generated from the following files:
Generated on Mon Feb 11 06:54:48 2008 for The Fluxus Renderer (libfluxus) by  doxygen 1.5.1