Navigation
API > API/Plugins > API/Plugins/Mover
MoverBlackboard: this is a simple generic map that can store any type, used as a way for decoupled systems to store calculations or transient state data that isn't necessary to reconstitute the movement simulation. It has support for invalidation, which could occur, for example, when a rollback is triggered. Values submitted are copy-in, copy-out. Unlike a traditional blackboard pattern, there is no support for subscribing to changes. TODO: expand invalidation rules attached to BBObjs, for instance if we wanted some to invalidate upon rollback. Some might expire over time or after a number of simulation frames. Or an item could be tagged with a predicted sim frame #, and become cleared once that frame is finalized/confirmed.
| Name | UMoverBlackboard |
| Type | class |
| Header File | /Engine/Plugins/Experimental/Mover/Source/Mover/Public/MoveLibrary/MoverBlackboard.h |
| Include Path | #include "MoveLibrary/MoverBlackboard.h" |
Syntax
UCLASS (MinimalAPI, BlueprintType)
class UMoverBlackboard : public UObject
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UMoverBlackboard
Classes
| Name | Remarks |
|---|---|
| BlackboardObject |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| ObjectsByName | TMap< FName, TUniquePtr< BlackboardObject > > | MoveLibrary/MoverBlackboard.h | ||
| ObjectsMapLock | FTransactionallySafeRWLock | MoveLibrary/MoverBlackboard.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
| TODO: make GetOrAdds. One that takes a value, and one that takes a lambda that can generate the new value. | MoveLibrary/MoverBlackboard.h | ||
void Invalidate
(
FName ObjName |
Invalidate an object by name | MoveLibrary/MoverBlackboard.h | |
void Invalidate
(
EInvalidationReason Reason |
Invalidate all objects that can be affected by a particular circumstance (such as a rollback) | MoveLibrary/MoverBlackboard.h | |
void InvalidateAll() |
Invalidate all objects | MoveLibrary/MoverBlackboard.h | |
void Set
(
FName ObjName, |
Store object by a named key, overwriting any existing object | MoveLibrary/MoverBlackboard.h | |
| Attempt to retrieve an object from the blackboard. | MoveLibrary/MoverBlackboard.h |
Overridden from UObject
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void BeginDestroy() |
MoveLibrary/MoverBlackboard.h |