From 5ef64841ccc5a7d9f63461a773ee8cb159505c9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Gr=C3=A9goire?= Date: Sun, 28 Dec 2025 12:31:22 +0100 Subject: [PATCH] Remove MessageMetadata type and replace by uint8_t everywhere --- public/client/TracyProfiler.cpp | 4 ++-- public/common/TracyQueue.hpp | 26 ++++++++++++-------------- server/TracyWorker.cpp | 4 ++-- 3 files changed, 16 insertions(+), 18 deletions(-) diff --git a/public/client/TracyProfiler.cpp b/public/client/TracyProfiler.cpp index 0ed75f44..1a2e6ec6 100644 --- a/public/client/TracyProfiler.cpp +++ b/public/client/TracyProfiler.cpp @@ -2512,7 +2512,7 @@ Profiler::DequeueStatus Profiler::Dequeue( moodycamel::ConsumerToken& token ) SendSingleString( (const char*)ptr, size ); tracy_free_fast( (void*)ptr ); - const MessageMetadata metadata = (MessageMetadata)taggedPtr.GetTag(); + const uint8_t metadata = (uint8_t)taggedPtr.GetTag(); QueueItem itemWithMetadata; MemWrite( &itemWithMetadata.hdr, item->hdr ); MemWrite( &itemWithMetadata.messageMetadata, item->message ); @@ -2530,7 +2530,7 @@ Profiler::DequeueStatus Profiler::Dequeue( moodycamel::ConsumerToken& token ) SendSingleString( (const char*)ptr, size ); tracy_free_fast( (void*)ptr ); - const MessageMetadata metadata = (MessageMetadata)taggedPtr.GetTag(); + const uint8_t metadata = (uint8_t)taggedPtr.GetTag(); QueueItem itemWithMetadata; MemWrite( &itemWithMetadata.hdr, item->hdr ); MemWrite( &itemWithMetadata.messageColorMetadata, item->messageColor ); diff --git a/public/common/TracyQueue.hpp b/public/common/TracyQueue.hpp index 790afa6f..7d64982c 100644 --- a/public/common/TracyQueue.hpp +++ b/public/common/TracyQueue.hpp @@ -345,16 +345,14 @@ struct QueuePlotDataDouble : public QueuePlotDataBase double val; }; -using MessageMetadata = uint8_t; - -enum class MessageSourceType : MessageMetadata +enum class MessageSourceType : uint8_t { User, Tracy, COUNT }; -enum class MessageSeverity : MessageMetadata +enum class MessageSeverity : uint8_t { 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. @@ -365,22 +363,22 @@ enum class MessageSeverity : MessageMetadata 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( (MessageMetadata)MessageSeverity::COUNT < ( 1 << 4 ), "We use 4 bits for the messages severity." ); - return ( (MessageMetadata)severity ) << 4 | (MessageMetadata)source; + static_assert( (uint8_t)MessageSourceType::COUNT < ( 1 << 4 ), "We use 4 bits for the messages source." ); + static_assert( (uint8_t)MessageSeverity::COUNT < ( 1 << 4 ), "We use 4 bits for the messages severity." ); + 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 ); } -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 ); } @@ -400,12 +398,12 @@ struct QueueMessageColor : public QueueMessage struct QueueMessageMetadata : public QueueMessage { - MessageMetadata metadata; + uint8_t metadata; }; struct QueueMessageColorMetadata : public QueueMessageColor { - MessageMetadata metadata; + uint8_t metadata; }; struct QueueMessageLiteral : public QueueMessage diff --git a/server/TracyWorker.cpp b/server/TracyWorker.cpp index d1cb6655..d69fe806 100644 --- a/server/TracyWorker.cpp +++ b/server/TracyWorker.cpp @@ -5655,7 +5655,7 @@ void Worker::ProcessMessageLiteral( const QueueMessageLiteral& ev ) msg->thread = CompressThread( td->id ); msg->color = 0xFFFFFFFF; msg->callstack.SetVal( 0 ); - const MessageMetadata metadata = ev.textAndMetadata.GetTag(); + const uint8_t metadata = ev.textAndMetadata.GetTag(); msg->source = MessageSourceFromMetadata( metadata ); msg->severity = MessageSeverityFromMetadata( metadata ); 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->color = 0xFF000000 | ( ev.b << 16 ) | ( ev.g << 8 ) | ev.r; msg->callstack.SetVal( 0 ); - const MessageMetadata metadata = ev.textAndMetadata.GetTag(); + const uint8_t metadata = ev.textAndMetadata.GetTag(); msg->source = MessageSourceFromMetadata( metadata ); msg->severity = MessageSeverityFromMetadata( metadata ); if( m_data.lastTime < time ) m_data.lastTime = time;