Navigation
API > API/Plugins > API/Plugins/MassEntity
Inheritance Hierarchy
- FGCObject
- FMassProcessingPhaseManager
- FMassTestProcessingPhaseManager
References
| Module | MassEntity |
| Header | /Engine/Plugins/Runtime/MassEntity/Source/MassEntity/Public/MassProcessingPhaseManager.h |
| Include | #include "MassProcessingPhaseManager.h" |
Syntax
struct FMassProcessingPhaseManager : public FGCObject
Remarks
MassProcessingPhaseManager owns separate FMassProcessingPhase instances for every ETickingGroup. When activated via Start function it registers and enables the FMassProcessingPhase instances which themselves are tick functions that host UMassCompositeProcessor which they trigger as part of their Tick function. MassProcessingPhaseManager serves as an interface to said FMassProcessingPhase instances and allows initialization with collections of processors (via Initialize function) as well as registering arbitrary functions to be called when a particular phase starts or ends (via GetOnPhaseStart and GetOnPhaseEnd functions).
Variables
| Type | Name | Description | |
|---|---|---|---|
| bool | bIsAllowedToTick | ||
| EMassProcessingPhase | CurrentPhase | ||
| TArray< TObjectPtr< UMassProcessor > > | DynamicProcessors | ||
| TSharedPtr< FMassEntityManager > | EntityManager | ||
| friend | FMassProcessingPhase | ||
| FDelegateHandle | OnNewArchetypeHandle | ||
| TWeakObjectPtr< UObject > | Owner | ||
| FPhaseGraphBuildState[(uint8) EMassProcessingPhase::MAX] | ProcessingGraphBuildStates | ||
| FMassProcessingPhase[(uint8) EMassProcessingPhase::MAX] | ProcessingPhases | ||
| TArray< FMassProcessingPhaseConfig > | ProcessingPhasesConfig |
Constructors
| Type | Name | Description | |
|---|---|---|---|
FMassProcessingPhaseManager
(
const FMassProcessingPhaseManager& Other |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | CreatePhases () |
Creates phase processors instances for each declared phase name, based on MassEntitySettings | |
| void | Deinitialize () |
Needs to be called before destruction, ideally before owner's BeginDestroy (a FGCObject's limitation) | |
| void | EnableTickFunctions
(
const UWorld& World |
||
| const TSharedPtr< FMassEntityManager > & | |||
| FMassEntityManager & | |||
| FString | GetName () |
||
| FMassProcessingPhase::FOnPhaseEvent & | GetOnPhaseEnd
(
const EMassProcessingPhase Phase |
Retrieves OnPhaseEnd multicast delegate's reference for a given Phase | |
| FMassProcessingPhase::FOnPhaseEvent & | GetOnPhaseStart
(
const EMassProcessingPhase Phase |
Retrieves OnPhaseStart multicast delegate's reference for a given Phase | |
| void | Initialize
(
UObject& InOwner, |
Populates hosted FMassProcessingPhase instances with Processors read from MassEntitySettings configuration. | |
| bool | IsRunning () |
||
| void | OnNewArchetype
(
const FMassArchetypeHandle& NewArchetype |
||
| void | OnPhaseEnd
(
FMassProcessingPhase& Phase |
Called by the given Phase at the very end of its execution function (the FMassProcessingPhase::ExecuteTick), after the FMassProcessingPhase.OnPhaseEnd broadcast delegate | |
| void | OnPhaseStart
(
const FMassProcessingPhase& Phase |
Called by the given Phase at the very start of its execution function (the FMassProcessingPhase::ExecuteTick), even before the FMassProcessingPhase.OnPhaseStart broadcast delegate | |
| void | RegisterDynamicProcessor
(
UMassProcessor& Processor |
Registers a dynamic processor. | |
| void | Stores EntityManager associated with given world's MassEntitySubsystem and kicks off phase ticking. | ||
| void | Start
(
const TSharedPtr< FMassEntityManager >& InEntityManager |
Stores InEntityManager as the entity manager. | |
| void | Stop () |
||
| const FGraphEventRef & | TriggerPhase
(
const EMassProcessingPhase Phase, |
||
| void | UnregisterDynamicProcessor
(
UMassProcessor& Processor |
Removes a previously registered dynamic processor of throws an assert if not found. |
Overridden from FGCObject
| Type | Name | Description | |
|---|---|---|---|
| void | AddReferencedObjects
(
FReferenceCollector& Collector |
Pure virtual that must be overloaded by the inheriting class. | |
| FString | Overload this method to report a name for your referencer |
Operators
| Type | Name | Description | |
|---|---|---|---|
| FMassProcessingPhaseManager & | operator=
(
const FMassProcessingPhaseManager& Other |
Classes
| Type | Name | Description | |
|---|---|---|---|
| FPhaseGraphBuildState |