FSoftObjectProperty

Describes a reference variable to another object which may be nil, and will become valid or invalid at any point

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

References

Module

CoreUObject

Header

/Engine/Source/Runtime/CoreUObject/Public/UObject/UnrealType.h

Include

#include "UObject/UnrealType.h"

Syntax

class FSoftObjectProperty :
    public FObjectPropertyBase,
    public TFObjectPropertyBase< FSoftObjectPtr >

Remarks

Describes a reference variable to another object which may be nil, and will become valid or invalid at any point

Constructors

Name Description

Public function

FSoftObjectProperty

(
    UField* InField
)

Public function

FSoftObjectProperty

(
    const FObjectInitializer& ObjectIn...
)

Public function

FSoftObjectProperty

(
    FVTableHelper& Helper
)

DO NOT USE. This constructor is for internal usage only for hot-reload purposes.

Public function

FSoftObjectProperty

(
    EInternal InInernal,
    FFieldClass* InClass
)

Public function

FSoftObjectProperty

(
    FFieldVariant InOwner,
    const FName& InName,
    EObjectFlags InObjectFlags
)

Public function

FSoftObjectProperty

(
    ECppProperty,
    int32 InOffset,
    EPropertyFlags InFlags,
    UClass* InClass
)

Public function

FSoftObjectProperty

(
    const FObjectInitializer& ObjectIn...,
    ECppProperty,
    int32 InOffset,
    EPropertyFlags InFlags,
    UClass* InClass
)

Public function

FSoftObjectProperty

(
    FFieldVariant InOwner,
    const FName& InName,
    EObjectFlags InObjectFlags,
    int32 InOffset,
    EPropertyFlags InFlags,
    UClass* InClass
)

Functions

Name Description

Public function Static

void

 

__DefaultConstructor

(
    const FObjectInitializer& X
)

Public function Static

UObject *...

 

__VTableCtorCaller

(
    FVTableHelper& Helper
)

Public function Static

FField *

 

Construct

(
    const FFieldVariant& InOwner,
    const FName& InName,
    EObjectFlags InObjectFlags
)

Public function Static

FFieldClass ...

 

StaticClass()

Public function Static

UClass *

 

StaticClass()

Returns a UClass object representing this class at runtime

Public function Static

uint64

 

StaticClassCastFlags()

Public function Static

EClassCastFl...

 

StaticClassCastFlags()

Returns the static cast flags for this class

Public function Static

uint64

 

StaticClassCastFlagsPrivate()

Public function Static

const TCHAR ...

 

StaticPackage()

Returns the package this class belongs in

Public function Static

void

 

StaticRegisterNativesFSoftObjectProperty()

Overridden from FObjectPropertyBase

Name Description

Public function Virtual Const

bool

 

AllowCrossLevel()

Public function Virtual Const

FString

 

GetCPPTypeCustom

(
    FString* ExtendedTypeText,
    uint32 CPPExportFlags,
    const FString& InnerNativeTypeName
)

Public function Virtual Const

UObject *...

 

GetObjectPropertyValue

(
    const void* PropertyValueAddre...
)

Public function Virtual Const

UObject *...

 

LoadObjectPropertyValue

(
    const void* PropertyValueAddre...
)

Public function Virtual Const

void

 

SetObjectPropertyValue

(
    void* PropertyValueAddress,
    UObject* Value
)

Overridden from FProperty

Name Description

Public function Virtual

EConvertFrom...

 

ConvertFromType

(
    const FPropertyTag& Tag,
    FStructuredArchive::FSlot Slot,
    uint8* Data,
    UStruct* DefaultsStruct
)

Allows a property to implement backwards compatibility handling for tagged properties

Public function Virtual Const

void

 

CopyCompleteValueFromScriptVM

(
    void* Dest,
    void const* Src
)

Copy the value for all elements of this property. From the script VM.

Public function Virtual Const

void

 

CopyCompleteValueToScriptVM

(
    void* Dest,
    void const* Src
)

Copy the value for all elements of this property. To the script VM.

Public function Virtual Const

void

 

CopySingleValueFromScriptVM

(
    void* Dest,
    void const* Src
)

Copy the value for a single element of this property. From the script VM.

Public function Virtual Const

void

 

CopySingleValueToScriptVM

(
    void* Dest,
    void const* Src
)

Copy the value for a single element of this property. To the script VM.

Public function Virtual

void

 

EmitReferenceInfo

(
    UClass& OwnerClass,
    int32 BaseOffset,
    TArray< const FStructProperty*...,
    FGCStackSizeHelper& StackSizeHelpe...
)

Emits tokens used by realtime garbage collection code to passed in ReferenceTokenStream.

Public function Virtual Const

void

 

ExportTextItem

(
    FString& ValueStr,
    const void* PropertyValue,
    const void* DefaultValue,
    UObject* Parent,
    int32 PortFlags,
    UObject* ExportRootScope
)

Public function Virtual Const

FString

 

GetCPPMacroType

(
    FString& ExtendedTypeText
)

Public function Virtual Const

FString

 

GetCPPTypeForwardDeclaration()

Public function Virtual Const

FName

 

GetID()

Public function Virtual Const

bool

 

Identical

(
    const void* A,
    const void* B,
    uint32 PortFlags
)

Determines whether the property values are identical.

Public function Virtual Const

const TCHAR ...

 

ImportText_Internal

(
    const TCHAR* Buffer,
    void* Data,
    int32 PortFlags,
    UObject* OwnerObject,
    FOutputDevice* ErrorText
)

Public function Virtual Const

bool

 

NetSerializeItem

(
    FArchive& Ar,
    UPackageMap* Map,
    void* Data,
    TArray< uint8 >* MetaData
)

Public function Virtual Const

void

 

SerializeItem

(
    FStructuredArchive::FSlot Slot,
    void* Value,
    void const* Defaults
)

Overridden from TProperty

Name Description

Public function Virtual Const

FString

 

GetCPPType

(
    FString* ExtendedTypeText,
    uint32 CPPExportFlags
)

TProperty::GetCPPType should not be used here.

Operators

Name Description

Public function

void

 

operator delete

(
    void* InMem
)

Eliminate V1062 warning from PVS-Studio while keeping MSVC and Clang happy.

Public function

void

 

operator delete

(
    void* InMem
)

Public function

void *

 

operator new

(
    const size_t InSize
)

Public function

void *

 

operator new

(
    const size_t InSize,
    void* InMem
)

Public function

void *

 

operator new

(
    const size_t InSize,
    EInternal* InMem
)

For internal use only; use StaticConstructObject() to create new objects.

Public function

void *

 

operator new

(
    const size_t InSize,
    EInternal InInternalOnly,
    UObject* InOuter,
    FName InName,
    EObjectFlags InSetFlags
)

For internal use only; use StaticConstructObject() to create new objects.

Typedefs

Name

Description

Super

Typedef for the base class (FObjectPropertyBase)

Super

ThisClass

ThisClass

Typedef for FSoftObjectProperty.

Constants

Name

Description

StaticClassFlags

Bitwise union of EClassFlags pertaining to this class.