diff --git a/profiler/src/profiler/TracyView.hpp b/profiler/src/profiler/TracyView.hpp index afd222d7..3ed19a7f 100644 --- a/profiler/src/profiler/TracyView.hpp +++ b/profiler/src/profiler/TracyView.hpp @@ -513,6 +513,7 @@ private: int m_statMode = 0; int m_flameMode = 0; bool m_flameSort = false; + bool m_flameRunningTime = false; int m_statSampleLocation = 2; bool m_statHideUnknown = true; bool m_showAllSymbols = false; diff --git a/profiler/src/profiler/TracyView_FlameGraph.cpp b/profiler/src/profiler/TracyView_FlameGraph.cpp index e7473870..9666564a 100644 --- a/profiler/src/profiler/TracyView_FlameGraph.cpp +++ b/profiler/src/profiler/TracyView_FlameGraph.cpp @@ -1,3 +1,4 @@ +#include #include #include "TracyColor.hpp" @@ -445,6 +446,19 @@ void View::DrawFlameGraph() ImGui::Checkbox( ICON_FA_ARROW_UP_WIDE_SHORT " Sort by time", &m_flameSort ); + if( m_flameMode == 0 ) + { + if( m_worker.HasContextSwitches() ) + { + ImGui::SameLine(); + ImGui::Checkbox( "Running time", &m_flameRunningTime ); + } + else + { + assert( !m_flameRunningTime ); + } + } + auto expand = ImGui::TreeNode( ICON_FA_SHUFFLE " Visible threads:" ); ImGui::SameLine(); size_t visibleThreads = 0;