Weaponry Assembly System
WAS
Loading...
Searching...
No Matches
UWeaponCustomFunctionRuntimeNode Class Reference

#include <WeaponCustomFunctionRuntimeNode.h>

+ Inheritance diagram for UWeaponCustomFunctionRuntimeNode:
+ Collaboration diagram for UWeaponCustomFunctionRuntimeNode:

Public Member Functions

virtual void ClearCache () const override
 
void CollectDataToPin (const UWeaponRuntimePin *Pin) const
 
void EnsureClassIsKnown ()
 
UFunction * GetFunction () const
 
virtual FORCEINLINE UObject * GetFunctionExecutor () const
 
virtual FORCEINLINE UClass * GetFunctionExecutorClass () const
 
FProperty * GetMatchingProperty (const UWeaponRuntimePin *Pin) const
 
virtual void Init () override
 
bool InitBagFromStructIfNeeded ()
 
void LoadFunctionData ()
 
void LoadIfNotLoaded () const
 
void LoadParams (const UFunction &Function) const
 
void SetArrayFromParam (const UWeaponRuntimePin *PinData, void *Params, FArrayProperty *Property)
 
void SetArrayToParam (const UWeaponRuntimePin *PinData, void *Params, FArrayProperty *Property)
 
FORCEINLINE void SetFunctionName (const FName &NewFunctionName)
 
void SetNumericFromParam (const UWeaponRuntimePin *PinData, void *Params, FNumericProperty *Property)
 
void SetNumericToParam (const UWeaponRuntimePin *PinData, void *Params, FNumericProperty *Property)
 
void SetObjectFromParam (const UWeaponRuntimePin *PinData, void *Params, FObjectProperty *Property)
 
void SetObjectToParam (const UWeaponRuntimePin *PinData, void *Params, FObjectProperty *Property)
 
void SetPinCacheDataType (const UWeaponRuntimePin *Pin) const
 
void SetValueFromParam (const UWeaponRuntimePin *PinData, void *ParamsData, FProperty *ParameterProperty)
 Copies the function's output parameter value into the pin.
 
void SetValueToParam (const UWeaponRuntimePin *PinData, void *ParamsData, FProperty *ParameterProperty)
 Copies the pin value into the function parameter according to property type.
 
- Public Member Functions inherited from UWeaponRuntimeNode
template<typename Fmt , typename ... Args>
void AbortExecution (Fmt &&Format, Args &&... args) const
 
void AbortExecution (FString &&Reason="") const
 
FORCEINLINE void Execute ()
 
FORCEINLINE_DEBUGGABLE TArray< UWeaponRuntimePin * > GetAllPins () const
 
class UWeaponAssetCharacteristicsGetCharacteristics () const
 
const class UWeaponAssetCharacteristicsGetCharacteristicsCDO () const
 
const class UWeaponAssetCharacteristicsGetDefaultCharacteristics () const
 
TSubclassOf< UWeaponAssetCharacteristicsGetDefaultCharacteristicsClass () const
 
const struct FWeaponExecutionContextGetDefaultExecutionContext () const
 
const struct FWeaponExecutionContextGetExecutionContext () const
 
class UWeaponRuntimeGraphGetGraph () const
 
class UWeaponRuntimeGraphGetGraphAnyContext () const
 
virtual FORCEINLINE UWeaponRuntimePinGetInput (int32 Index=0) const
 
FORCEINLINE UWeaponRuntimePinGetLastInput () const
 
virtual FORCEINLINE UWeaponRuntimePinGetMainInput () const
 
virtual FORCEINLINE UWeaponRuntimePinGetMainOutput () const
 
FORCEINLINE UWeaponRuntimeNodeGetNodeFromInput (int32 InputIndex) const
 
FORCEINLINE void GetNodeFromInput (int32 InputIndex, TArray< UWeaponRuntimeNode * > &ConnectedNodes) const
 
UWeaponRuntimeNodeGetNodeFromInput (UWeaponRuntimePin *FromPin) const
 
void GetNodeFromInput (UWeaponRuntimePin *FromPin, TArray< UWeaponRuntimeNode * > &ConnectedNodes) const
 
virtual FORCEINLINE UWeaponRuntimePinGetOutput (int32 Index=0) const
 
UWeaponRuntimePinGetPinByName (const FName &PinName, const TOptional< bool > &OptionalInputOnly) const
 
UWeaponRuntimePinGetPinConnection (const UWeaponRuntimePin *Pin, int32 ConnectionIndex=0) const
 
FORCEINLINE UWeaponRuntimePinGetPinConnection (int32 Pin, int32 ConnectionIndex=0) const
 
