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

Public Member Functions

void stopThreads ()
 
void removeUnusedTextures ()
 
void addThreadedFunction (std::function< bool()> threaded_function)
 
void addGLCommandFunction (std::function< bool()> function)
 
void increaseGLCommandFunctionCount (int count)
 
void checkForGLCommand (bool before_scene=false)
 
std::shared_ptr< SPTexturegetTexture (const std::string &p, Material *m, bool undo_srgb, const std::string &container_id)
 
void dumpAllTextures ()
 
irr::core::stringw reloadTexture (const irr::core::stringw &name)
 

Static Public Member Functions

static SPTextureManagerget ()
 
static void destroy ()
 

Private Attributes

std::map< std::string, std::shared_ptr< SPTexture > > m_textures
 
std::atomic_uint m_max_threaded_load_obj
 
std::atomic_int m_gl_cmd_function_count
 
std::list< std::function< bool()> > m_threaded_functions
 
std::list< std::function< bool()> > m_gl_cmd_functions
 
std::mutex m_thread_obj_mutex
 
std::mutex m_gl_cmd_mutex
 
std::condition_variable m_thread_obj_cv
 
std::list< std::thread > m_threaded_load_obj
 

Static Private Attributes

static SPTextureManagerm_sptm = NULL
 

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