public unsafe void UpdateInjection(byte *pinnedSystemPtr, EntityManager entityManager) { for (var i = 0; i != m_InjectComponentDataFromEntity.Length; i++) { var array = entityManager.GetComponentDataFromEntity <ProxyComponentData>( m_InjectComponentDataFromEntity[i].ComponentType.TypeIndex, m_InjectComponentDataFromEntity[i].IsReadOnly); UnsafeUtility.CopyStructureToPtr(ref array, pinnedSystemPtr + m_InjectComponentDataFromEntity[i].FieldOffset); } for (var i = 0; i != m_InjectBufferDataFromEntity.Length; i++) { var array = entityManager.GetBufferDataFromEntity <ProxyBufferElementData>( m_InjectBufferDataFromEntity[i].ComponentType.TypeIndex, m_InjectBufferDataFromEntity[i].IsReadOnly); UnsafeUtility.CopyStructureToPtr(ref array, pinnedSystemPtr + m_InjectBufferDataFromEntity[i].FieldOffset); } }
public BufferDataFromEntity <T> GetBufferArrayFromEntity <T>(bool isReadOnly = false) where T : struct, IBufferElementData { AddReaderWriter(isReadOnly ? ComponentType.ReadOnly <T>() : ComponentType.Create <T>()); return(EntityManager.GetBufferDataFromEntity <T>(isReadOnly)); }