internal void MoveEntitiesFrom(EntityManager srcEntities, NativeArray <ArchetypeChunk> chunks, NativeArray <EntityRemapUtility.EntityRemapInfo> entityRemapping) { #if ENABLE_UNITY_COLLECTIONS_CHECKS if (srcEntities == this) { throw new ArgumentException("srcEntities must not be the same as this EntityManager."); } #endif BeforeStructuralChange(); srcEntities.BeforeStructuralChange(); ArchetypeManager.MoveChunks(srcEntities, chunks, ArchetypeManager, m_GroupManager, Entities, m_SharedComponentManager, m_CachedComponentTypeInArchetypeArray, entityRemapping); }
public void MoveEntitiesFrom(EntityManager srcEntities) { #if ENABLE_UNITY_COLLECTIONS_CHECKS if (srcEntities == this) { throw new ArgumentException("srcEntities must not be the same as this EntityManager."); } #endif BeforeStructuralChange(); srcEntities.BeforeStructuralChange(); ArchetypeManager.MoveChunks(srcEntities.m_ArchetypeManager, srcEntities.m_Entities, srcEntities.m_SharedComponentManager, m_ArchetypeManager, m_GroupManager, m_SharedComponentManager, m_Entities, m_SharedComponentManager); //@TODO: Need to incrmeent the component versions based the moved chunks... }
public void MoveEntitiesFrom(EntityManager srcEntities) { #if ENABLE_UNITY_COLLECTIONS_CHECKS if (srcEntities == this) { throw new ArgumentException("srcEntities must not be the same as this EntityManager."); } if (!srcEntities.m_SharedComponentManager.AllSharedComponentReferencesAreFromChunks(srcEntities.ArchetypeManager)) { throw new ArgumentException("EntityManager.MoveEntitiesFrom failed - All ISharedComponentData references must be from EntityManager. (For example ComponentGroup.SetFilter with a shared component type is not allowed during EntityManager.MoveEntitiesFrom)"); } #endif BeforeStructuralChange(); srcEntities.BeforeStructuralChange(); ArchetypeManager.MoveChunks(srcEntities, ArchetypeManager, m_GroupManager, Entities, m_SharedComponentManager, m_CachedComponentTypeInArchetypeArray); //@TODO: Need to incrmeent the component versions based the moved chunks... }