FSMGraphProperty_Base_Runtime¶
Module: SMSystem
#include <SMGraphProperty_Base.h>
Inherited by FSMGraphProperty_Base, FSMGraphProperty_Runtime, FSMTextGraphProperty_Runtime
Description¶
The base graph properties containing the bare essentials for run-time. Any run-time graph property types should inherit from this.
Public Functions¶
| Name | |
|---|---|
| FSMGraphProperty_Base_Runtime() | |
| virtual | ~FSMGraphProperty_Base_Runtime() =default |
| virtual void | Initialize(FSMNode_Base * InOwningNode) |
| virtual void | Execute(void * Params =nullptr, ESMGraphPropertyDirection Direction =ESMGraphPropertyDirection::Both) |
| virtual FORCEINLINE uint8 * | GetResult() const |
| virtual FORCEINLINE void | SetResult(uint8 * Value) |
| virtual const FGuid & | SetGuid(const FGuid & NewGuid) |
| FORCEINLINE const FGuid & | GetGuid() const |
| virtual const FGuid & | SetOwnerGuid(const FGuid & NewGuid) |
| FORCEINLINE const FGuid & | GetOwnerGuid() const |
| void | SetIsDefaultValueOnly(bool bNewValue) |
| FORCEINLINE bool | GetIsDefaultValueOnly() const |
| FORCEINLINE bool | IsInputProperty() const |
| FORCEINLINE bool | IsOutputProperty() const |
| virtual FORCEINLINE FName | GetResultPropertyName() const |
| virtual FORCEINLINE bool | CanAcceptPropertyFlag(const ESMGraphPropertyFlags Flag) const |
| FORCEINLINE bool | HasAnyPropertyFlags(const ESMGraphPropertyFlags Flag) const |
| FORCEINLINE bool | HasAllPropertyFlags(const ESMGraphPropertyFlags Flag) const |
| FORCEINLINE bool | AddPropertyFlags(const ESMGraphPropertyFlags Flag) |
| FORCEINLINE void | RemovePropertyFlags(const ESMGraphPropertyFlags Flag) |
| FORCEINLINE bool | SetPropertyFlags(const ESMGraphPropertyFlags NewFlags) |
| FORCEINLINE ESMGraphPropertyFlags | GetPropertyFlags() const |
| FName | GetPropertyFlagsPropertyName() |
Public Attributes¶
| Name | |
|---|---|
| TArray< FSMExposedFunctionHandler > * | GraphEvaluator |
| FSMGraphProperty_Base_Runtime * | LinkedProperty |
Protected Attributes¶
| Name | |
|---|---|
| FSMNode_Base * | OwningNode |
| FGuid | Guid |
| FGuid | OwnerGuid |
Public Functions Documentation¶
function FSMGraphProperty_Base_Runtime¶
function ~FSMGraphProperty_Base_Runtime¶
function Initialize¶
function Execute¶
virtual void Execute(
void * Params =nullptr,
ESMGraphPropertyDirection Direction =ESMGraphPropertyDirection::Both
)
function GetResult¶
Reimplemented by: FSMTextGraphProperty_Runtime::GetResult, FSMTextGraphProperty::GetResult
function SetResult¶
Reimplemented by: FSMTextGraphProperty_Runtime::SetResult, FSMTextGraphProperty::SetResult
function SetGuid¶
Reimplemented by: FSMGraphProperty_Base::SetGuid
function GetGuid¶
function SetOwnerGuid¶
function GetOwnerGuid¶
Returns the graph property owner of this node. Likely itself.
function SetIsDefaultValueOnly¶
Set whether the variable contains a default value only.
function GetIsDefaultValueOnly¶
Does this variable only contain a default value.
function IsInputProperty¶
If this variable is configured for input.
function IsOutputProperty¶
If this variable is configured for output.
function GetResultPropertyName¶
Get the property name of the result field.
Reimplemented by: FSMTextGraphProperty::GetResultPropertyName
function CanAcceptPropertyFlag¶
Checks if a property flag may be accepted.
Reimplemented by: FSMTextGraphProperty::CanAcceptPropertyFlag
function HasAnyPropertyFlags¶
If a property flag exists on this graph property.
function HasAllPropertyFlags¶
If all property flags exist on this graph property.
function AddPropertyFlags¶
Add a property flag to this graph property.
Return: true if the flag was successfully added.
Warning:
This generally shouldn't be called unless from a C++ constructor or values may not propagate correctly. Modifying property flags is handled automatically in Logic Driver.
function RemovePropertyFlags¶
Remove a property flag from this graph property.
Warning:
This generally shouldn't be called unless from a C++ constructor or values may not propagate correctly. Modifying property flags is handled automatically in Logic Driver.
function SetPropertyFlags¶
Set all property flags to a new value, providing all given flags may be accepted.
Return: true if all flags were set. If false then no new flags were set.
Warning:
This generally shouldn't be called unless from a C++ constructor or values may not propagate correctly. Modifying property flags is handled automatically in Logic Driver.
function GetPropertyFlags¶
Retrieve all property flags.
function GetPropertyFlagsPropertyName¶
Get the property name for PropertyFlags.
Public Attributes Documentation¶
variable GraphEvaluator¶
variable LinkedProperty¶
If set then the linked property is the one that is actually executing, but this struct is the one being read from.
Protected Attributes Documentation¶
variable OwningNode¶
The node this graph property belongs to.
variable Guid¶
variable OwnerGuid¶
The graph property owner. If this struct is defined within a node class and instanced to a state machine then the guid of class CDO is the owner.
Private Attributes Documentation¶
variable PropertyFlags¶
ESMGraphPropertyFlags runtime flags for this graph property.
This is EditDefaultsOnly even though it is never edited/displayed directly so we can make use of UE's propagation through handles in editor customization. It's uint8 so the handle propagation allows bitmask operations. Default enum expects singular values.