Example #1
0
/**
 * @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);
        }
    }
}