Navigation
Unreal Engine C++ API Reference > Runtime > Core > Serialization
References
Module | Core |
Header | /Engine/Source/Runtime/Core/Public/Serialization/MemoryImage.h |
Include | #include "Serialization/MemoryImage.h" |
Syntax
template<typename T, typename PtrType>
class TIndexedPtrBase
Remarks
Note that IndexedPtr types don't declare a default intrinsic type layout. Instead any required pointer types need to be declared/implemented using DECLARE_EXPORTED_TEMPLATE_INTRINSIC_TYPE_LAYOUT/IMPLEMENT_TEMPLATE_INTRINSIC_TYPE_LAYOUT. The TypeDesc of indexed pointers are compared for equality when adding to pointer tables, and it's possible for inline type layouts to generate multiple copies when referenced from multiple modules
Variables
Type | Name | Description | |
---|---|---|---|
![]() |
uint64 | PackedIndex | |
![]() |
PtrType | Ptr |
Constructors
Type | Name | Description | |
---|---|---|---|
![]() |
TIndexedPtrBase
(
T* InPtr |
||
![]() |
TIndexedPtrBase
(
const TIndexedPtrBase< T, PtrType >& Rhs |
Copy constructor requires an unfrozen source. | |
![]() |
TIndexedPtrBase
(
const TIndexedPtrBase< T, PtrType >& Rhs, |
Destructors
Type | Name | Description | |
---|---|---|---|
![]() |
Functions
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
T * | ||
![]() ![]() |
T * | Get
(
const FPointerTableBase* PtrTable |
|
![]() ![]() |
T * | GetUnfrozen () |
|
![]() ![]() |
bool | IsFrozen () |
|
![]() ![]() |
bool | IsNull () |
|
![]() ![]() |
bool | IsValid () |
|
![]() |
void | SafeRelease () |
Operators
Type | Name | Description | |
---|---|---|---|
![]() |
TIndexedPtrBase & | operator=
(
T* Rhs |
|
![]() |
TIndexedPtrBase & | operator=
(
const PtrType& Rhs |
|
![]() |
TIndexedPtrBase & | operator=
(
PtrType&& Rhs |
Typedefs
Name | Description |
---|---|
FPtrTable |
Constants
Name | Description |
---|---|
IndexShift | |
IsFrozenMask |