Ark Server API (ASA) - Wiki
Loading...
Searching...
No Matches
MemoryImage.h File Reference
+ Include dependency graph for MemoryImage.h:

Go to the source code of this file.

Classes

class  FPointerTableBase
 
struct  TMemoryImageObject< T >
 
struct  FMemoryImageVTablePointer
 
struct  FMemoryImageNamePointer
 
struct  FMemoryImageResult
 
class  FMemoryImageSection
 
struct  FMemoryImageSection::FSectionPointer
 
class  FMemoryImage
 
struct  FFrozenMemoryImagePtr
 
class  TMemoryImagePtr< T >
 
class  TUniqueMemoryImagePtr< T >
 
class  FMemoryImageAllocatorBase
 
class  TMemoryImageAllocator< Alignment >
 
class  TMemoryImageAllocator< Alignment >::ForAnyElementType
 
class  TMemoryImageAllocator< Alignment >::ForElementType< ElementType >
 
struct  TAllocatorTraits< TMemoryImageAllocator< Alignment > >
 
struct  TIsContiguousContainer< FMemoryImageString >
 
class  FMemoryImageString
 
class  FHashedName
 
class  FPtrTableBase
 
struct  FPtrTableBase::FPatchOffset
 
struct  FPtrTableBase::FPatchOffsetList
 
class  TPtrTableBase< T, PtrType >
 
class  TPtrTable< T >
 
class  TRefCountPtrTable< T >
 
class  FVoidPtrTable
 
class  TIndexedPtrBase< T, PtrType >
 
class  TPatchedPtrBase< T, PtrType >
 

Namespaces

namespace  Freeze
 

Macros

#define UE_MEMORYIMAGE_TRACK_TYPE_DEPENDENCIES   (WITH_EDITORONLY_DATA)
 

Typedefs

using FMemoryImageObject = TMemoryImageObject<void>
 
using FMemoryImageAllocator = TMemoryImageAllocator<>
 
using FMemoryImageSparseArrayAllocator = TSparseArrayAllocator<FMemoryImageAllocator, FMemoryImageAllocator>
 
using FMemoryImageSetAllocator = TSetAllocator<FMemoryImageSparseArrayAllocator, FMemoryImageAllocator>
 
template<typename T >
using TMemoryImageArray = TArray<T, FMemoryImageAllocator>
 
template<typename ElementType , typename KeyFuncs = DefaultKeyFuncs<ElementType>>
using TMemoryImageSet = TSet<ElementType, KeyFuncs, FMemoryImageSetAllocator>
 
template<typename KeyType , typename ValueType , typename KeyFuncs = TDefaultMapHashableKeyFuncs<KeyType, ValueType, false>>
using TMemoryImageMap = TMap<KeyType, ValueType, FMemoryImageSetAllocator, KeyFuncs>
 
template<typename T >
using TIndexedPtr = TIndexedPtrBase<T, T*>
 
template<typename T >
using TIndexedRefCountPtr = TIndexedPtrBase<T, TRefCountPtr<T>>
 
template<typename T >
using TPatchedPtr = TPatchedPtrBase<T, T*>
 
template<typename T >
using TPatchedRefCountPtr = TPatchedPtrBase<T, TRefCountPtr<T>>
 

Functions

FMemoryImageObject FreezeMemoryImageObject (const void *Object, const FTypeLayoutDesc &TypeDesc, FPointerTableBase *PointerTable)
 
voidUnfreezeMemoryImageObject (const void *FrozenObject, const FTypeLayoutDesc &TypeDesc, const FPointerTableBase *PointerTable)
 
template<typename T >
void Freeze::IntrinsicWriteMemoryImage (FMemoryImageWriter &Writer, const TMemoryImagePtr< T > &Object, const FTypeLayoutDesc &)
 
template<typename T >
uint32 Freeze::IntrinsicUnfrozenCopy (const FMemoryUnfreezeContent &Context, const TMemoryImagePtr< T > &Object, void *OutDst)
 
template<typename T >
uint32 Freeze::IntrinsicAppendHash (const TMemoryImagePtr< T > *DummyObject, const FTypeLayoutDesc &TypeDesc, const FPlatformTypeLayoutParameters &LayoutParams, FSHA1 &Hasher)
 
