Files
UnrealEngineUWP/Engine/Source/Developer/TraceServices/Private/Modules/MemoryModule.cpp
Catalin Dragoiu 4020586159 Callstack resolving for Insights initial commit
#rb none

[CL 14998219 by Catalin Dragoiu in ue5-main branch]
2021-01-06 05:44:12 -04:00

44 lines
1.3 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#include "MemoryModule.h"
#include "Analyzers/AllocationsAnalysis.h"
#include "Analyzers/CallstacksAnalysis.h"
#include "Analyzers/MemoryAnalysis.h"
#include "Analyzers/ModuleAnalysis.h"
#include "Model/AllocationsProvider.h"
#include "Model/CallstacksProvider.h"
#include "TraceServices/Model/AnalysisSession.h"
namespace TraceServices
{
static const FName MemoryModuleName("TraceModule_Memory");
void FMemoryModule::GetModuleInfo(FModuleInfo& OutModuleInfo)
{
OutModuleInfo.Name = MemoryModuleName;
OutModuleInfo.DisplayName = TEXT("Memory");
}
void FMemoryModule::OnAnalysisBegin(IAnalysisSession& Session)
{
FAllocationsProvider* AllocationsProvider = new FAllocationsProvider(Session);
Session.AddProvider(AllocationsProvider->GetName(), AllocationsProvider);
Session.AddAnalyzer(new FAllocationsAnalyzer(Session, *AllocationsProvider));
Session.AddAnalyzer(new FModuleAnalyzer(Session));
FCallstacksProvider* CallstacksProvider = new FCallstacksProvider(Session);
Session.AddProvider(CallstacksProvider->GetName(), CallstacksProvider);
Session.AddAnalyzer(new FCallstacksAnalyzer(Session, CallstacksProvider));
Session.AddAnalyzer(new FMemoryAnalyzer(Session));
}
void FMemoryModule::GetLoggers(TArray<const TCHAR *>& OutLoggers)
{
OutLoggers.Add(TEXT("Memory"));
}
} // namespace TraceServices