UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FSoftClassProperty Class Reference

#include <UnrealType.h>

+ Inheritance diagram for FSoftClassProperty:

Public Member Functions

UE_API FSoftClassProperty (FFieldVariant InOwner, const FName &InName, EObjectFlags InObjectFlags)
 
UE_API FSoftClassProperty (FFieldVariant InOwner, const UECodeGen_Private::FSoftClassPropertyParams &Prop)
 
virtual UE_API FString GetCPPType (FString *ExtendedTypeText, uint32 CPPExportFlags) const override
 
virtual UE_API FString GetCPPMacroType (FString &ExtendedTypeText) const override
 
virtual UE_API void PostDuplicate (const FField &InField) override
 
virtual UE_API void Serialize (FArchive &Ar) override
 
virtual UE_API void AddReferencedObjects (FReferenceCollector &Collector) override
 
virtual UE_API void BeginDestroy () override
 
virtual UE_API bool SameType (const FProperty *Other) const override
 
UE_FORCEINLINE_HINT void SetMetaClass (UClass *NewMetaClass)
 
- Public Member Functions inherited from FSoftObjectProperty
virtual UE_API EConvertFromTypeResult ConvertFromType (const FPropertyTag &Tag, FStructuredArchive::FSlot Slot, uint8 *Data, const UStruct *DefaultsStruct, const uint8 *Defaults) override
 
virtual UE_API UObjectLoadObjectPropertyValue (const void *PropertyValueAddress) const override
 
virtual UE_API UObjectGetObjectPropertyValue (const void *PropertyValueAddress) const override
 
virtual UE_API TObjectPtr< UObjectGetObjectPtrPropertyValue (const void *PropertyValueAddress) const override
 
virtual UE_API UObjectGetObjectPropertyValue_InContainer (const void *ContainerAddress, int32 ArrayIndex=0) const override
 
virtual UE_API TObjectPtr< UObjectGetObjectPtrPropertyValue_InContainer (const void *ContainerAddress, int32 ArrayIndex=0) const override
 
virtual UE_API bool AllowCrossLevel () const override
 
- Public Member Functions inherited from TFObjectPropertyBase< FSoftObjectPtr >
 TFObjectPropertyBase (EInternal InInernal, FFieldClass *InClass)
 
 TFObjectPropertyBase (FFieldVariant InOwner, const FName &InName, EObjectFlags InObjectFlags)
 
 TFObjectPropertyBase (FFieldVariant InOwner, const UECodeGen_Private::FObjectPropertyParams &Prop)
 
 TFObjectPropertyBase (FFieldVariant InOwner, const UECodeGen_Private::FObjectPropertyParamsWithoutClass &Prop, UClass *InClass)
 
virtual bool ContainsObjectReference (TArray< const FStructProperty * > &EncounteredStructProps, EPropertyObjectReferenceType InReferenceType=EPropertyObjectReferenceType::Strong) const override
 
- Public Member Functions inherited from TProperty< InTCppType, TInPropertyBaseClass >
 TProperty (EInternal InInernal, FFieldClass *InClass)
 
 TProperty (FFieldVariant InOwner, const FName &InName, EObjectFlags InObjectFlags)
 
template<typename PropertyParamsType >
 TProperty (FFieldVariant InOwner, PropertyParamsType &Prop)
 
virtual int32 GetMinAlignment () const override
 
virtual void CopyValuesInternal (void *Dest, void const *Src, int32 Count) const override
 
virtual void ClearValueInternal (void *Data) const override
 
virtual void InitializeValueInternal (void *Dest) const override
 
virtual void DestroyValueInternal (void *Dest) const override
 
UE_FORCEINLINE_HINT TCppType const * GetPropertyValuePtr_InContainer (void const *A, int32 ArrayIndex=0) const
 
UE_FORCEINLINE_HINT TCppTypeGetPropertyValuePtr_InContainer (void *A, int32 ArrayIndex=0) const
 
UE_FORCEINLINE_HINT TCppType const & GetPropertyValue_InContainer (void const *A, int32 ArrayIndex=0) const
 
UE_FORCEINLINE_HINT TCppType GetOptionalPropertyValue_InContainer (void const *B, int32 ArrayIndex=0) const
 
UE_FORCEINLINE_HINT void SetPropertyValue_InContainer (void *A, TCppType const &Value, int32 ArrayIndex=0) const
 
UE_FORCEINLINE_HINT void SetValue_InContainer (void *OutContainer, const TCppType &InValue) const
 
UE_FORCEINLINE_HINT void GetValue_InContainer (void const *InContainer, TCppType *OutValue) const
 
virtual bool HasIntrusiveUnsetOptionalState () const override
 
virtual void InitializeIntrusiveUnsetOptionalValue (void *Data) const override
 
virtual bool IsIntrusiveOptionalValueSet (const void *Data) const override
 
virtual void ClearIntrusiveOptionalValue (void *Data) const override
 

Additional Inherited Members

- Public Types inherited from TFObjectPropertyBase< FSoftObjectPtr >
typedef TProperty< FSoftObjectPtr, FObjectPropertyBaseSuper
 
typedef FSoftObjectPtr TCppType
 
typedef Super::TTypeFundamentals TTypeFundamentals
 
- Public Types inherited from TProperty< InTCppType, TInPropertyBaseClass >
typedef InTCppType TCppType
 
