- Added new TraceInsightsFrontend module. Moved all functionality of Unreal Insights Frontend (i.e. Session Browser) from TraceInsights module to this new module.
- Split the functional tests between TraceInsightsFrontend and TraceInsights. Also updated some of the tests to reduce dependency to InsightsManager. Tests moved to TraceInsightsFrontend module:
* "System.Insights.Hub.MemoryInsights" (MemoryInsightsTests.cpp)
* "System.Insights.Hub.SessionBrowser" (TraceStoreWindowTests.cpp)
* "System.Insights.Hub.UnrealTraceServer.Starting" (UnrealTraceServerTests.cpp)
- TraceInsights: Updated InsightsStyle to inherit the InsightsCoreStyle (from TraceInsightsCore module). Moved more resources to FInsightsCoreStyle. Removed duplicates between TraceInsights and TraceInsightsCore modules. Removed "WhiteBrush" from FInsightsStyle (can be used the one from FAppStyle / FCoreStyle instead).
- Moved and renamed FTraceServerControl from "Insights/Widgets/STraceServerControl.h" to "InsightsFrontend/StoreService/TraceServerControl.h". TraceUtilities now depends on TraceInsightsFrontend module (instead of TraceInsights module).
- Added FStoreConnection in TraceAnalysis module. It manages a connection to a trace server (FStoreClient + critical section). This removes duplicated code between FInsightsManager (TraceInsights module) and in STraceStoreWindows (TraceInsightsFrontend module).
- Moved MessageDialogUtils.h/.cpp from TraceInsights to TraceInsightsCore module (InsightsCore/Common/MessageDialogUtils.h).
- Moved OpenUnrealInsights() into a utility static class FMiscUtils in TraceInsightsCore module. This removes some of the dependencies to InsightsManager.
- Moved/renamed Insights::FEventNameFilterValueConverter to UE::Insights::TimingProfiler::FTimerNameFilterValueConverter (currently unused).
- Moved "Version.h" to TraceInsightsCore module ("InsightsCore/Version.h").
- Moved more types into UE::Insights namespace, in TraceInsights module.
- Changed UnrealInsights program to either load the TraceInsights module or the TraceInsightsFrontend module depending on the required mode to run (based on command line arguments).
- Updated UnrealInsights program to detect "single instance" of Unreal Insights Frontend window/process much sooner during initialization.
- Temporary disabled "Import Table ..." and "Diff Tables ..." functionality in Unreal Insights Frontend / Trace Store window (code switched off by UE_INSIGHTS_TABLE_IMPORT_TOOL_ENABLED in STraceStoreWindow.cpp).
#rb Catalin.Dragoiu
[CL 35243915 by ionut matasaru in ue5-main branch]
- Added Exec() API to IUnrealInsightsModule and to IInsightsComponent (i.e. each component can now expose custom commands).
- Extended "-ExecOnAnalysisCompleteCmd" command line argument to be used also without AutomationTesting, to run custom commands exposed by Insights components.
- Added custom response file support for "-ExecOnAnalysisCompleteCmd" command line argument (using @=file syntax).
- Fixed -AutoQuit command line argument to work also without AutomationTesting.
#rb Catalin.Dragoiu
#preflight 62260251e543538b3e2ea3f8
[CL 19284189 by ionut matasaru in ue5-main branch]
- Added "-NoUI" command line argument to be able to run analysis for a session without the UI to be created (useful when used together with -AutoQuit).
- Added a log message (emitted when analysis completes) with session duration, analysis duration and analysis speed.
#rb Catalin.Dragoiu
#ROBOMERGE-SOURCE: CL 16994511 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v838-16927207)
[CL 16994515 by ionut matasaru in ue5-release-engine-test branch]
- Enabled "HighDPI" support for Unreal Insights app.
- Fixed size and location of app windows (for both browser and viewer modes) when high dpi is enabled and DPIScaleFactor is not 1.
- Added name of trace in the application's title.
#rb Catalin.Dragoiu
#ROBOMERGE-SOURCE: CL 16882805 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)
[CL 16882816 by ionut matasaru in ue5-release-engine-test branch]
Updated the name of the Windows event used to force single instance of UnrealInsights.exe (Browser Mode) and to control when to try to auto-connect. This change allows UnrealInsights.exe from UE5 to coexists with a running instance from UE4.
Also updated the comments to better explain how the Windows event is used.
Trace auto-connect behavior remains the same: a game runtime (editor excluded) will try to auto-connect with a local trace store (now hosted by the UnrealTraceServer.exe) if UnrealInsights (Browser Mode) is running.
#rb Martin.Ridgers
#ROBOMERGE-SOURCE: CL 16726078 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v835-16672529)
[CL 16726101 by ionut matasaru in ue5-release-engine-test branch]