#ifndef TEXTUREDATA_H #define TEXTUREDATA_H #include struct TextureFormat final { const GLint internalformat; const GLenum format; const GLenum type; const bool depth; static TextureFormat color1(); static TextureFormat color2(); static TextureFormat color3(); static TextureFormat color4(); static TextureFormat float16(); static TextureFormat float32(); static TextureFormat float16Vector2(); static TextureFormat float16Vector3(); static TextureFormat float16Vector4(); static TextureFormat float32Vector2(); static TextureFormat float32Vector3(); static TextureFormat float32Vector4(); static TextureFormat depth16(); static TextureFormat depth32(); private: TextureFormat(GLint internalformat, GLenum format, GLenum type, bool depth = false); }; #endif