typedef TInPropertyBaseClass Super
 
typedef TPropertyTypeFundamentals< InTCppTypeTTypeFundamentals
 
- Public Types inherited from TPropertyTypeFundamentals< InTCppType >
enum  { CPPSize = sizeof(TCppType) , CPPAlignment = alignof(TCppType) }
 
typedef InTCppType TCppType
 
- Static Public Member Functions inherited from TPropertyTypeFundamentals< InTCppType >
static UE_FORCEINLINE_HINT TCHAR const * GetTypeName ()
 
static UE_FORCEINLINE_HINT TCppType const * GetPropertyValuePtr (void const *A)
 
static UE_FORCEINLINE_HINT TCppTypeGetPropertyValuePtr (void *A)
 
static UE_FORCEINLINE_HINT TCppType const & GetPropertyValue (void const *A)
 
static UE_FORCEINLINE_HINT TCppType GetDefaultPropertyValue ()
 
static UE_FORCEINLINE_HINT TCppType GetOptionalPropertyValue (void const *B)
 
static UE_FORCEINLINE_HINT void SetPropertyValue (void *A, TCppType const &Value)
 
static UE_FORCEINLINE_HINT TCppTypeInitializePropertyValue (void *A)
 
static UE_FORCEINLINE_HINT void DestroyPropertyValue (void *A)
 
static UE_FORCEINLINE_HINT bool HasIntrusiveUnsetOptionalState ()
 
static UE_FORCEINLINE_HINT void InitializeIntrusiveUnsetOptionalValue (void *Data)
 
static UE_FORCEINLINE_HINT bool IsIntrusiveOptionalValueSet (const void *A)
 
static UE_FORCEINLINE_HINT void ClearIntrusiveOptionalValue (void *A)
 
- Protected Member Functions inherited from FSoftObjectProperty
virtual UE_API void LinkInternal (FArchive &Ar) override
 
virtual UE_API void ExportText_Internal (FString &ValueStr, const void *PropertyValueOrContainer, EPropertyPointerType PropertyPointerType, const void *DefaultValue, UObject *Parent, int32 PortFlags, UObject *ExportRootScope) const override
 
virtual UE_API const TCHARImportText_Internal (const TCHAR *Buffer, void *ContainerOrPropertyPtr, EPropertyPointerType PropertyPointerType, UObject *OwnerObject, int32 PortFlags, FOutputDevice *ErrorText) const override
 
virtual UE_API void SetObjectPropertyValueUnchecked (void *PropertyValueAddress, UObject *Value) const override
 
virtual UE_API void SetObjectPtrPropertyValueUnchecked (void *PropertyValueAddress, TObjectPtr< UObject > Ptr) const override
 
virtual UE_API void SetObjectPropertyValueUnchecked_InContainer (void *ContainerAddress, UObject *Value, int32 ArrayIndex=0) const override
 
virtual UE_API void SetObjectPtrPropertyValueUnchecked_InContainer (void *ContainerAddress, TObjectPtr< UObject > Ptr, int32 ArrayIndex=0) const override
 
- Static Protected Member Functions inherited from TPropertyTypeFundamentals< InTCppType >
static EPropertyFlags GetComputedFlagsPropertyFlags ()
 

Constructor & Destructor Documentation

◆ FSoftClassProperty() [1/2]

FSoftClassProperty::FSoftClassProperty ( FFieldVariant  InOwner,
const FName InName,
EObjectFlags  InObjectFlags 
)

◆ FSoftClassProperty() [2/2]

FSoftClassProperty::FSoftClassProperty ( FFieldVariant  InOwner,
const UECodeGen_Private::FSoftClassPropertyParams &  Prop 
)

Constructor used for constructing compiled in properties

Parameters
InOwnerOwner of the property
PropBasePointer to the compiled in structure describing the property

Member Function Documentation

◆ AddReferencedObjects()

void FSoftClassProperty::AddReferencedObjects ( FReferenceCollector Collector)
overridevirtual

◆ BeginDestroy()

void FSoftClassProperty::BeginDestroy ( )
overridevirtual

◆ GetCPPMacroType()

FString FSoftClassProperty::GetCPPMacroType ( FString &  ExtendedTypeText) const
overridevirtual

Reimplemented from FSoftObjectProperty.

◆ GetCPPType()

FString FSoftClassProperty::GetCPPType ( FString *  ExtendedTypeText,
uint32  CPPExportFlags 
) const
overridevirtual

Reimplemented from FSoftObjectProperty.

◆ PostDuplicate()

void FSoftClassProperty::PostDuplicate ( const FField InField)
overridevirtual

◆ SameType()

bool FSoftClassProperty::SameType ( const FProperty Other) const
overridevirtual

◆ Serialize()

void FSoftClassProperty::Serialize ( FArchive Ar)
overridevirtual

◆ SetMetaClass()

UE_FORCEINLINE_HINT void FSoftClassProperty::SetMetaClass ( UClass NewMetaClass)
inline

Setter function for this property's MetaClass member. Favor this function whilst loading (since, to handle circular dependencies, we defer some class loads and use a placeholder class instead). It properly handles deferred loading placeholder classes (so they can properly be replaced later).

Parameters
NewMetaClassThe MetaClass you want this property set with.

The documentation for this class was generated from the following files: