/** * @inheritDoc */ void Debugger::clean(void) { if (!m_bDebuggerActive) { return; } UScene::SystemScenes Scenes = m_pUScene->GetSystemScenes(); for (auto it = Scenes.begin(); it != Scenes.end(); it++) { ISystemScene* pScene = it->second; m_pSceneCCM->Unregister(pScene, m_pSceneChangesDebugger); } UScene::Objects Objects = m_pUScene->GetObjects(); for (auto it = Objects.begin(); it != Objects.end(); it++) { UObject* pUObject = *it; UObject::SystemObjects SystemObjects = pUObject->GetExtensions(); for (auto it = SystemObjects.begin(); it != SystemObjects.end(); it++) { ISystemObject* pObject = it->second; m_pObjectCCM->Unregister(pObject, m_pObjectChangesDebugger); } } }