]> git.tdb.fi Git - libs/gl.git/blobdiff - source/backends/opengl/texture2dmultisample_backend.cpp
Adjust access to main class members from backend classes
[libs/gl.git] / source / backends / opengl / texture2dmultisample_backend.cpp
index e6ee7614b028b88c1c56ea1e11a78e3ead733598..f0675044b23cdb6b8fcf72dacf86bdb7b79f885d 100644 (file)
@@ -15,9 +15,7 @@ OpenGLTexture2DMultisample::OpenGLTexture2DMultisample():
 
 void OpenGLTexture2DMultisample::allocate()
 {
-       unsigned width = static_cast<const Texture2DMultisample *>(this)->width;
-       unsigned height = static_cast<const Texture2DMultisample *>(this)->height;
-       unsigned samples = static_cast<const Texture2DMultisample *>(this)->samples;
+       const Texture2DMultisample &self = *static_cast<const Texture2DMultisample *>(this);
 
        if(!id)
                create();
@@ -26,27 +24,25 @@ void OpenGLTexture2DMultisample::allocate()
        if(ARB_texture_storage_multisample)
        {
                if(ARB_direct_state_access)
-                       glTextureStorage2DMultisample(id, samples, gl_fmt, width, height, false);
+                       glTextureStorage2DMultisample(id, self.samples, gl_fmt, self.width, self.height, false);
                else
                {
                        bind_scratch();
-                       glTexStorage2DMultisample(target, samples, gl_fmt, width, height, false);
+                       glTexStorage2DMultisample(target, self.samples, gl_fmt, self.width, self.height, false);
                }
        }
        else
        {
                bind_scratch();
-               glTexImage2DMultisample(target, samples, gl_fmt, width, height, false);
+               glTexImage2DMultisample(target, self.samples, gl_fmt, self.width, self.height, false);
        }
        apply_swizzle();
 }
 
 size_t OpenGLTexture2DMultisample::get_data_size() const
 {
-       unsigned width = static_cast<const Texture2DMultisample *>(this)->width;
-       unsigned height = static_cast<const Texture2DMultisample *>(this)->height;
-       unsigned samples = static_cast<const Texture2DMultisample *>(this)->samples;
-       return width*height*get_pixel_size(format)*samples;
+       const Texture2DMultisample &self = *static_cast<const Texture2DMultisample *>(this);
+       return self.width*self.height*get_pixel_size(format)*self.samples;
 }
 
 } // namespace GL