X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Ftexture.h;h=848517eb45c99da20a67c8261ed81488b7902ea3;hb=ceae2a27dfc58310c5bab7e3aa3fedf0fa9a1f49;hp=6dd729b4d23a546f0c50bc92a4aa2cb73291652d;hpb=a80b074c70ec991f27114efd13686038cf42c493;p=libs%2Fgl.git diff --git a/source/texture.h b/source/texture.h index 6dd729b4..848517eb 100644 --- a/source/texture.h +++ b/source/texture.h @@ -9,9 +9,8 @@ Distributed under the LGPL #define MSP_GL_TEXTURE_H_ #include -#include +#include #include "gl.h" -#include "types.h" namespace Msp { namespace GL { @@ -37,11 +36,8 @@ one of the dimensioned texture classes. class Texture { protected: - class Loader: public DataFile::Loader + class Loader: public DataFile::ObjectLoader { - protected: - Texture &tex; - public: Loader(Texture &); void min_filter(TextureFilter); @@ -53,16 +49,18 @@ public: ~Texture(); void bind() const; + void bind_to(unsigned) const; void parameter(GLenum, int); void parameter(GLenum, float); void set_min_filter(TextureFilter f) { parameter(GL_TEXTURE_MIN_FILTER, f); } void set_mag_filter(TextureFilter f) { parameter(GL_TEXTURE_MAG_FILTER, f); } GLenum get_target() const { return target; } - uint get_id() const { return id; } + unsigned get_id() const { return id; } static void unbind(); + static void unbind_from(unsigned); protected: - uint id; + unsigned id; GLenum target; Texture();