UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
WeakObjectPtrTemplates.h File Reference
#include "CoreTypes.h"
#include "Templates/LosesQualifiersFromTo.h"
#include "Templates/Requires.h"
#include "Containers/Map.h"
#include "Misc/UEOps.h"
#include "UObject/WeakObjectPtrTemplatesFwd.h"
#include "UObject/StrongObjectPtrTemplatesFwd.h"
#include <type_traits>

Go to the source code of this file.

Classes

struct  TWeakObjectPtr< T, TWeakObjectPtrBase >
 
struct  TWeakObjectPtrSetKeyFuncs< ElementType, bInAllowDuplicateKeys >
 
struct  TWeakObjectPtrMapKeyFuncs< KeyType, ValueType, bInAllowDuplicateKeys >
 
struct  TCallTraits< TWeakObjectPtr< T > >
 

Functions

template<typename T >
 TWeakObjectPtr (T *) -> TWeakObjectPtr< T >
 
template<typename T >
 TWeakObjectPtr (const TWeakObjectPtr< T > &) -> TWeakObjectPtr< T >
 
template<typename T >
FORCEINLINE TWeakObjectPtr< T > MakeWeakObjectPtr (T *Ptr)
 
template<typename DestArrayType , typename SourceArrayType >
void CopyFromWeakArray (DestArrayType &Dest, const SourceArrayType &Src)
 
template<typename DestArrayType , typename SourceArrayType >
void CopyToWeakArray (DestArrayType &Dest, const SourceArrayType &Src)
 
template<typename T >
FORCEINLINE uint32 GetTypeHash (const TWeakObjectPtr< T > &WeakObjectPtr)
 
template<class T , class TWeakObjectPtrBase >
FArchiveoperator<< (FArchive &Ar, TWeakObjectPtr< T, TWeakObjectPtrBase > &WeakObjectPtr)
 

Function Documentation

◆ CopyFromWeakArray()

void CopyFromWeakArray ( DestArrayType Dest,
const SourceArrayType Src 
)

Utility function to fill in a TArray<ClassName*> from a TArray<TWeakObjectPtr<ClassName>>

◆ CopyToWeakArray()

void CopyToWeakArray ( DestArrayType Dest,
const SourceArrayType Src 
)

Utility function to fill in a TArray<TWeakObjectPtr<ClassName>> from a TArray<TObjectPtr<ClassName>> or TArray<ClassName*>

◆ GetTypeHash()

template<typename T >
FORCEINLINE uint32 GetTypeHash ( const TWeakObjectPtr< T > &  WeakObjectPtr)

Hash function.

◆ MakeWeakObjectPtr()

template<typename T >
FORCEINLINE TWeakObjectPtr< T > MakeWeakObjectPtr ( T *  Ptr)

◆ operator<<()

template<class T , class TWeakObjectPtrBase >
FArchive & operator<< ( FArchive Ar,
TWeakObjectPtr< T, TWeakObjectPtrBase > &  WeakObjectPtr 
)

Weak object pointer serialization, this forwards to FArchive::operator<<(struct FWeakObjectPtr&) or an override

◆ TWeakObjectPtr() [1/2]

template<typename T >
TWeakObjectPtr ( const TWeakObjectPtr< T > &  ) -> TWeakObjectPtr< T >

◆ TWeakObjectPtr() [2/2]

template<typename T >
TWeakObjectPtr ( T *  ) -> TWeakObjectPtr< T >