mirror of
https://github.com/wolfpld/tracy
synced 2025-05-01 05:03:53 +00:00
Add TracySetProgramName() macro to set broadcast contents.
This commit is contained in:
parent
cade1d9705
commit
e2e55a77b5
@ -1353,6 +1353,7 @@ Profiler::Profiler()
|
|||||||
, m_queryImage( nullptr )
|
, m_queryImage( nullptr )
|
||||||
, m_queryData( nullptr )
|
, m_queryData( nullptr )
|
||||||
, m_crashHandlerInstalled( false )
|
, m_crashHandlerInstalled( false )
|
||||||
|
, m_programName( nullptr )
|
||||||
{
|
{
|
||||||
assert( !s_instance );
|
assert( !s_instance );
|
||||||
s_instance = this;
|
s_instance = this;
|
||||||
@ -1721,6 +1722,14 @@ void Profiler::Worker()
|
|||||||
const auto t = std::chrono::high_resolution_clock::now().time_since_epoch().count();
|
const auto t = std::chrono::high_resolution_clock::now().time_since_epoch().count();
|
||||||
if( t - lastBroadcast > 3000000000 ) // 3s
|
if( t - lastBroadcast > 3000000000 ) // 3s
|
||||||
{
|
{
|
||||||
|
m_programNameLock.lock();
|
||||||
|
if( m_programName )
|
||||||
|
{
|
||||||
|
broadcastMsg = GetBroadcastMessage( m_programName, strlen( m_programName ), broadcastLen, dataPort );
|
||||||
|
m_programName = nullptr;
|
||||||
|
}
|
||||||
|
m_programNameLock.unlock();
|
||||||
|
|
||||||
lastBroadcast = t;
|
lastBroadcast = t;
|
||||||
const auto ts = std::chrono::duration_cast<std::chrono::seconds>( std::chrono::system_clock::now().time_since_epoch() ).count();
|
const auto ts = std::chrono::duration_cast<std::chrono::seconds>( std::chrono::system_clock::now().time_since_epoch() ).count();
|
||||||
broadcastMsg.activeTime = int32_t( ts - m_epoch );
|
broadcastMsg.activeTime = int32_t( ts - m_epoch );
|
||||||
|
@ -677,6 +677,13 @@ public:
|
|||||||
return m_isConnected.load( std::memory_order_acquire );
|
return m_isConnected.load( std::memory_order_acquire );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tracy_force_inline void SetProgramName( const char* name )
|
||||||
|
{
|
||||||
|
m_programNameLock.lock();
|
||||||
|
m_programName = name;
|
||||||
|
m_programNameLock.unlock();
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef TRACY_ON_DEMAND
|
#ifdef TRACY_ON_DEMAND
|
||||||
tracy_force_inline uint64_t ConnectionId() const
|
tracy_force_inline uint64_t ConnectionId() const
|
||||||
{
|
{
|
||||||
@ -964,6 +971,9 @@ private:
|
|||||||
} m_prevSignal;
|
} m_prevSignal;
|
||||||
#endif
|
#endif
|
||||||
bool m_crashHandlerInstalled;
|
bool m_crashHandlerInstalled;
|
||||||
|
|
||||||
|
const char* m_programName;
|
||||||
|
TracyMutex m_programNameLock;
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -109,6 +109,7 @@
|
|||||||
#define TracyParameterRegister(x,y)
|
#define TracyParameterRegister(x,y)
|
||||||
#define TracyParameterSetup(x,y,z,w)
|
#define TracyParameterSetup(x,y,z,w)
|
||||||
#define TracyIsConnected false
|
#define TracyIsConnected false
|
||||||
|
#define TracySetProgramName(x)
|
||||||
|
|
||||||
#define TracyFiberEnter(x)
|
#define TracyFiberEnter(x)
|
||||||
#define TracyFiberLeave
|
#define TracyFiberLeave
|
||||||
@ -270,6 +271,7 @@
|
|||||||
#define TracyParameterRegister( cb, data ) tracy::Profiler::ParameterRegister( cb, data )
|
#define TracyParameterRegister( cb, data ) tracy::Profiler::ParameterRegister( cb, data )
|
||||||
#define TracyParameterSetup( idx, name, isBool, val ) tracy::Profiler::ParameterSetup( idx, name, isBool, val )
|
#define TracyParameterSetup( idx, name, isBool, val ) tracy::Profiler::ParameterSetup( idx, name, isBool, val )
|
||||||
#define TracyIsConnected tracy::GetProfiler().IsConnected()
|
#define TracyIsConnected tracy::GetProfiler().IsConnected()
|
||||||
|
#define TracySetProgramName( name ) tracy::GetProfiler().SetProgramName( name );
|
||||||
|
|
||||||
#ifdef TRACY_FIBERS
|
#ifdef TRACY_FIBERS
|
||||||
# define TracyFiberEnter( fiber ) tracy::Profiler::EnterFiber( fiber )
|
# define TracyFiberEnter( fiber ) tracy::Profiler::EnterFiber( fiber )
|
||||||
|
Loading…
x
Reference in New Issue
Block a user