Class ComponentSystemBase
A system provides behavior in an ECS architecture.
Namespace: Unity.Entities
Assembly: solution.dll
Syntax
[RequireDerived]
public abstract class ComponentSystemBase
  Remarks
System implementations should inherit SystemBase, which is a subclass of ComponentSystemBase.
Constructors
| Name | Description | 
|---|---|
| ComponentSystemBase() | Initializes and returns an instance of a system.  | 
      
Properties
| Name | Description | 
|---|---|
| Enabled | Controls whether this system executes when its OnUpdate function is called.  | 
      
| EntityManager | The EntityManager object of the World in which this system exists.  | 
      
| EntityQueries | The query objects cached by this system.  | 
      
| GlobalSystemVersion | The current change version number in this World.  | 
      
| LastSystemVersion | The current version of this system.  | 
      
| SystemHandle | The SystemHandle of this system.  | 
      
| SystemHandleUntyped | Obsolete. Use SystemHandle instead.  | 
      
| Time | |
| World | The World in which this system exists.  | 
      
| WorldUpdateAllocator | Retrieve world update allocator from system state.  | 
      
Methods
| Name | Description | 
|---|---|
| GetBufferFromEntity<T>(bool) | Obsolete. Use GetBufferLookup<T>(bool) instead.  | 
      
| GetBufferLookup<T>(bool) | Manually gets a BufferLookup<T> object that can access a DynamicBuffer<T>.  | 
      
| GetBufferTypeHandle<T>(bool) | Manually gets the run-time type information required to access an array of buffer components in a chunk.  | 
      
| GetComponentDataFromEntity<T>(bool) | Obsolete. Use GetComponentLookup<T>(bool) instead.  | 
      
| GetComponentLookup<T>(bool) | Manually gets a dictionary-like container containing all components of type T, keyed by Entity.  | 
      
| GetComponentTypeHandle<T>(bool) | Manually gets the run-time type information required to access an array of component data in a chunk.  | 
      
| GetDynamicComponentTypeHandle(ComponentType) | Manually gets the run-time type information required to access an array of component data in a chunk.  | 
      
| GetDynamicSharedComponentTypeHandle(ComponentType) | Manually gets the run-time type information required to access a shared component data in a chunk.  | 
      
| GetEntityQuery(NativeArray<ComponentType>) | Gets the cached query for the specified component types, if one exists; otherwise, creates a new query instance and caches it.  | 
      
| GetEntityQuery(params ComponentType[]) | Gets the cached query for the specified component types, if one exists; otherwise, creates a new query instance and caches it.  | 
      
| GetEntityQuery(in EntityQueryBuilder) | Create an entity query from a query description builder.  | 
      
| GetEntityQuery(params EntityQueryDesc[]) | Combines an array of query description objects into a single query.  | 
      
| GetEntityStorageInfoLookup() | Manually gets an EntityStorageInfoLookup object that can access a EntityStorageInfo.  | 
      
| GetEntityTypeHandle() | Manually gets the run-time type information required to access the array of Entity objects in a chunk.  | 
      
| GetSharedComponentTypeHandle<T>() | Manually gets the run-time type information required to access a shared component data in a chunk.  | 
      
| GetSingletonBuffer<T>(bool) | 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.  | 
      
| GetSingleton<T>() | Gets the value of a singleton component.  | 
      
| GetStorageInfoFromEntity() | Obsolete. Use GetEntityStorageInfoLookup() instead.  | 
      
| HasSingleton<T>() | Checks whether a singleton component of the specified type exists.  | 
      
| OnCreate() | Called when this system is created.  | 
      
| OnDestroy() | Called when this system is destroyed.  | 
      
| OnStartRunning() | Called before the first call to OnUpdate and when a system resumes updating after being stopped or disabled.  | 
      
| OnStopRunning() | Called when this system stops running because no entities match the system's EntityQuery objects or because you change the system Enabled property to false.  | 
      
| RequireAnyForUpdate(NativeArray<EntityQuery>) | Provide a set of queries, one of which must match entities for the system to run.  | 
      
| RequireAnyForUpdate(params EntityQuery[]) | Provide a set of queries, one of which must match entities for the system to run.  | 
      
| RequireForUpdate(EntityQuery) | Adds a query that must match entities for the system to run. You can add multiple required queries to a system; all of them must match at least one entity for the system to run.  | 
      
| RequireForUpdate<T>() | Require that a specific component exist for this system to run. Also includes any components added to a system. See SystemHandle for more info on that.  | 
      
| RequireSingletonForUpdate<T>() | Obsolete. Use RequireForUpdate<T>() instead.  | 
      
| SetSingleton<T>(T) | Sets the value of a singleton component.  | 
      
| ShouldRunSystem() | Reports whether this system satisfies the criteria to update. This function is used internally to determine whether the system's OnUpdate function can be skipped.  | 
      
| TryGetSingletonBuffer<T>(out DynamicBuffer<T>) | 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.  | 
      
| 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.  | 
      
| Update() | Executes the system immediately.  |