gltexture3d.h File Reference

Go to the documentation of this file. Source: include/ffw/graphics/gltexture3d.h

/* This file is part of FineFramework project */
#ifndef FFW_GRAPHICS_TEXTURE_3D
#define FFW_GRAPHICS_TEXTURE_3D

#include "gltexture.h"

namespace ffw {
    class FFW_API GLTexture3D: public GLTexture {
    public:
        GLTexture3D();
        GLTexture3D(const GLTexture3D& other) = delete;
        GLTexture3D(GLTexture3D&& other) NOEXCEPT;
        virtual ~GLTexture3D() = default;
        GLTexture3D(GLsizei width, GLsizei height, GLsizei depth, GLenum internalformat,
            GLenum format, GLenum pixelformat, const GLvoid* pixels = nullptr);
        void resize(GLsizei width, GLsizei height, GLsizei depth, const GLvoid* pixels = nullptr);
        void setPixels(GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width,
            GLsizei height, GLsizei depth, const GLvoid* pixels);
        void setPixels(GLint level, const GLvoid* pixels);
        void getPixels(GLvoid* pixels);
        GLTexture3D& operator = (const GLTexture3D& other) = delete;
        GLTexture3D& operator = (GLTexture3D&& other) NOEXCEPT;
    };
};

inline void swap(ffw::GLTexture3D& first, ffw::GLTexture3D& second) NOEXCEPT {
    first.swap(second);
}
#endif