FORCEINLINE const TArray< UWeaponRuntimePin * > & GetPinConnections (const int32 Pin=0) const
 
const TArray< UWeaponRuntimePin * > & GetPinConnections (const UWeaponRuntimePin *Pin) const
 
virtual void GetValidPin (TArray< UWeaponRuntimePin * > &Pins)
 
UObject * GetWorldContext () const
 
FORCEINLINE bool HasInput () const
 
FORCEINLINE bool HasOutput () const
 
bool IsAborting () const
 
void Reset ()
 

Static Public Member Functions

static bool IsArray (const FProperty *Property)
 
static bool IsArrayOfObjects (const FProperty *Property)
 

Public Attributes

FInstancedPropertyBag ParamsBag
 
TObjectPtr< const UStruct > SourceParamsStruct
 
- Public Attributes inherited from UWeaponRuntimeNode
TArray< UWeaponRuntimePin * > InputPins
 
TArray< UWeaponRuntimePin * > OutputPins
 

Protected Member Functions

virtual void ExecuteNode () override
 
FName GetFunctionName () const
 
FName & GetFunctionNameRef ()
 
void LoadFunction () const
 
virtual void PostInitProperties () override
 
virtual void PreExecuteNode () override
 
virtual void Serialize (FArchive &Ar) override
 
virtual void Serialize (FStructuredArchive::FRecord Record) override
 
- Protected Member Functions inherited from UWeaponMemberNode
template<typename Member >
FORCEINLINE ELoadMember LoadMember (Member *&LoadTo, const FMemberReference &MemberRef, const FName FallbackName) const
 
template<typename Member >
FORCEINLINE ELoadMember LoadMemberChecked (Member *&LoadTo, const FMemberReference &MemberRef, const FName FallbackName) const
 
- Protected Member Functions inherited from UWeaponRuntimeNode
void FixInvalidPinsConnections ()
 
virtual void GetNodeDebugString (TArray< FString > &Strings) const
 
virtual void PostExecuteNode ()
 
void RemoveDuplicatedConections ()
 
void UpdateNodeFlowDebugString ()
 

Protected Attributes

const FMemberReference FunctionMember
 
UClass * FunctorClass
 
- Protected Attributes inherited from UWeaponRuntimeNode
FString NodeFlowDebugString
 

Additional Inherited Members

- Protected Types inherited from UWeaponMemberNode
enum class  ELoadMember : uint8 { None , FromName , FromMemberRef = None }
 

Detailed Description

Runtime node that calls a member function from the Characteristics class.

Member Function Documentation

◆ ClearCache()

virtual void UWeaponCustomFunctionRuntimeNode::ClearCache ( ) const
inlineoverridevirtual

Reimplemented from UWeaponRuntimeNode.

◆ CollectDataToPin()

void UWeaponCustomFunctionRuntimeNode::CollectDataToPin ( const UWeaponRuntimePin * Pin) const

◆ EnsureClassIsKnown()

void UWeaponCustomFunctionRuntimeNode::EnsureClassIsKnown ( )
inline

◆ ExecuteNode()

void UWeaponCustomFunctionRuntimeNode::ExecuteNode ( )
overrideprotectedvirtual

Reimplemented from UWeaponRuntimeNode.

◆ GetFunction()

UFunction * UWeaponCustomFunctionRuntimeNode::GetFunction ( ) const

Gets a pointer to the function.

◆ GetFunctionExecutor()

virtual FORCEINLINE UObject * UWeaponCustomFunctionRuntimeNode::GetFunctionExecutor ( ) const
inlinevirtual

◆ GetFunctionExecutorClass()

virtual FORCEINLINE UClass * UWeaponCustomFunctionRuntimeNode::GetFunctionExecutorClass ( ) const
inlinevirtual

◆ GetFunctionName()

FName UWeaponCustomFunctionRuntimeNode::GetFunctionName ( ) const
inlineprotected

◆ GetFunctionNameRef()

FName & UWeaponCustomFunctionRuntimeNode::GetFunctionNameRef ( )
inlineprotected

◆ GetMatchingProperty()

FProperty * UWeaponCustomFunctionRuntimeNode::GetMatchingProperty ( const UWeaponRuntimePin * Pin) const

Gets the property represented by the pin

Parameters
PinPin that represents the parameter
Returns
the property of the parameter represented or null if not found

◆ Init()

void UWeaponCustomFunctionRuntimeNode::Init ( )
overridevirtual

Reimplemented from UWeaponRuntimeNode.

◆ InitBagFromStructIfNeeded()

