From 44e52183016f78e16bb6542c52ce48776b13f39c Mon Sep 17 00:00:00 2001 From: Bartosz Taudul Date: Sat, 2 Jul 2022 13:49:43 +0200 Subject: [PATCH] Extract more utility functions. --- server/TracyView.cpp | 79 ----------------------------------- server/TracyView_Utility.cpp | 80 ++++++++++++++++++++++++++++++++++++ 2 files changed, 80 insertions(+), 79 deletions(-) diff --git a/server/TracyView.cpp b/server/TracyView.cpp index 7bcd6859..3c274ada 100644 --- a/server/TracyView.cpp +++ b/server/TracyView.cpp @@ -254,36 +254,6 @@ bool View::ViewDispatch( const char* fileName, int line, uint64_t symAddr ) } } -const char* View::ShortenNamespace( const char* name ) const -{ - if( m_namespace == Namespace::Full ) return name; - if( m_namespace == Namespace::Short ) - { - auto ptr = name; - while( *ptr != '\0' ) ptr++; - while( ptr > name && *ptr != ':' ) ptr--; - if( *ptr == ':' ) ptr++; - return ptr; - } - - static char buf[1024]; - auto dst = buf; - auto ptr = name; - for(;;) - { - auto start = ptr; - while( *ptr != '\0' && *ptr != ':' ) ptr++; - if( *ptr == '\0' ) - { - memcpy( dst, start, ptr - start + 1 ); - return buf; - } - *dst++ = *start; - *dst++ = ':'; - while( *ptr == ':' ) ptr++; - } -} - void View::DrawHelpMarker( const char* desc ) const { TextDisabledUnformatted( "(?)" ); @@ -2366,55 +2336,6 @@ void View::HandleZoneViewMouse( int64_t timespan, const ImVec2& wpos, float w, d } } -uint64_t View::GetFrameNumber( const FrameData& fd, int i, uint64_t offset ) const -{ - if( fd.name == 0 ) - { - if( offset == 0 ) - { - return i; - } - else - { - return i + offset - 1; - } - } - else - { - return i + 1; - } -} - -const char* View::GetFrameText( const FrameData& fd, int i, uint64_t ftime, uint64_t offset ) const -{ - const auto fnum = GetFrameNumber( fd, i, offset ); - static char buf[1024]; - if( fd.name == 0 ) - { - if( i == 0 ) - { - sprintf( buf, "Tracy init (%s)", TimeToString( ftime ) ); - } - else if( offset == 0 ) - { - sprintf( buf, "Frame %s (%s)", RealToString( fnum ), TimeToString( ftime ) ); - } - else if( i == 1 ) - { - sprintf( buf, "Missed frames (%s)", TimeToString( ftime ) ); - } - else - { - sprintf( buf, "Frame %s (%s)", RealToString( fnum ), TimeToString( ftime ) ); - } - } - else - { - sprintf( buf, "%s %s (%s)", m_worker.GetString( fd.name ), RealToString( fnum ), TimeToString( ftime ) ); - } - return buf; -} - void View::DrawZoneFramesHeader() { const auto wpos = ImGui::GetCursorScreenPos(); diff --git a/server/TracyView_Utility.cpp b/server/TracyView_Utility.cpp index 08b4cb49..32c5727b 100644 --- a/server/TracyView_Utility.cpp +++ b/server/TracyView_Utility.cpp @@ -1,4 +1,5 @@ #include "TracyColor.hpp" +#include "TracyPrint.hpp" #include "TracyView.hpp" namespace tracy @@ -725,4 +726,83 @@ int64_t View::AdjustGpuTime( int64_t time, int64_t begin, int drift ) return time + t / 1000000000 * drift; } +uint64_t View::GetFrameNumber( const FrameData& fd, int i, uint64_t offset ) const +{ + if( fd.name == 0 ) + { + if( offset == 0 ) + { + return i; + } + else + { + return i + offset - 1; + } + } + else + { + return i + 1; + } +} + +const char* View::GetFrameText( const FrameData& fd, int i, uint64_t ftime, uint64_t offset ) const +{ + const auto fnum = GetFrameNumber( fd, i, offset ); + static char buf[1024]; + if( fd.name == 0 ) + { + if( i == 0 ) + { + sprintf( buf, "Tracy init (%s)", TimeToString( ftime ) ); + } + else if( offset == 0 ) + { + sprintf( buf, "Frame %s (%s)", RealToString( fnum ), TimeToString( ftime ) ); + } + else if( i == 1 ) + { + sprintf( buf, "Missed frames (%s)", TimeToString( ftime ) ); + } + else + { + sprintf( buf, "Frame %s (%s)", RealToString( fnum ), TimeToString( ftime ) ); + } + } + else + { + sprintf( buf, "%s %s (%s)", m_worker.GetString( fd.name ), RealToString( fnum ), TimeToString( ftime ) ); + } + return buf; +} + +const char* View::ShortenNamespace( const char* name ) const +{ + if( m_namespace == Namespace::Full ) return name; + if( m_namespace == Namespace::Short ) + { + auto ptr = name; + while( *ptr != '\0' ) ptr++; + while( ptr > name && *ptr != ':' ) ptr--; + if( *ptr == ':' ) ptr++; + return ptr; + } + + static char buf[1024]; + auto dst = buf; + auto ptr = name; + for(;;) + { + auto start = ptr; + while( *ptr != '\0' && *ptr != ':' ) ptr++; + if( *ptr == '\0' ) + { + memcpy( dst, start, ptr - start + 1 ); + return buf; + } + *dst++ = *start; + *dst++ = ':'; + while( *ptr == ':' ) ptr++; + } +} + }