0
0
mirror of https://github.com/wolfpld/tracy.git synced 2026-01-18 17:11:26 +01:00

Remove MessageMetadata type and replace by uint8_t everywhere

This commit is contained in:
Clément Grégoire
2025-12-28 12:31:22 +01:00
parent 2df7c53c26
commit 5ef64841cc
3 changed files with 16 additions and 18 deletions

View File

@@ -2512,7 +2512,7 @@ Profiler::DequeueStatus Profiler::Dequeue( moodycamel::ConsumerToken& token )
SendSingleString( (const char*)ptr, size ); SendSingleString( (const char*)ptr, size );
tracy_free_fast( (void*)ptr ); tracy_free_fast( (void*)ptr );
const MessageMetadata metadata = (MessageMetadata)taggedPtr.GetTag(); const uint8_t metadata = (uint8_t)taggedPtr.GetTag();
QueueItem itemWithMetadata; QueueItem itemWithMetadata;
MemWrite( &itemWithMetadata.hdr, item->hdr ); MemWrite( &itemWithMetadata.hdr, item->hdr );
MemWrite( &itemWithMetadata.messageMetadata, item->message ); MemWrite( &itemWithMetadata.messageMetadata, item->message );
@@ -2530,7 +2530,7 @@ Profiler::DequeueStatus Profiler::Dequeue( moodycamel::ConsumerToken& token )
SendSingleString( (const char*)ptr, size ); SendSingleString( (const char*)ptr, size );
tracy_free_fast( (void*)ptr ); tracy_free_fast( (void*)ptr );
const MessageMetadata metadata = (MessageMetadata)taggedPtr.GetTag(); const uint8_t metadata = (uint8_t)taggedPtr.GetTag();
QueueItem itemWithMetadata; QueueItem itemWithMetadata;
MemWrite( &itemWithMetadata.hdr, item->hdr ); MemWrite( &itemWithMetadata.hdr, item->hdr );
MemWrite( &itemWithMetadata.messageColorMetadata, item->messageColor ); MemWrite( &itemWithMetadata.messageColorMetadata, item->messageColor );

View File

@@ -345,16 +345,14 @@ struct QueuePlotDataDouble : public QueuePlotDataBase
double val; double val;
}; };
using MessageMetadata = uint8_t; enum class MessageSourceType : uint8_t
enum class MessageSourceType : MessageMetadata
{ {
User, User,
Tracy, Tracy,
COUNT COUNT
}; };
enum class MessageSeverity : MessageMetadata enum class MessageSeverity : uint8_t
{ {
Trace, // Broadly track variable states and events in the software program. Trace, // Broadly track variable states and events in the software program.
Debug, // Describes variable states and details about specific internal events in the software, that are useful for investigations. Debug, // Describes variable states and details about specific internal events in the software, that are useful for investigations.
@@ -365,22 +363,22 @@ enum class MessageSeverity : MessageMetadata
COUNT COUNT
}; };
tracy_force_inline MessageMetadata MakeMessageMetadata(MessageSourceType source, MessageSeverity severity) tracy_force_inline uint8_t MakeMessageMetadata(MessageSourceType source, MessageSeverity severity)
{ {
static_assert( (MessageMetadata)MessageSourceType::COUNT < ( 1 << 4 ), "We use 4 bits for the messages source." ); static_assert( (uint8_t)MessageSourceType::COUNT < ( 1 << 4 ), "We use 4 bits for the messages source." );
static_assert( (MessageMetadata)MessageSeverity::COUNT < ( 1 << 4 ), "We use 4 bits for the messages severity." ); static_assert( (uint8_t)MessageSeverity::COUNT < ( 1 << 4 ), "We use 4 bits for the messages severity." );
return ( (MessageMetadata)severity ) << 4 | (MessageMetadata)source; return ( (uint8_t)severity ) << 4 | (uint8_t)source;
} }
tracy_force_inline MessageSourceType MessageSourceFromMetadata(MessageMetadata metadata) tracy_force_inline MessageSourceType MessageSourceFromMetadata(uint8_t metadata)
{ {
assert( ( metadata & 0x0F ) < (MessageMetadata)MessageSourceType::COUNT ); assert( ( metadata & 0x0F ) < (uint8_t)MessageSourceType::COUNT );
return (MessageSourceType)( metadata & 0x0F ); return (MessageSourceType)( metadata & 0x0F );
} }
tracy_force_inline MessageSeverity MessageSeverityFromMetadata(MessageMetadata metadata) tracy_force_inline MessageSeverity MessageSeverityFromMetadata(uint8_t metadata)
{ {
assert( ( ( metadata & 0xF0 ) >> 4 ) < (MessageMetadata)MessageSeverity::COUNT ); assert( ( ( metadata & 0xF0 ) >> 4 ) < (uint8_t)MessageSeverity::COUNT );
return (MessageSeverity)( ( metadata & 0xF0 ) >> 4 ); return (MessageSeverity)( ( metadata & 0xF0 ) >> 4 );
} }
@@ -400,12 +398,12 @@ struct QueueMessageColor : public QueueMessage
struct QueueMessageMetadata : public QueueMessage struct QueueMessageMetadata : public QueueMessage
{ {
MessageMetadata metadata; uint8_t metadata;
}; };
struct QueueMessageColorMetadata : public QueueMessageColor struct QueueMessageColorMetadata : public QueueMessageColor
{ {
MessageMetadata metadata; uint8_t metadata;
}; };
struct QueueMessageLiteral : public QueueMessage struct QueueMessageLiteral : public QueueMessage

View File

@@ -5655,7 +5655,7 @@ void Worker::ProcessMessageLiteral( const QueueMessageLiteral& ev )
msg->thread = CompressThread( td->id ); msg->thread = CompressThread( td->id );
msg->color = 0xFFFFFFFF; msg->color = 0xFFFFFFFF;
msg->callstack.SetVal( 0 ); msg->callstack.SetVal( 0 );
const MessageMetadata metadata = ev.textAndMetadata.GetTag(); const uint8_t metadata = ev.textAndMetadata.GetTag();
msg->source = MessageSourceFromMetadata( metadata ); msg->source = MessageSourceFromMetadata( metadata );
msg->severity = MessageSeverityFromMetadata( metadata ); msg->severity = MessageSeverityFromMetadata( metadata );
if( m_data.lastTime < time ) m_data.lastTime = time; if( m_data.lastTime < time ) m_data.lastTime = time;
@@ -5689,7 +5689,7 @@ void Worker::ProcessMessageLiteralColor( const QueueMessageColorLiteral& ev )
msg->thread = CompressThread( td->id ); msg->thread = CompressThread( td->id );
msg->color = 0xFF000000 | ( ev.b << 16 ) | ( ev.g << 8 ) | ev.r; msg->color = 0xFF000000 | ( ev.b << 16 ) | ( ev.g << 8 ) | ev.r;
msg->callstack.SetVal( 0 ); msg->callstack.SetVal( 0 );
const MessageMetadata metadata = ev.textAndMetadata.GetTag(); const uint8_t metadata = ev.textAndMetadata.GetTag();
msg->source = MessageSourceFromMetadata( metadata ); msg->source = MessageSourceFromMetadata( metadata );
msg->severity = MessageSeverityFromMetadata( metadata ); msg->severity = MessageSeverityFromMetadata( metadata );
if( m_data.lastTime < time ) m_data.lastTime = time; if( m_data.lastTime < time ) m_data.lastTime = time;