Interface ISystem
Common shape for class-based systems registered with RuntimeSchedule. Implemented by QuerySystem, CallbackSystem, and PipelineSystem.
public interface ISystem
Remarks
Mainly a marker so engine plumbing (registration, source attribution, etc.) can refer to "any class-based system" without falling back to object.
The exposed properties carry identity values that the engine populates during registration / build, so user code inside Execute can read its
own Name / Index without threading them through manually.
Lifecycle. Name is set immediately after Configure(SystemBuilder) returns inside Add(QuerySystem)
(and siblings). Index is set when Build(IResource, ILogger) assigns the system its DAG position. Both are null / -1 prior
to registration — do not rely on them inside Configure.
Properties
Index
DAG position assigned by Build(IResource, ILogger). -1 before build.
int Index { get; }
Property Value
Name
Configured name from Name(string). Null before registration; never changes after.
string Name { get; }