template<typename T >
uint32 Freeze::IntrinsicGetTargetAlignment (const TMemoryImagePtr< T > *DummyObject, const FTypeLayoutDesc &TypeDesc, const FPlatformTypeLayoutParameters &LayoutParams)
 
template<typename T >
void Freeze::IntrinsicToString (const TMemoryImagePtr< T > &Object, const FTypeLayoutDesc &TypeDesc, const FPlatformTypeLayoutParameters &LayoutParams, FMemoryToStringContext &OutContext)
 
 DECLARE_TEMPLATE_INTRINSIC_TYPE_LAYOUT (template< typename T >, TMemoryImagePtr< T >)
 
void Freeze::IntrinsicToString (const FHashedName &Object, const FTypeLayoutDesc &TypeDesc, const FPlatformTypeLayoutParameters &LayoutParams, FMemoryToStringContext &OutContext)
 
template<typename T , typename PtrType >
void Freeze::IntrinsicWriteMemoryImage (FMemoryImageWriter &Writer, const TIndexedPtrBase< T, PtrType > &Object, const FTypeLayoutDesc &TypeDesc)
 
template<typename T , typename PtrType >
uint32 Freeze::IntrinsicUnfrozenCopy (const FMemoryUnfreezeContent &Context, const TIndexedPtrBase< T, PtrType > &Object, void *OutDst)
 
template<typename T , typename PtrType >
uint32 Freeze::IntrinsicAppendHash (const TIndexedPtrBase< T, PtrType > *DummyObject, const FTypeLayoutDesc &TypeDesc, const FPlatformTypeLayoutParameters &LayoutParams, FSHA1 &Hasher)
 
template<typename T , typename PtrType >
uint32 Freeze::IntrinsicGetTargetAlignment (const TIndexedPtrBase< T, PtrType > *DummyObject, const FTypeLayoutDesc &TypeDesc, const FPlatformTypeLayoutParameters &LayoutParams)
 

Macro Definition Documentation

◆ UE_MEMORYIMAGE_TRACK_TYPE_DEPENDENCIES

#define UE_MEMORYIMAGE_TRACK_TYPE_DEPENDENCIES   (WITH_EDITORONLY_DATA)

Definition at line 44 of file MemoryImage.h.

Typedef Documentation

◆ FMemoryImageAllocator

◆ FMemoryImageObject

◆ FMemoryImageSetAllocator

◆ FMemoryImageSparseArrayAllocator

◆ TIndexedPtr

Definition at line 1193 of file MemoryImage.h.

◆ TIndexedRefCountPtr

Definition at line 1196 of file MemoryImage.h.

◆ TMemoryImageArray

Definition at line 724 of file MemoryImage.h.

◆ TMemoryImageMap

template<typename KeyType , typename ValueType , typename KeyFuncs = TDefaultMapHashableKeyFuncs<KeyType, ValueType, false>>
using TMemoryImageMap = TMap<KeyType, ValueType, FMemoryImageSetAllocator, KeyFuncs>

Definition at line 730 of file MemoryImage.h.

◆ TMemoryImageSet

template<typename ElementType , typename KeyFuncs = DefaultKeyFuncs<ElementType>>
using TMemoryImageSet = TSet<ElementType, KeyFuncs, FMemoryImageSetAllocator>

Definition at line 727 of file MemoryImage.h.

◆ TPatchedPtr

Definition at line 1222 of file MemoryImage.h.

◆ TPatchedRefCountPtr

Definition at line 1225 of file MemoryImage.h.

Function Documentation

◆ DECLARE_TEMPLATE_INTRINSIC_TYPE_LAYOUT()

DECLARE_TEMPLATE_INTRINSIC_TYPE_LAYOUT ( template< typename T > ,
TMemoryImagePtr< T >  )

◆ FreezeMemoryImageObject()

FMemoryImageObject FreezeMemoryImageObject ( const void * Object,
const FTypeLayoutDesc & TypeDesc,
FPointerTableBase * PointerTable )

◆ UnfreezeMemoryImageObject()

void * UnfreezeMemoryImageObject ( const void * FrozenObject,
const FTypeLayoutDesc & TypeDesc,
const FPointerTableBase * PointerTable )