Files
yoan stamant 62bc0c3239 [StateTreeDebugger]
- timeline tracks can be marked as stale (from a previous PIE session) to change their look
- added world simulation timestamp for traces to represent the tracks in simulation time and not trace session time
- create dedicated methods on the StateTree module to Start/Stop traces
- unneeded trace channels are deactivated and restored if possible for a StateTree debug session in order to reduce trace size
- DebuggerView can now auto start new trace on a new PIE session (new settings 'bShouldDebuggerAutoRecordOnPIE'') or user can control with dedicated button (similar to RewindDebugger)
- moved StateTree editor settings under section "Plugins"
#rnx
#rb mikko.mononen
#preflight 646e18e46c2a2532b1d92984

[CL 25644105 by yoan stamant in ue5-main branch]
2023-05-26 11:59:58 -04:00

31 lines
1.1 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#if WITH_STATETREE_DEBUGGER
#include "Debugger/StateTreeTraceModule.h"
#include "Debugger/StateTreeTraceProvider.h"
#include "Debugger/StateTreeTraceAnalyzer.h"
#include "Debugger/StateTreeDebugger.h" // Required to compile TArray<UE::StateTreeDebugger::FInstanceDescriptor> from StateTreeTraceProvider
#include "TraceServices/Model/AnalysisSession.h"
FName FStateTreeTraceModule::ModuleName("TraceModule_StateTree");
void FStateTreeTraceModule::GetModuleInfo(TraceServices::FModuleInfo& OutModuleInfo)
{
OutModuleInfo.Name = ModuleName;
OutModuleInfo.DisplayName = TEXT("StateTree");
}
void FStateTreeTraceModule::OnAnalysisBegin(TraceServices::IAnalysisSession& InSession)
{
const TSharedPtr<FStateTreeTraceProvider> Provider = MakeShared<FStateTreeTraceProvider>(InSession);
InSession.AddProvider(FStateTreeTraceProvider::ProviderName, Provider);
InSession.AddAnalyzer(new FStateTreeTraceAnalyzer(InSession, *Provider));
}
void FStateTreeTraceModule::GetLoggers(TArray<const TCHAR *>& OutLoggers)
{
OutLoggers.Add(TEXT("StateTree"));
}
#endif // WITH_STATETREE_DEBUGGER