Class SystemAPI
Giving quick and consistent access to buffers, components, time, enumeration, singletons and more. This includes any IAspect, IJobEntity, SystemBase, and ISystem. Suggested usage is:
using static Unity.Entities.SystemAPI;
[...]
partial struct SomeJob : IJobEntity { void Execute(ref EcsTestData e1) => e1.value += Time.deltaTime; }
Namespace: Unity.Entities
Syntax
public static class SystemAPI
Properties
Name | Description |
---|---|
Time | The current Time data for calling system's world. |
Methods
Name | Description |
---|---|
Exists(Entity) | Checks if the entity exists inside this system's EntityManager. |
GetAspect<T>(Entity) | Look up an aspect for an entity. |
GetBuffer<T>(Entity) | Gets the dynamic buffer of an entity. |
GetBufferLookup<T>(Boolean) | Gets a BufferLookup<T> object that can access a DynamicBuffer<T>. |
GetBufferTypeHandle<T>(Boolean) | Gets the run-time type information required to access an array of buffer components in a chunk. |
GetComponent<T>(Entity) | Look up the value of a component for an entity. |
GetComponent<T>(SystemHandle) | Gets the value of a component for an entity associated with a system. |
GetComponentLookup<T>(Boolean) | Gets a dictionary-like container containing all components of type T, keyed by Entity. |
GetComponentRO<T>(Entity) | Gets a reference to a component for an entity, for read-only access. |
GetComponentRW<T>(Entity) | Gets a reference to a component for an entity, for read/write access. |
GetComponentRW<T>(SystemHandle) | Gets a reference to a component for an entity associated with a system, for read/write access. |
GetComponentTypeHandle<T>(Boolean) | Gets the run-time type information required to access an array of component data in a chunk. |
GetEntityStorageInfoLookup() | Gets a EntityStorageInfoLookup object that can access a EntityStorageInfo. |
GetEntityTypeHandle() | Gets the run-time type information required to access the array of Entity objects in a chunk. |
GetSharedComponentTypeHandle<T>() | Gets the run-time type information required to access a shared component data in a chunk. |
GetSingleton<T>() | Gets the value of a singleton component. |
GetSingletonBuffer<T>(Boolean) | Gets the value of a singleton buffer component. |
GetSingletonEntity<T>() | Gets the Entity instance for a singleton. |
GetSingletonRW<T>() | Gets a reference to the singleton component, for read/write access. |
HasBuffer<T>(Entity) | Checks whether an entity has a dynamic buffer of a specific IBufferElementData type. |
HasComponent<T>(Entity) | Checks whether an entity has a specific type of component. |
HasComponent<T>(SystemHandle) | Checks whether an entity associated with a system has a specific type of component. |
HasSingleton<T>() | Checks whether a singleton component of the specified type exists. |
IsBufferEnabled<T>(Entity) | Checks whether the IBufferElementData of type T is enabled on the specified Entity. For the purposes of EntityQuery matching, an entity with a disabled component will behave as if it does not have that component. The type T must implement the IEnableableComponent interface. |
IsComponentEnabled<T>(Entity) | Checks whether the IComponentData of type T is enabled on the specified Entity. For the purposes of EntityQuery matching, an entity with a disabled component will behave as if it does not have that component. The type T must implement the IEnableableComponent interface. |
IsComponentEnabled<T>(SystemHandle) | Checks whether the IComponentData of type T is enabled on the specified system using a SystemHandle. For the purposes of EntityQuery matching, a system with a disabled component will behave as if it does not have that component. The type T must implement the IEnableableComponent interface. |
Query<T1>() | Get Enumerable for iterating through Aspect, and Component types from inside a system |
Query<T1, T2>() | Get Enumerable for iterating through Aspect, and Component types from inside a system |
Query<T1, T2, T3>() | Get Enumerable for iterating through Aspect, and Component types from inside a system |
Query<T1, T2, T3, T4>() | Get Enumerable for iterating through Aspect, and Component types from inside a system |
Query<T1, T2, T3, T4, T5>() | Get Enumerable for iterating through Aspect, and Component types from inside a system |
Query<T1, T2, T3, T4, T5, T6>() | Get Enumerable for iterating through Aspect, and Component types from inside a system |
Query<T1, T2, T3, T4, T5, T6, T7>() | Get Enumerable for iterating through Aspect, and Component types from inside a system |
QueryBuilder() | Gives a fluent API for constructing EntityQuerys similar to the EntityQueryBuilder. This API statically constructs the query as part of the system, and creates the query in the system's OnCreate. Calling this method should allow the construction of EntityQueries with almost no run-time performance overhead." |
SetBufferEnabled<T>(Entity, Boolean) | Enable or disable the IBufferElementData of type T on the specified Entity. This operation does not cause a structural change (even if it occurs on a worker thread), or affect the value of the component. For the purposes of EntityQuery matching, an entity with a disabled component will behave as if it does not have that component. The type T must implement the IEnableableComponent interface. |
SetComponent<T>(Entity, T) | Sets the value of a component of an entity. |
SetComponent<T>(SystemHandle, T) | Sets the value of a component of an entity associated with a system. |
SetComponentEnabled<T>(Entity, Boolean) | Enable or disable the IComponentData of type T on the specified Entity. This operation does not cause a structural change (even if it occurs on a worker thread), or affect the value of the component. For the purposes of EntityQuery matching, an entity with a disabled component will behave as if it does not have that component. The type T must implement the IEnableableComponent interface. |
SetComponentEnabled<T>(SystemHandle, Boolean) | Enable or disable the IComponentData of type T on the specified system using a SystemHandle. This operation does not cause a structural change (even if it occurs on a worker thread), or affect the value of the component. For the purposes of EntityQuery matching, a system with a disabled component will behave as if it does not have that component. The type T must implement the IEnableableComponent interface. |
SetSingleton<T>(T) | Sets the value of a singleton component. |
TryGetSingleton<T>(out T) | Gets the value of a singleton component, and returns whether or not a singleton component of the specified type exists in the World. |
TryGetSingletonBuffer<T>(out DynamicBuffer<T>, Boolean) | Gets the value of a singleton buffer component, and returns whether or not a singleton buffer component of the specified type exists in the World. |
TryGetSingletonEntity<T>(out Entity) | Gets the singleton Entity, and returns whether or not a singleton Entity of the specified type exists in the World. |
TryGetSingletonRW<T>(out RefRW<T>) | Gets the value of a singleton component, and returns whether or not a singleton component of the specified type exists in the World. |