UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
MallocFrameProfiler.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "Containers/Array.h"
6#include "Containers/Map.h"
8#include "HAL/Platform.h"
9
10class FMalloc;
11class FOutputDevice;
12class UWorld;
13
15{
16public:
18
19 CORE_API virtual void Init() override;
20
21#if UE_ALLOW_EXEC_COMMANDS
25 CORE_API virtual bool Exec(UWorld* InWorld, const TCHAR* Cmd, FOutputDevice& Ar) override;
26#endif
27
31 CORE_API virtual void UpdateStats() override;
32
34
35protected:
36 CORE_API virtual bool IsDisabled() override;
37
38 CORE_API virtual void TrackMalloc(void* Ptr, uint32 Size, int32 CallStackIndex);
39 CORE_API virtual void TrackFree(void* Ptr, uint32 OldSize, int32 CallStackIndex);
40 CORE_API virtual void TrackRealloc(void* OldPtr, void* NewPtr, uint32 NewSize, uint32 OldSize, int32 CallStackIndex);
41
42protected:
46
56
59};
60
FPlatformTypes::TCHAR TCHAR
Either ANSICHAR or WIDECHAR, depending on whether the platform supports wide characters or the requir...
Definition Platform.h:1135
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
CORE_API FMallocFrameProfiler * GMallocFrameProfiler
Definition MallocFrameProfiler.cpp:20
CORE_API bool GMallocFrameProfilerEnabled
Definition MallocFrameProfiler.cpp:21
uint32 Size
Definition VulkanMemory.cpp:4034
uint32_t uint32
Definition binka_ue_file_header.h:6
virtual CORE_API bool Exec(UWorld *InWorld, const TCHAR *Cmd, FOutputDevice &Ar)
Definition Exec.cpp:30
Definition MallocCallstackHandler.h:16
Definition MallocFrameProfiler.h:15
static CORE_API FMalloc * OverrideIfEnabled(FMalloc *InUsedAlloc)
Definition MallocFrameProfiler.cpp:189
virtual CORE_API void TrackMalloc(void *Ptr, uint32 Size, int32 CallStackIndex)
Definition MallocFrameProfiler.cpp:43
TMap< void *, int32 > TrackedCurrentAllocations
Definition MallocFrameProfiler.h:57
TArray< FCallStackStats > CallStackStatsArray
Definition MallocFrameProfiler.h:58
uint32 EntriesToOutput
Definition MallocFrameProfiler.h:45
virtual CORE_API void TrackRealloc(void *OldPtr, void *NewPtr, uint32 NewSize, uint32 OldSize, int32 CallStackIndex)
Definition MallocFrameProfiler.cpp:86
virtual CORE_API void TrackFree(void *Ptr, uint32 OldSize, int32 CallStackIndex)
Definition MallocFrameProfiler.cpp:70
virtual CORE_API bool IsDisabled() override
Definition MallocFrameProfiler.cpp:108
virtual CORE_API void Init() override
Definition MallocFrameProfiler.cpp:31
virtual CORE_API void UpdateStats() override
Definition MallocFrameProfiler.cpp:113
bool bEnabled
Definition MallocFrameProfiler.h:43
uint32 FrameCount
Definition MallocFrameProfiler.h:44
Definition MemoryBase.h:99
Definition OutputDevice.h:133
Definition Array.h:670
Definition UnrealString.h.inl:34
Definition World.h:918
Definition MallocFrameProfiler.h:48
int32 UsageCount
Definition MallocFrameProfiler.h:52
int32 LastFrameSeen
Definition MallocFrameProfiler.h:54
int32 UniqueFrames
Definition MallocFrameProfiler.h:53
int32 CallStackIndex
Definition MallocFrameProfiler.h:49
int32 Frees
Definition MallocFrameProfiler.h:51
int32 Mallocs
Definition MallocFrameProfiler.h:50