5#include "Containers/Array.h"
7#include "Containers/Map.h"
127UE_DEPRECATED(5.3,
"FArchiveStackTrace was only used by DiffPackageWriter, and has been moved into a private helper class. Contact Epic if you need this class for another reason.")
135UE_DEPRECATED(5.3,
"FArchiveStackTrace was only used by DiffPackageWriter, and has been moved into a private helper class. Contact Epic if you need this class for another reason.")
147 bool bIgnore =
false;
185 return CallstackAtOffsetMap.Num();
197 int32 StackIgnoreCount);
225 return TotalSize - CallstackAtOffsetMap[
InOffsetIndex].Offset;
246 bool bCallstacksDirty;
248 const SIZE_T StackTraceSize;
258UE_DEPRECATED(5.3,
"FArchiveStackTrace was only used by DiffPackageWriter, and has been moved into a private helper class. Contact Epic if you need this class for another reason.")
290 return DiffMap !=
nullptr ? *DiffMap :
Empty;
354 int32 StackIgnoreCount = 2;
355 bool bInnerArchiveDisabled;
362UE_DEPRECATED(5.3,
"FArchiveStackTrace was only used by DiffPackageWriter, and has been moved into a private helper class. Contact Epic if you need this class for another reason.")
373 const int64 DiffMapOffset = 0,
375 bool bIsPersistent =
false,
376 const TCHAR* Filename =
nullptr);
391UE_DEPRECATED(5.3,
"FArchiveStackTrace was only used by DiffPackageWriter, and has been moved into a private helper class. Contact Epic if you need this class for another reason.")
480 return SerializeTrace;
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
FArchive & operator<<(FArchive &Ar, FEnvQueryDebugProfileData::FStep &Data)
Definition EnvQueryTypes.cpp:489
uint32 Offset
Definition VulkanMemory.cpp:4033
uint32 Size
Definition VulkanMemory.cpp:4034
Definition ArchiveStackTrace.h:137
const FCallstackAtOffset & GetCallstack(int32 CallstackIndex) const
Definition ArchiveStackTrace.h:206
const FCallstackData & GetCallstackData(const FCallstackAtOffset &CallstackOffset) const
Definition ArchiveStackTrace.h:211
int32 Num() const
Definition ArchiveStackTrace.h:183
int64 TotalCapturedSize() const
Definition ArchiveStackTrace.h:230
int64 GetSerializedDataSizeForOffsetIndex(int32 InOffsetIndex) const
Definition ArchiveStackTrace.h:217
Definition ArchiveStackTrace.h:129
Definition ArchiveProxy.h:19
Definition ArchiveStackTrace.h:59
COREUOBJECT_API ~FArchiveStackTraceDisabledScope()
Definition ArchiveStackTrace.cpp:111
COREUOBJECT_API FArchiveStackTraceDisabledScope()
Definition ArchiveStackTrace.cpp:106
Definition ArchiveStackTrace.h:47
COREUOBJECT_API ~FArchiveStackTraceIgnoreScope()
Definition ArchiveStackTrace.cpp:98
Definition ArchiveStackTrace.h:365
PRAGMA_DISABLE_DEPRECATION_WARNINGS
Definition ArchiveStackTrace.h:368
Definition ArchiveStackTrace.h:443
static COREUOBJECT_API FArchiveStackTraceReader * CreateFromFile(const TCHAR *InFilename)
Definition ArchiveStackTrace.cpp:1708
const TArray< FSerializeData > & GetSerializeTrace() const
Definition ArchiveStackTrace.h:478
Definition ArchiveStackTrace.h:261
const FArchiveDiffMap & GetDiffMap() const
Definition ArchiveStackTrace.h:287
int32 GetStackIgnoreCount() const
Definition ArchiveStackTrace.h:298
void SetDisableInnerArchive(bool bDisable)
Definition ArchiveStackTrace.h:293
virtual COREUOBJECT_API ~FArchiveStackTraceWriter() override
void SetStackIgnoreCount(const int32 IgnoreCount)
Definition ArchiveStackTrace.h:299
PRAGMA_DISABLE_DEPRECATION_WARNINGS
Definition ArchiveStackTrace.h:263
Definition ArchiveStackTrace.h:394
PRAGMA_DISABLE_DEPRECATION_WARNINGS
Definition ArchiveStackTrace.h:396
const FArchiveCallstacks & GetCallstacks() const
Definition ArchiveStackTrace.h:408
FArchiveCallstacks & GetCallstacks()
Definition ArchiveStackTrace.h:403
Definition Archive.h:1208
Definition LargeMemoryReader.h:25
Definition LargeMemoryWriter.h:17
Definition LinkerLoad.h:124
Definition NameTypes.h:617
Definition UnrealType.h:174
Definition UObjectThreadContext.h:39
EPackageHeaderFormat
Definition PackageWriter.h:329
Definition ArrayView.h:139
Definition UnrealString.h.inl:34
Definition UniquePtr.h:107
Definition ArchiveStackTrace.cpp:117
bool ShouldIgnoreDiff()
Definition ArchiveStackTrace.cpp:175
bool LoadPackageIntoMemory(const TCHAR *InFilename, UE::ArchiveStackTrace::FPackageData &OutPackageData, TUniquePtr< uint8, FDeleteByFree > &OutLoadedBytes)
Definition ArchiveStackTrace.cpp:119
bool ShouldBypassDiff()
Definition ArchiveStackTrace.cpp:179
void ForceKillPackageAndLinker(FLinkerLoad *Linker)
Definition ArchiveStackTrace.cpp:163
Definition ArchiveStackTrace.h:141
Definition ArchiveStackTrace.h:152
FString SerializedObjectName
Definition ArchiveStackTrace.h:156
FCallstackData & operator=(FCallstackData &&)=default
TUniquePtr< ANSICHAR[]> Callstack
Definition ArchiveStackTrace.h:154
FCallstackData(const FCallstackData &)=delete
FCallstackData & operator=(const FCallstackData &)=delete
FCallstackData(FCallstackData &&)=default
FString SerializedPropertyName
Definition ArchiveStackTrace.h:160
Definition ArchiveStackTrace.h:97
bool operator==(const FArchiveDiffInfo &InOther) const
Definition ArchiveStackTrace.h:110
FArchiveDiffInfo()
Definition ArchiveStackTrace.h:100
bool operator<(const FArchiveDiffInfo &InOther) const
Definition ArchiveStackTrace.h:114
int64 Offset
Definition ArchiveStackTrace.h:98
int64 Size
Definition ArchiveStackTrace.h:99
FArchiveDiffInfo(int64 InOffset, int64 InSize)
Definition ArchiveStackTrace.h:105
Definition ArchiveStackTrace.h:27
FArchiveDiffStats()
Definition ArchiveStackTrace.h:37
int64 NumDiffs
Definition ArchiveStackTrace.h:31
int64 DiffSize
Definition ArchiveStackTrace.h:29
int64 OriginalFileTotalSize
Definition ArchiveStackTrace.h:33
int64 NewFileTotalSize
Definition ArchiveStackTrace.h:35
Definition ArchiveStackTrace.h:446
FString FullPropertyName
Definition ArchiveStackTrace.h:460
UObject * Object
Definition ArchiveStackTrace.h:458
int64 Size
Definition ArchiveStackTrace.h:456
FName PropertyName
Definition ArchiveStackTrace.h:459
int64 Offset
Definition ArchiveStackTrace.h:455
bool IsContiguousSerialization(const FSerializeData &Other) const
Definition ArchiveStackTrace.h:462
int64 Count
Definition ArchiveStackTrace.h:457
FSerializeData()
Definition ArchiveStackTrace.h:447
Definition ArchiveStackTrace.h:302
static FORCENOINLINE CORE_API void Free(void *Original)
Definition UnrealMemory.cpp:685
Definition UObjectThreadContext.h:140
Definition ArchiveStackTrace.h:77
void operator()(void *Ptr) const
Definition ArchiveStackTrace.h:78
Definition ArchiveStackTrace.h:69
int64 HeaderSize
Definition ArchiveStackTrace.h:72
uint8 * Data
Definition ArchiveStackTrace.h:70
int64 StartOffset
Definition ArchiveStackTrace.h:73
int64 Size
Definition ArchiveStackTrace.h:71