]> git.tdb.fi Git - libs/gl.git/blobdiff - source/material.h
Check the flat qualifier from the correct member
[libs/gl.git] / source / material.h
diff --git a/source/material.h b/source/material.h
deleted file mode 100644 (file)
index f244636..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-#ifndef MSP_GL_MATERIAL_H_
-#define MSP_GL_MATERIAL_H_
-
-#include <msp/datafile/objectloader.h>
-#include "bindable.h"
-#include "color.h"
-
-namespace Msp {
-namespace GL {
-
-/**
-Stores OpenGL material properties.  Since OpenGL does not support material
-objects, application of material is done with several calls to glMaterial.
-*/
-class Material: public BindableWithDefault<Material>
-{
-public:
-       class Loader: public DataFile::ObjectLoader<Material>
-       {
-       public:
-               Loader(Material &);
-
-       private:
-               void ambient(float, float, float, float);
-               void diffuse(float, float, float, float);
-               void specular(float, float, float, float);
-               void emission(float, float, float, float);
-       };
-
-private:
-       enum ParameterMask
-       {
-               AMBIENT = 1,
-               DIFFUSE = 2,
-               SPECULAR = 4,
-               EMISSION = 8,
-               SHININESS = 16
-       };
-
-       Color ambient;
-       Color diffuse;
-       Color specular;
-       Color emission;
-       float shininess;
-
-public:
-       Material();
-
-private:
-       void update_parameter(int) const;
-
-public:
-       void set_ambient(const Color &a);
-       void set_diffuse(const Color &d);
-       void set_specular(const Color &s);
-       void set_emission(const Color &e);
-       void set_shininess(float s);
-       const Color &get_ambient() const { return ambient; }
-       const Color &get_diffuse() const { return diffuse; }
-       const Color &get_specular() const { return specular; }
-       const Color &get_emission() const { return emission; }
-       float get_shininess() const { return shininess; }
-       void bind() const;
-};
-
-} // namespace GL
-} // namespace Msp
-
-#endif