bool UWeaponCustomFunctionRuntimeNode::InitBagFromStructIfNeeded ( )

◆ IsArray()

bool UWeaponCustomFunctionRuntimeNode::IsArray ( const FProperty * Property)
static

◆ IsArrayOfObjects()

bool UWeaponCustomFunctionRuntimeNode::IsArrayOfObjects ( const FProperty * Property)
static

◆ LoadFunction()

void UWeaponCustomFunctionRuntimeNode::LoadFunction ( ) const
protected

◆ LoadFunctionData()

void UWeaponCustomFunctionRuntimeNode::LoadFunctionData ( )

◆ LoadIfNotLoaded()

void UWeaponCustomFunctionRuntimeNode::LoadIfNotLoaded ( ) const
inline

◆ LoadParams()

void UWeaponCustomFunctionRuntimeNode::LoadParams ( const UFunction & Function) const

◆ PostInitProperties()

void UWeaponCustomFunctionRuntimeNode::PostInitProperties ( )
overrideprotectedvirtual

◆ PreExecuteNode()

void UWeaponCustomFunctionRuntimeNode::PreExecuteNode ( )
overrideprotectedvirtual

Reimplemented from UWeaponRuntimeNode.

◆ Serialize() [1/2]

void UWeaponCustomFunctionRuntimeNode::Serialize ( FArchive & Ar)
overrideprotectedvirtual

◆ Serialize() [2/2]

virtual void UWeaponCustomFunctionRuntimeNode::Serialize ( FStructuredArchive::FRecord Record)
inlineoverrideprotectedvirtual

◆ SetArrayFromParam()

void UWeaponCustomFunctionRuntimeNode::SetArrayFromParam ( const UWeaponRuntimePin * PinData,
void * Params,
FArrayProperty * Property )

◆ SetArrayToParam()

void UWeaponCustomFunctionRuntimeNode::SetArrayToParam ( const UWeaponRuntimePin * PinData,
void * Params,
FArrayProperty * Property )

◆ SetFunctionName()

FORCEINLINE void UWeaponCustomFunctionRuntimeNode::SetFunctionName ( const FName & NewFunctionName)
inline

Updates the expected name of the property. THIS DOES NOT UPDATE THE POINTER

Parameters
NewFunctionNamenew expected name

◆ SetNumericFromParam()

void UWeaponCustomFunctionRuntimeNode::SetNumericFromParam ( const UWeaponRuntimePin * PinData,
void * Params,
FNumericProperty * Property )

◆ SetNumericToParam()

void UWeaponCustomFunctionRuntimeNode::SetNumericToParam ( const UWeaponRuntimePin * PinData,
void * Params,
FNumericProperty * Property )

◆ SetObjectFromParam()

void UWeaponCustomFunctionRuntimeNode::SetObjectFromParam ( const UWeaponRuntimePin * PinData,
void * Params,
FObjectProperty * Property )

◆ SetObjectToParam()

void UWeaponCustomFunctionRuntimeNode::SetObjectToParam ( const UWeaponRuntimePin * PinData,
void * Params,
FObjectProperty * Property )

◆ SetPinCacheDataType()

void UWeaponCustomFunctionRuntimeNode::SetPinCacheDataType ( const UWeaponRuntimePin * Pin) const

◆ SetValueFromParam()

void UWeaponCustomFunctionRuntimeNode::SetValueFromParam ( const UWeaponRuntimePin * PinData,
void * ParamsData,
FProperty * ParameterProperty )

Copies the function's output parameter value into the pin.

Parameters
PinDataDestination pin for the output value.
ParamsDataMemory location of the function parameters struct.
ParameterPropertyProperty descriptor of the output parameter.

◆ SetValueToParam()

void UWeaponCustomFunctionRuntimeNode::SetValueToParam ( const UWeaponRuntimePin * PinData,
void * ParamsData,
FProperty * ParameterProperty )

Copies the pin value into the function parameter according to property type.

Parameters
PinDataSource pin holding the value.
ParamsDataMemory location of the function parameters struct.
ParameterPropertyProperty descriptor of the function parameter.

Member Data Documentation

◆ FunctionMember

const FMemberReference UWeaponCustomFunctionRuntimeNode::FunctionMember
protected

◆ FunctorClass

UClass* UWeaponCustomFunctionRuntimeNode::FunctorClass
protected

◆ ParamsBag

FInstancedPropertyBag UWeaponCustomFunctionRuntimeNode::ParamsBag

◆ SourceParamsStruct

TObjectPtr<const UStruct> UWeaponCustomFunctionRuntimeNode::SourceParamsStruct