--- /dev/null
+/* $Id$
+
+This file is part of libmspgl
+Copyright © 2007 Mikko Rasa, Mikkosoft Productions
+Distributed under the LGPL
+*/
+
+#ifndef MSP_GL_LIGHT_H_
+#define MSP_GL_LIGHT_H_
+
+#include "color.h"
+
+namespace Msp {
+namespace GL {
+
+class Light
+{
+private:
+ Color ambient;
+ Color diffuse;
+ Color specular;
+ float x, y, z, w;
+ float sdx, sdy, sdz;
+ float spot_exp;
+ float spot_cutoff;
+ float attenuation[3];
+
+ static unsigned current;
+
+public:
+ Light();
+ void set_ambient(const Color &c);
+ void set_diffuse(const Color &c);
+ void set_specular(const Color &c);
+ void set_position(float, float, float, float);
+ void apply();
+ void apply_to(unsigned);
+
+ static void activate(unsigned);
+};
+
+} // namespace GL
+} // namespace Msp
+
+#endif