using Svelto.ECS.DataStructures; namespace Svelto.ECS { public readonly ref struct NativeEntityComponentInitializer { readonly NativeBag _unsafeBuffer; readonly UnsafeArrayIndex _index; public NativeEntityComponentInitializer(in NativeBag unsafeBuffer, UnsafeArrayIndex index) { _unsafeBuffer = unsafeBuffer; _index = index; } public void Init(in T component) where T : unmanaged, IEntityComponent { uint id = EntityComponentID.ID.Data; _unsafeBuffer.AccessReserved(_index)++; _unsafeBuffer.Enqueue(id); _unsafeBuffer.Enqueue(component); } } }