1
0
mirror of https://github.com/wolfpld/tracy.git synced 2025-03-20 07:40:02 +08:00

Transfer of colored messages.

This commit is contained in:
Bartosz Taudul
2019-05-10 20:17:44 +02:00
parent 6a09229ae7
commit efc54babe3
7 changed files with 92 additions and 1 deletions
+30
View File
@@ -2500,6 +2500,12 @@ bool Worker::Process( const QueueItem& ev )
case QueueType::MessageLiteral:
ProcessMessageLiteral( ev.message );
break;
case QueueType::MessageColor:
ProcessMessageColor( ev.messageColor );
break;
case QueueType::MessageLiteralColor:
ProcessMessageLiteralColor( ev.messageColor );
break;
case QueueType::GpuNewContext:
ProcessGpuNewContext( ev.gpuNewContext );
break;
@@ -3073,6 +3079,30 @@ void Worker::ProcessMessageLiteral( const QueueMessage& ev )
InsertMessageData( msg, ev.thread );
}
void Worker::ProcessMessageColor( const QueueMessageColor& ev )
{
auto it = m_pendingCustomStrings.find( ev.text );
assert( it != m_pendingCustomStrings.end() );
auto msg = m_slab.Alloc<MessageData>();
msg->time = TscTime( ev.time );
msg->ref = StringRef( StringRef::Type::Idx, it->second.idx );
msg->thread = ev.thread;
m_data.lastTime = std::max( m_data.lastTime, msg->time );
InsertMessageData( msg, ev.thread );
m_pendingCustomStrings.erase( it );
}
void Worker::ProcessMessageLiteralColor( const QueueMessageColor& ev )
{
CheckString( ev.text );
auto msg = m_slab.Alloc<MessageData>();
msg->time = TscTime( ev.time );
msg->ref = StringRef( StringRef::Type::Ptr, ev.text );
msg->thread = ev.thread;
m_data.lastTime = std::max( m_data.lastTime, msg->time );
InsertMessageData( msg, ev.thread );
}
void Worker::ProcessGpuNewContext( const QueueGpuNewContext& ev )
{
assert( !m_gpuCtxMap[ev.context] );