Class Track
An ordered, tagged container of Dags — the top level of the runtime partitioning hierarchy (Engine → Track → DAG → Phase → System).
public sealed class Track
- Inheritance
-
Track
- Inherited Members
Remarks
Track order is the execution sequence: every DAG of track N completes before any DAG of track N+1 begins (a coarse engine-level barrier).
Within a track, DAGs are independent.
A track carries an open tag set (e.g. EngineTag). No engine behaviour keys off a track's Name; tooling visibility keys off Tags. The three built-in tracks — Engine-Pre, PublicTrack, Engine-Post — are created by Create(RuntimeOptions).
Fields
EngineTag
The engine tag — marks tracks that hold engine-internal DAGs (Engine-Pre, Engine-Post).
public const string EngineTag = "engine"
Field Value
Properties
Dags
DAGs declared on this track, in declaration order.
public IReadOnlyList<Dag> Dags { get; }
Property Value
IsEngine
True when this track carries the EngineTag — it holds engine-internal DAGs not surfaced as user systems.
public bool IsEngine { get; }
Property Value
Name
Track name. Diagnostic only — no engine behaviour keys off it.
public string Name { get; }
Property Value
OrderIndex
Execution order index. Lower-indexed tracks run to completion before higher-indexed ones begin. Reassigned by DeclareTrack(string, params string[]) as app tracks are slotted in, so it always equals the track's position.
public int OrderIndex { get; }
Property Value
Tags
The track's open tag set.
public IReadOnlyCollection<string> Tags { get; }
Property Value
Methods
DeclareDag(string)
Declares a new Dag on this track. A DAG that declares no named phases gets a single implicit phase — .After() edges suffice to
order a trivial DAG.
public Dag DeclareDag(string name)
Parameters
namestringDAG name — must be unique across the whole schedule.
Returns
HasTag(string)
True when tag is present in this track's tag set.
public bool HasTag(string tag)
Parameters
tagstring