X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fcore%2Ftexture.h;h=47b2f2696efd35bd07b0c8c52811cc46359d2d63;hb=bae374a3cda6a1b59f36016624ef518bf2676355;hp=80012f46846a7bd11746ed182fc2a56a21c8dfc5;hpb=6065f6622cc275dc0b20baaf7c267e71169d18f3;p=libs%2Fgl.git diff --git a/source/core/texture.h b/source/core/texture.h index 80012f46..47b2f269 100644 --- a/source/core/texture.h +++ b/source/core/texture.h @@ -3,7 +3,6 @@ #include #include -#include "gl.h" #include "pixelformat.h" #include "resource.h" @@ -21,6 +20,8 @@ can be used for texture minification; see the Sampler class for details. */ class Texture: public Resource { + friend class Framebuffer; + friend class PipelineState; protected: class Loader: public DataFile::CollectionObjectLoader { @@ -56,7 +57,7 @@ protected: }; unsigned id; - GLenum target; + unsigned target; PixelFormat format; PixelFormat storage_fmt; FormatSwizzle swizzle; @@ -64,10 +65,10 @@ protected: bool auto_gen_mipmap; std::string debug_name; - static int swizzle_orders[]; + static const int swizzle_orders[]; static Texture *scratch_binding; - Texture(GLenum, ResourceManager * = 0); + Texture(unsigned, ResourceManager * = 0); Texture(const Texture &); Texture &operator=(const Texture &); public: @@ -77,7 +78,7 @@ protected: void generate_id(); void set_format(PixelFormat); void apply_swizzle(); - void set_parameter_i(GLenum, int) const; + void set_parameter_i(unsigned, int) const; public: PixelFormat get_format() const { return format; } @@ -92,9 +93,6 @@ public: with the defined storage. Semantics depend on the type of texture. */ virtual void image(const Graphics::Image &, unsigned = 0) = 0; - GLenum get_target() const { return target; } - unsigned get_id() const { return id; } - virtual std::uint64_t get_data_size() const { return 0; } void set_debug_name(const std::string &);