From 64854575182ec2c26d689249d6582ecedd7aec99 Mon Sep 17 00:00:00 2001 From: Bartosz Taudul Date: Tue, 3 Oct 2017 23:17:16 +0200 Subject: [PATCH] Process name getter. --- client/TracyProfiler.cpp | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/client/TracyProfiler.cpp b/client/TracyProfiler.cpp index 2c0204dc..eca071ab 100755 --- a/client/TracyProfiler.cpp +++ b/client/TracyProfiler.cpp @@ -1,9 +1,14 @@ #ifdef _MSC_VER # include +# include #else # include #endif +#ifdef _GNU_SOURCE +# include +#endif + #include #include #include @@ -24,6 +29,23 @@ namespace tracy { +static const char* GetProcessName() +{ +#if defined _MSC_VER || defined __CYGWIN__ + static char buf[_MAX_PATH]; + GetModuleFileNameA( nullptr, buf, _MAX_PATH ); + const char* ptr = buf; + while( *ptr != '\0' ) ptr++; + while( ptr > buf && *ptr != '\\' && *ptr != '/' ) ptr--; + if( ptr > buf ) ptr++; + return ptr; +#elif defined _GNU_SOURCE + return program_invocation_short_name; +#else + return "unknown"; +#endif +} + enum { QueuePrealloc = 256 * 1024 }; moodycamel::ConcurrentQueue s_queue( QueueItemSize * QueuePrealloc );