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

Added support for TRACY_NO_FRAME_IMAGE define.

This commit is contained in:
Bartosz Taudul
2021-04-29 20:55:16 +02:00
parent de5f258b03
commit eb7d220eea
2 changed files with 19 additions and 2 deletions
+8 -2
View File
@@ -213,11 +213,12 @@ public:
static tracy_force_inline void SendFrameImage( const void* image, uint16_t w, uint16_t h, uint8_t offset, bool flip )
{
#ifndef TRACY_NO_FRAME_IMAGE
auto& profiler = GetProfiler();
assert( profiler.m_frameCount.load( std::memory_order_relaxed ) < std::numeric_limits<uint32_t>::max() );
#ifdef TRACY_ON_DEMAND
# ifdef TRACY_ON_DEMAND
if( !profiler.IsConnected() ) return;
#endif
# endif
const auto sz = size_t( w ) * size_t( h ) * 4;
auto ptr = (char*)tracy_malloc( sz );
memcpy( ptr, image, sz );
@@ -231,6 +232,7 @@ public:
fi->flip = flip;
profiler.m_fiQueue.commit_next();
profiler.m_fiLock.unlock();
#endif
}
static tracy_force_inline void PlotData( const char* name, int64_t val )
@@ -642,8 +644,10 @@ private:
static void LaunchWorker( void* ptr ) { ((Profiler*)ptr)->Worker(); }
void Worker();
#ifndef TRACY_NO_FRAME_IMAGE
static void LaunchCompressWorker( void* ptr ) { ((Profiler*)ptr)->CompressWorker(); }
void CompressWorker();
#endif
void ClearQueues( tracy::moodycamel::ConsumerToken& token );
void ClearSerial();
@@ -790,8 +794,10 @@ private:
FastVector<QueueItem> m_serialQueue, m_serialDequeue;
TracyMutex m_serialLock;
#ifndef TRACY_NO_FRAME_IMAGE
FastVector<FrameImageQueueItem> m_fiQueue, m_fiDequeue;
TracyMutex m_fiLock;
#endif
std::atomic<uint64_t> m_frameCount;
std::atomic<bool> m_isConnected;