#ifndef TEXTUREDATA_H #define TEXTUREDATA_H #include struct TextureFormat final { GLint internalformat; GLenum format; GLenum type; bool depth; static TextureFormat color8(int channels); static TextureFormat float16(int channels); static TextureFormat float32(int channels); static TextureFormat depth16(); static TextureFormat depth32(); static TextureFormat unknown(); private: TextureFormat(GLint internalformat, GLenum format, GLenum type, bool depth = false); }; #endif