Method SetSharedComponentManaged
SetSharedComponentManaged<T>(EntityQuery, T, EntityQueryCaptureMode)
Records a command to set a possibly-managed shared component value on all entities matching a query.
Declaration
public void SetSharedComponentManaged<T>(EntityQuery entityQuery, T component, EntityQueryCaptureMode queryCaptureMode) where T : struct, ISharedComponentData
Parameters
Type | Name | Description |
---|---|---|
EntityQuery | entityQuery | The query specifying which entities to add the component value to. |
T | component | The component value to add. |
EntityQueryCaptureMode | queryCaptureMode | Controls when the entities matching |
Type Parameters
Name | Description |
---|---|
T | The type of shared component to set. |
Remarks
Fails if any of the entities do not have the type of shared component. [todo: should it be required that the component type is included in the query?]
Exceptions
Type | Condition |
---|---|
NullReferenceException | Throws if an Allocator was not passed in when the EntityCommandBuffer was created. |
InvalidOperationException | Throws if this EntityCommandBuffer has already been played back. |
SetSharedComponentManaged<T>(EntityQuery, T)
Obsolete. Use SetSharedComponentManaged<T>(EntityQuery, T, EntityQueryCaptureMode) instead.
Declaration
[Obsolete("This method now takes an extra parameter to control when the query is evaluated. To preserve the current semantics, use EntityQueryCaptureMode.AtRecord (RemovedAfter Entities 2.0)")]
public void SetSharedComponentManaged<T>(EntityQuery entityQuery, T component) where T : struct, ISharedComponentData
Parameters
Type | Name | Description |
---|---|---|
EntityQuery | entityQuery | The query specifying the entities to which the component is added. |
T | component | The component value to set. |
Type Parameters
Name | Description |
---|---|
T | The type of shared component to set. |
SetSharedComponentManaged<T>(Entity, T)
Records a command to set a possibly-managed shared component value on an entity.
Declaration
public void SetSharedComponentManaged<T>(Entity e, T sharedComponent) where T : struct, ISharedComponentData
Parameters
Type | Name | Description |
---|---|---|
Entity | e | The entity to set the shared component value of. |
T | sharedComponent | The shared component value to set. |
Type Parameters
Name | Description |
---|---|
T | The type of shared component to set. |
Remarks
At playback, this command throws an error if this entity is destroyed before playback, if this entity is still deferred, if the entity has the Prefab tag, or if the entity doesn't have the shared component type.
Exceptions
Type | Condition |
---|---|
NullReferenceException | Throws if an Allocator was not passed in when the EntityCommandBuffer was created. |
InvalidOperationException | Throws if this EntityCommandBuffer has already been played back. |
SetSharedComponentManaged<T>(NativeArray<Entity>, T)
Records a command to set a possibly-managed shared component value on a NativeArray of entities.
Declaration
public void SetSharedComponentManaged<T>(NativeArray<Entity> entities, T sharedComponent) where T : struct, ISharedComponentData
Parameters
Type | Name | Description |
---|---|---|
NativeArray<Entity> | entities | The NativeArray of entities to set the shared component value of. |
T | sharedComponent | The shared component value to set. |
Type Parameters
Name | Description |
---|---|
T | The type of shared component to set. |
Remarks
At playback, this command throws an error if any entity is destroyed before playback, if any entity is still deferred, if any entity has the Prefab tag, or if any entity doesn't have the shared component type.
Exceptions
Type | Condition |
---|---|
NullReferenceException | Throws if an Allocator was not passed in when the EntityCommandBuffer was created. |
InvalidOperationException | Throws if this EntityCommandBuffer has already been played back. |