Skip to content

Latest commit

 

History

History
50 lines (40 loc) · 6.76 KB

SystemGroup.md

File metadata and controls

50 lines (40 loc) · 6.76 KB

SystemGroup Class

Contains a list of ChildSystems which are executed by calling Update(UpdateTick).
Each group has a CommandBuffer per EntityStore.

public class SystemGroup : Friflo.Engine.ECS.Systems.BaseSystem,
System.Collections.IEnumerable

Inheritance System.Object 🡒 BaseSystem 🡒 SystemGroup

Derived
SystemRoot

Implements System.Collections.IEnumerable

Constructors
SystemGroup(string) Creates a group with the passed name.
Properties
ChildSystems The child systems added to the group.
MonitorPerf If true the execution statics of its ChildSystems are collected.
Name The name of the group. Can be changed by SetName(string).
Methods
Add(BaseSystem) Adds the passed system to the group.
FindGroup(string, bool) Returns the group with the specified name.
FindSystem<T>(bool) Returns the system with of the specified type T.
GetEnumerator() Returns an enumerator that iterates through the ChildSystems.
Insert(int, BaseSystem) Adds the passed system at the given index to the group.
If index == -1 the system is added to the tail of the group.
IsAncestorOf(BaseSystem) Returns true if the group is an ancestor of the passed system.
OnAddStore(EntityStore)
OnRemoveStore(EntityStore)
OnUpdateGroup() Is called when executing Update(UpdateTick).
Remove(BaseSystem) Removes the passed system from the group.
SetMonitorPerf(bool) Enable / disable performance monitoring of its ChildSystems.
SetName(string) Changes the name of the system group.
ToString()
Update(UpdateTick) Execute all systems within the group.
Explicit Interface Implementations
System.Collections.IEnumerable.GetEnumerator()