#include #include #include // NOLINTNEXTLINE #define STR_EXCEPTION GLObject<>::Exception #include /// TGA GLTexture2D GLTexture2D::tga_read( Path const & path, GLenum format, GLenum internal_format, GLenum wrap, GLenum min_filter, GLenum mag_filter ) try { auto texture = GLTexture2D( str_path_(path), TGA::read(path).size(), internal_format, wrap, min_filter, mag_filter ); texture.data( TGA::read(path_prefix_(path, prefix())).data(), GL_TEXTURE_2D, format ); return texture; } catch (...) { STR_THROW_NESTED( "Failed to read GLTexture2D TGA " << str_path_(path) << ":" ); } void GLTexture2D::tga_write( Path const & path, GLenum format ) const try { TGA(size(), data(GL_TEXTURE_2D, format)) .write(path_prefix_(path, prefix())); } catch (...) { STR_THROW_NESTED( "Failed to write GLTexture2D TGA " << str_path_(path) << ":" ); }