Light.h

Go to the documentation of this file.
00001 
00007 #ifndef LIGHT_H
00008 #define LIGHT_H LIGHT_H
00009 
00010 #include "Vector3D.h"
00011 #include "ColorRGBA.h"
00012 #include "Ray.h"
00013 
00014 class Scene; // forward declaration
00015 
00020 class Light
00021 {
00022 protected:
00023 
00027     friend class Scene;
00028 
00033     Scene* mScene;
00034 
00035 public:
00036 
00041     Light()
00042     {
00043         mScene = NULL;
00044     };
00045     
00046     virtual ~Light() {}
00047 
00055     virtual bool Illuminate(Ray &ray, ColorRGBA &intensity, unsigned int index = 0) = 0;
00056 
00061     virtual unsigned int GetNumberOfRays() const { return 1; }
00062 
00063 };
00064 
00065 #endif

Generated on Thu Jan 31 21:48:48 2008 for RayTracer by  doxygen 1.5.4