19    friend class ModelManagerAttorney;
 
   21    static ModelManager* ptrInstance;
 
   24    ModelManager(
const ModelManager&) = 
delete;
 
   25    ModelManager& operator=(
const ModelManager&) = 
delete;
 
   26    ~ModelManager() = 
default;
 
   28    static ModelManager& Instance()
 
   30        if (ptrInstance == 
nullptr)
 
   31            ptrInstance = 
new ModelManager();
 
   48    static void Delete() { Instance().privDelete(); }
 
   51    Model* privGet(
const std::string& key);
 
   52    void privLoad(
const std::string& key, 
const Model::PreMadeModels model);
 
   53    void privLoad(
const std::string& key, 
const std::string& path);
 
   54    void privLoad(
const std::string& key, 
int planeSize, 
int u, 
int v);
 
   68    static Model* 
Get(
const std::string& key) { 
return Instance().privGet(key); }
 
   76    static void Load(
const std::string& key, 
const Model::PreMadeModels model) { Instance().privLoad(key, model); }
 
   84    static void Load(
const std::string& key, 
const std::string& path) { Instance().privLoad(key, path); }
 
   94    static void Load(
const std::string& key, 
int planeSize, 
int u, 
int v) { Instance().privLoad(key, planeSize, u, v); }
 
 
static Model * Get(const std::string &key)
Retrieves a Model object by its key (private implementation).
Definition ModelManager.h:68
static void Load(const std::string &key, const Model::PreMadeModels model)
Loads a pre-made Model object (private implementation).
Definition ModelManager.h:76
static const std::string defaultSpriteModelKey
Default key for sprite models.
Definition ModelManager.h:60
const std::string DefaultPath
Default path for loading models.
Definition ModelManager.h:38
static void Load(const std::string &key, int planeSize, int u, int v)
Loads a Model object with specified parameters (private implementation).
Definition ModelManager.h:94
std::map< std::string, Model * > storageMap
Map storing Model objects associated with their keys.
Definition ModelManager.h:43
static void Load(const std::string &key, const std::string &path)
Loads a Model object from a file path (private implementation).
Definition ModelManager.h:84
static void Delete()
Deletes all managed Model objects and the singleton instance.
Definition ModelManager.h:48