mirror of
https://github.com/wolfpld/tracy.git
synced 2025-03-20 07:40:02 +08:00
Handle frame name queries.
This commit is contained in:
@@ -1283,6 +1283,9 @@ void Worker::DispatchProcess( const QueueItem& ev, char*& ptr )
|
||||
case QueueType::CallstackPayload:
|
||||
AddCallstackPayload( ev.stringTransfer.ptr, ptr, sz );
|
||||
break;
|
||||
case QueueType::FrameName:
|
||||
HandleFrameName( ev.stringTransfer.ptr, ptr, sz );
|
||||
break;
|
||||
default:
|
||||
assert( false );
|
||||
break;
|
||||
@@ -1662,6 +1665,16 @@ void Worker::HandlePlotName( uint64_t name, char* str, size_t sz )
|
||||
} );
|
||||
}
|
||||
|
||||
void Worker::HandleFrameName( uint64_t name, char* str, size_t sz )
|
||||
{
|
||||
const auto sl = StoreString( str, sz );
|
||||
m_data.frames.StringDiscovered( name, sl, m_data.strings, [this] ( FrameData* dst, FrameData* src ) {
|
||||
auto sz = dst->frames.size();
|
||||
dst->frames.insert( dst->frames.end(), src->frames.begin(), src->frames.end() );
|
||||
std::inplace_merge( dst->frames.begin(), dst->frames.begin() + sz, dst->frames.end() );
|
||||
} );
|
||||
}
|
||||
|
||||
void Worker::HandlePostponedPlots()
|
||||
{
|
||||
for( auto& plot : m_data.plots.Data() )
|
||||
|
||||
Reference in New Issue
Block a user