1 // Copyright 2001-2019 Crytek GmbH / Crytek Group. All rights reserved.
5 #include "BaseEnv/BaseEnv_Prerequisites.h"
7 namespace SchematycBaseEnv
9 typedef TemplateUtils::CDelegate
<void (const EntityId
)> EntityMapVisitor
;
15 void MarkEntityForDestruction(EntityId entityId
);
16 void DestroyMarkedEntites();
17 void AddObject(EntityId entityId
, const Schematyc2::ObjectId
& objectId
);
18 void RemoveObject(EntityId entityId
);
19 Schematyc2::ObjectId
FindObjectId(EntityId entityId
) const;
20 Schematyc2::IObject
* FindObject(EntityId entityId
) const;
21 void VisitEntities(const EntityMapVisitor
& visitor
);
25 typedef std::vector
<EntityId
> EntityIds
;
26 typedef std::unordered_map
<EntityId
, Schematyc2::ObjectId
> EntityObjectIds
;
28 EntityIds m_entitiesMarkedForDestruction
;
29 EntityObjectIds m_entityObjectIds
;