]> git.tdb.fi Git - libs/gl.git/blobdiff - source/core/texture3d.h
Refactor get_level_size in various texture classes
[libs/gl.git] / source / core / texture3d.h
index 1f50e056d8cb286d8e99b4c739f83e5f09c777bd..df52bf66ee8daeb1e1a879440c63ed52ab799833 100644 (file)
@@ -2,6 +2,7 @@
 #define MSP_GL_TEXTURE3D_H_
 
 #include <string>
+#include <msp/linal/vector.h>
 #include "texture.h"
 
 namespace Msp {
@@ -27,14 +28,13 @@ public:
                void storage_levels(PixelFormat, unsigned, unsigned, unsigned, unsigned);
        };
 
-private:
+protected:
        unsigned width;
        unsigned height;
        unsigned depth;
        unsigned levels;
        unsigned allocated;
 
-protected:
        Texture3D(GLenum);
 public:
        Texture3D();
@@ -83,7 +83,7 @@ public:
        unsigned get_depth() const { return depth; }
 protected:
        unsigned get_n_levels() const;
-       void get_level_size(unsigned, unsigned &, unsigned &, unsigned &) const;
+       LinAl::Vector<unsigned, 3> get_level_size(unsigned) const;
 
 public:
        virtual AsyncLoader *load(IO::Seekable &, const Resources * = 0) { return 0; }