SuperTuxKart
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
SP::SPTexture Class Reference
Inheritance diagram for SP::SPTexture:
Inheritance graph
[legend]

Public Member Functions

 SPTexture (const std::string &path, Material *m, bool undo_srgb, const std::string &container_id)
 
const std::string & getPath () const
 
std::shared_ptr< video::IImage > getTextureImage () const
 
GLuint getOpenGLTextureName () const
 
bool initialized () const
 
unsigned getWidth () const
 
unsigned getHeight () const
 
bool threadedLoad ()
 

Static Public Member Functions

static std::shared_ptr< SPTexturegetWhiteTexture ()
 
static std::shared_ptr< SPTexturegetTransparentTexture ()
 

Private Member Functions

void squishCompressImage (uint8_t *rgba, int width, int height, int pitch, void *blocks, unsigned flags)
 
void generateHQMipmap (void *in, const std::vector< std::pair< core::dimension2du, unsigned > > &, uint8_t *out)
 
void generateQuickMipmap (std::shared_ptr< video::IImage > first_image, const std::vector< std::pair< core::dimension2du, unsigned > > &, uint8_t *out)
 
std::shared_ptr< video::IImage > getImageFromPath (const std::string &path) const
 
std::shared_ptr< video::IImage > getMask (const core::dimension2du &s) const
 
void applyMask (video::IImage *texture, video::IImage *mask)
 
void createTransparent ()
 
void createWhite (bool private_init=true)
 
 SPTexture (bool white)
 
bool texImage2d (std::shared_ptr< video::IImage > texture, std::shared_ptr< video::IImage > mipmaps)
 
bool compressedTexImage2d (std::shared_ptr< video::IImage > texture, const std::vector< std::pair< core::dimension2du, unsigned > > &mipmap_sizes)
 
bool saveCompressedTexture (std::shared_ptr< video::IImage > texture, const std::vector< std::pair< core::dimension2du, unsigned > > &sizes, const std::string &cache_location)
 
std::vector< std::pair< core::dimension2du, unsigned > > compressTexture (std::shared_ptr< video::IImage > texture)
 
bool useTextureCache (const std::string &full_path, std::string *cache_loc)
 
std::shared_ptr< video::IImage > getTextureCache (const std::string &path, std::vector< std::pair< core::dimension2du, unsigned > > *sizes)
 

Private Attributes

std::string m_path
 
std::string m_cache_directory
 
GLuint m_texture_name = 0
 
std::atomic_uint m_width
 
std::atomic_uint m_height
 
Materialm_material
 
const bool m_undo_srgb
 

The documentation for this class was generated from the following files: