4 #include <unordered_map>
12 using std::unordered_map;
19 MeshManager::MeshManager()
24 for (
const auto& [meshManagedId, meshManaged]:
meshes)
delete meshManaged;
31 meshManaged->incrementReferenceCounter();
33 meshes[meshManaged->getId()] = meshManaged;
38 auto meshManagedIt =
meshes.find(meshId);
39 if (meshManagedIt !=
meshes.end()) {
40 auto meshManaged = meshManagedIt->second;
41 if (meshManaged->decrementReferenceCounter()) {
43 meshes.erase(meshManagedIt);
48 Console::println(
string(
"Warning: mesh not managed by mesh manager: " + meshId));
unordered_map< string, MeshManager_MeshManaged * > meshes
void removeMesh(const string &meshId)
Removes a mesh from manager.
void addMesh(const string &meshId, ObjectNodeMesh *mesh)
Adds a mesh to manager.
~MeshManager()
Destructor.
Object node mesh specifically for rendering.