Navigation
API > API/Runtime > API/Runtime/Engine > API/Runtime/Engine/FTickableObjectBase
References
| Module | Engine |
| Header | /Engine/Source/Runtime/Engine/Public/Tickable.h |
| Include | #include "Tickable.h" |
Syntax
struct FTickableStatics
Remarks
Implementation struct for internals of ticking, there should be one instance of this for each direct subclass
Variables
| Type | Name | Description | |
|---|---|---|---|
| bool | bIsTickingObjects | True if any of the tick arrays are being iterated | |
| bool | bNeedsCleanup | True if any objects were deleted and this needs cleanup after tick | |
| TMap< FTickableObjectBase *, ETickableTickType > | NewTickableObjects | Set of objects that have not yet been queried for tick type | |
| FCriticalSection | NewTickableObjectsCritical | Lock for modifying new list, this is automatically acquired by functions below | |
| TArray< FTickableObjectBase::FTickableObjectEntry > | TickableObjects | List of objects that are fully ticking | |
| FCriticalSection | TickableObjectsCritical | This critical section should be locked during entire tick process |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | Finishes ticking and handle cleanup for entries that were invalidated | ||
| void | QueueTickableObjectForAdd
(
FTickableObjectBase* InTickable |
Call from anywhere to lock and add to the new objects list | |
| void | SetTickTypeForTickableObject
(
FTickableObjectBase* TickableObject, |
Call from anywhere to lock critical sections and set the tick type for an object which could modify both arrays | |
| void | StartTicking () |
Call after locking TickableObjectsCritical to process the NewTickableObjects array and prepare for tick |