Photon Quantum 3.0.0

Public Member Functions | Protected Member Functions | Properties | List of all members
Quantum.SystemBase Class Referenceabstract

The Quantum system base class. More...

Inheritance diagram for Quantum.SystemBase:
Quantum.Core.CullingSystem2D Quantum.Core.CullingSystem3D Quantum.Core.NavigationSystem Quantum.Core.PhysicsSystem2D Quantum.Core.PhysicsSystem3D Quantum.SystemGroup Quantum.SystemMainThread Quantum.SystemSignalsOnly Quantum.Task.SystemArrayComponent< T > Quantum.Task.SystemArrayFilter< T > Quantum.Task.SystemThreadedComponent< T > Quantum.Task.SystemThreadedFilter< T >

Public Member Functions

 SystemBase ()
 Constructor. More...
 
 SystemBase (string scheduleSample)
 Create a new instance and setting the sample name. More...
 
virtual void OnDisabled (Frame f)
 Is called when the system was disabled for example after Frame.SystemDisable(Type). More...
 
virtual void OnEnabled (Frame f)
 Is called when the system was enabled for example after calling Frame.SystemEnable<T>() or during QuantumGame.InitSystems(Photon.Deterministic.DeterministicFrame). More...
 
virtual void OnInit (Frame f)
 Is called when the system is initialized. More...
 
TaskHandle OnSchedule (Frame f, TaskHandle taskHandle)
 Creates the task graph for the system. More...
 

Protected Member Functions

abstract TaskHandle Schedule (Frame f, TaskHandle taskHandle)
 Override to add tasks to this system. More...
 

Properties

virtual IEnumerable< SystemBaseChildSystems [get]
 The enumerable child systems. More...
 
IEnumerable< SystemBaseHierarchy [get]
 Creates the complete sub graph of child systems. More...
 
SystemBase ParentSystem [get]
 The parent system in the system hierarchy. More...
 
Int32 RuntimeIndex [get, set]
 A unique index assigned to identify systems at runtime. More...
 
virtual Boolean StartEnabled [get, set]
 Set to true when the simulation should start with this system enabled. More...
 

Detailed Description

The Quantum system base class.

Only advised for advanced uses only.

Constructor & Destructor Documentation

◆ SystemBase() [1/2]

Quantum.SystemBase.SystemBase ( )
inline

Constructor.

◆ SystemBase() [2/2]

Quantum.SystemBase.SystemBase ( string  scheduleSample)
inline

Create a new instance and setting the sample name.

Parameters
scheduleSampleThe name of the system to identify in the profiler.

Member Function Documentation

◆ OnInit()

virtual void Quantum.SystemBase.OnInit ( Frame  f)
inlinevirtual

◆ OnEnabled()

virtual void Quantum.SystemBase.OnEnabled ( Frame  f)
inlinevirtual

Is called when the system was enabled for example after calling Frame.SystemEnable<T>() or during QuantumGame.InitSystems(Photon.Deterministic.DeterministicFrame).

Parameters
fThe referenced frame.

Reimplemented in Quantum.SystemGroup, and Quantum.SystemMainThreadGroup.

◆ OnDisabled()

virtual void Quantum.SystemBase.OnDisabled ( Frame  f)
inlinevirtual

Is called when the system was disabled for example after Frame.SystemDisable(Type).

Parameters
fThe referenced frame.

Reimplemented in Quantum.SystemGroup, and Quantum.SystemMainThreadGroup.

◆ OnSchedule()

TaskHandle Quantum.SystemBase.OnSchedule ( Frame  f,
TaskHandle  taskHandle 
)
inline

Creates the task graph for the system.

Parameters
fThe referenced frame.
taskHandleThe initial task handle.
Returns
The system task graph.

◆ Schedule()

abstract TaskHandle Quantum.SystemBase.Schedule ( Frame  f,
TaskHandle  taskHandle 
)
protectedpure virtual

Property Documentation

◆ RuntimeIndex

Int32 Quantum.SystemBase.RuntimeIndex
getset

A unique index assigned to identify systems at runtime.

◆ ParentSystem

SystemBase Quantum.SystemBase.ParentSystem
get

The parent system in the system hierarchy.

◆ ChildSystems

virtual IEnumerable<SystemBase> Quantum.SystemBase.ChildSystems
get

The enumerable child systems.

◆ Hierarchy

IEnumerable<SystemBase> Quantum.SystemBase.Hierarchy
get

Creates the complete sub graph of child systems.

◆ StartEnabled

virtual Boolean Quantum.SystemBase.StartEnabled
getset

Set to true when the simulation should start with this system enabled.