Files
UnrealEngine/Engine/Plugins/Animation/GameplayInsights/Source/RewindDebuggerVLog/Private/RewindDebuggerVLogModule.cpp
2025-05-18 13:04:45 +08:00

43 lines
1.5 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#include "RewindDebuggerVLogModule.h"
#include "VisualLogTrack.h"
#include "Modules/ModuleManager.h"
#include "Features/IModularFeatures.h"
#define LOCTEXT_NAMESPACE "RewindDebuggerVLogModule"
#ifndef ENABLE_REWINDDEBUGGER_VLOG_INTEGRATION
#define ENABLE_REWINDDEBUGGER_VLOG_INTEGRATION 1
#endif
#if ENABLE_REWINDDEBUGGER_VLOG_INTEGRATION
RewindDebugger::FVisualLogTrackCreator GVisualLogTrackCreator;
#endif
void FRewindDebuggerVLogModule::StartupModule()
{
#if ENABLE_REWINDDEBUGGER_VLOG_INTEGRATION
IModularFeatures::Get().RegisterModularFeature(IRewindDebuggerExtension::ModularFeatureName, &RewindDebuggerVLogExtension);
IModularFeatures::Get().RegisterModularFeature(TraceServices::ModuleFeatureName, &VLogTraceModule);
IModularFeatures::Get().RegisterModularFeature(RewindDebugger::IRewindDebuggerTrackCreator::ModularFeatureName, &GVisualLogTrackCreator);
RewindDebuggerVLogExtension.Initialize();
#endif
}
void FRewindDebuggerVLogModule::ShutdownModule()
{
#if ENABLE_REWINDDEBUGGER_VLOG_INTEGRATION
IModularFeatures::Get().UnregisterModularFeature(IRewindDebuggerExtension::ModularFeatureName, &RewindDebuggerVLogExtension);
IModularFeatures::Get().UnregisterModularFeature(TraceServices::ModuleFeatureName, &VLogTraceModule);
IModularFeatures::Get().UnregisterModularFeature(RewindDebugger::IRewindDebuggerTrackCreator::ModularFeatureName, &GVisualLogTrackCreator);
#endif
}
IMPLEMENT_MODULE(FRewindDebuggerVLogModule, RewindDebuggerVLog);
#undef LOCTEXT_NAMESPACE