Struct EntityChangeSet
An atomic package of changes to entity and component data.
Namespace: Unity.Entities
Syntax
public struct EntityChangeSet : IDisposable
Constructors
EntityChangeSet(Int32, Int32, NativeArray<EntityGuid>, NativeArray<ComponentTypeHash>, NativeArray<NativeString64>, NativeArray<PackedComponent>, NativeArray<PackedComponent>, NativeArray<PackedComponentDataChange>, NativeArray<Byte>, NativeArray<EntityReferenceChange>, NativeArray<BlobAssetReferenceChange>, PackedManagedComponentDataChange[], PackedSharedComponentDataChange[], NativeArray<LinkedEntityGroupChange>, NativeArray<LinkedEntityGroupChange>, NativeArray<BlobAssetChange>, NativeArray<UInt64>, NativeArray<Byte>)
Declaration
public EntityChangeSet(int createdEntityCount, int destroyedEntityCount, NativeArray<EntityGuid> entities, NativeArray<ComponentTypeHash> typeHashes, NativeArray<NativeString64> names, NativeArray<PackedComponent> addComponents, NativeArray<PackedComponent> removeComponents, NativeArray<PackedComponentDataChange> setComponents, NativeArray<byte> componentData, NativeArray<EntityReferenceChange> entityReferenceChanges, NativeArray<BlobAssetReferenceChange> blobAssetReferenceChanges, PackedManagedComponentDataChange[] setManagedComponents, PackedSharedComponentDataChange[] setSharedComponents, NativeArray<LinkedEntityGroupChange> linkedEntityGroupAdditions, NativeArray<LinkedEntityGroupChange> linkedEntityGroupRemovals, NativeArray<BlobAssetChange> createdBlobAssets, NativeArray<ulong> destroyedBlobAssets, NativeArray<byte> blobAssetData)
Parameters
| Type | Name | Description |
|---|---|---|
| Int32 | createdEntityCount | |
| Int32 | destroyedEntityCount | |
| NativeArray<EntityGuid> | entities | |
| NativeArray<ComponentTypeHash> | typeHashes | |
| NativeArray<NativeString64> | names | |
| NativeArray<PackedComponent> | addComponents | |
| NativeArray<PackedComponent> | removeComponents | |
| NativeArray<PackedComponentDataChange> | setComponents | |
| NativeArray<Byte> | componentData | |
| NativeArray<EntityReferenceChange> | entityReferenceChanges | |
| NativeArray<BlobAssetReferenceChange> | blobAssetReferenceChanges | |
| PackedManagedComponentDataChange[] | setManagedComponents | |
| PackedSharedComponentDataChange[] | setSharedComponents | |
| NativeArray<LinkedEntityGroupChange> | linkedEntityGroupAdditions | |
| NativeArray<LinkedEntityGroupChange> | linkedEntityGroupRemovals | |
| NativeArray<BlobAssetChange> | createdBlobAssets | |
| NativeArray<UInt64> | destroyedBlobAssets | |
| NativeArray<Byte> | blobAssetData |
Fields
AddComponents
A set of all component additions in this change-set.
Declaration
public readonly NativeArray<PackedComponent> AddComponents
Field Value
| Type | Description |
|---|---|
| NativeArray<PackedComponent> |
BlobAssetData
The payload for all blob assets in this change set.
Declaration
public readonly NativeArray<byte> BlobAssetData
Field Value
| Type | Description |
|---|---|
| NativeArray<Byte> |
BlobAssetReferenceChanges
A packed set of all blob asset references to patch.
Declaration
public readonly NativeArray<BlobAssetReferenceChange> BlobAssetReferenceChanges
Field Value
| Type | Description |
|---|---|
| NativeArray<BlobAssetReferenceChange> |
ComponentData
Data payload for all component changes specified in SetComponents
Declaration
public readonly NativeArray<byte> ComponentData
Field Value
| Type | Description |
|---|---|
| NativeArray<Byte> |
Remarks
Data changes are tightly packed. Use the Size to read back.
CreatedBlobAssets
A set of all blob asset creations in this change set.
Declaration
public readonly NativeArray<BlobAssetChange> CreatedBlobAssets
Field Value
| Type | Description |
|---|---|
| NativeArray<BlobAssetChange> |
Remarks
The BlobAssetChange is used to describe the payload within the BlobAssetData array.
CreatedEntityCount
Number of entities from the start of Entities that should be considered as created.
Declaration
public readonly int CreatedEntityCount
Field Value
| Type | Description |
|---|---|
| Int32 |
DestroyedBlobAssets
A set of all blob assets destroyed in this change set. Identified by the content hash.
Declaration
public readonly NativeArray<ulong> DestroyedBlobAssets
Field Value
| Type | Description |
|---|---|
| NativeArray<UInt64> |
DestroyedEntityCount
Number of entities from the end of Entities that should be considered as destroyed.
Declaration
public readonly int DestroyedEntityCount
Field Value
| Type | Description |
|---|---|
| Int32 |
Entities
A packed array of all entities in this change-set.
Declaration
public readonly NativeArray<EntityGuid> Entities
Field Value
| Type | Description |
|---|---|
| NativeArray<EntityGuid> |
EntityReferenceChanges
A packed set of all entity references to patch.
Declaration
public readonly NativeArray<EntityReferenceChange> EntityReferenceChanges
Field Value
| Type | Description |
|---|---|
| NativeArray<EntityReferenceChange> |
LinkedEntityGroupAdditions
A set of all linked entity group additions.
Declaration
public readonly NativeArray<LinkedEntityGroupChange> LinkedEntityGroupAdditions
Field Value
| Type | Description |
|---|---|
| NativeArray<LinkedEntityGroupChange> |
LinkedEntityGroupRemovals
A set of all linked entity group removals.
Declaration
public readonly NativeArray<LinkedEntityGroupChange> LinkedEntityGroupRemovals
Field Value
| Type | Description |
|---|---|
| NativeArray<LinkedEntityGroupChange> |
Names
Names for each entity in this change-set.
Declaration
public readonly NativeArray<NativeString64> Names
Field Value
| Type | Description |
|---|---|
| NativeArray<NativeString64> |
RemoveComponents
A set of all component removals in this change-set.
Declaration
public readonly NativeArray<PackedComponent> RemoveComponents
Field Value
| Type | Description |
|---|---|
| NativeArray<PackedComponent> |
SetComponents
A set of all component data modifications in this change-set.
Declaration
public readonly NativeArray<PackedComponentDataChange> SetComponents
Field Value
| Type | Description |
|---|---|
| NativeArray<PackedComponentDataChange> |
SetManagedComponents
A set of all managed component data changes.
Declaration
public readonly PackedManagedComponentDataChange[] SetManagedComponents
Field Value
| Type | Description |
|---|---|
| PackedManagedComponentDataChange[] |
SetSharedComponents
A set of all shared component data changes.
Declaration
public readonly PackedSharedComponentDataChange[] SetSharedComponents
Field Value
| Type | Description |
|---|---|
| PackedSharedComponentDataChange[] |
TypeHashes
A packed array of all types in this change-set.
Declaration
public readonly NativeArray<ComponentTypeHash> TypeHashes
Field Value
| Type | Description |
|---|---|
| NativeArray<ComponentTypeHash> |
Properties
HasChanges
Declaration
public bool HasChanges { get; }
Property Value
| Type | Description |
|---|---|
| Boolean |
IsCreated
Returns true if this object is allocated.
Declaration
public bool IsCreated { get; }
Property Value
| Type | Description |
|---|---|
| Boolean |
Methods
Dispose()
Declaration
public void Dispose()