mirror of
https://github.com/wolfpld/tracy
synced 2025-04-29 04:23:51 +00:00
Fast search for zone tid in GetZoneThreadData().
This commit is contained in:
parent
c6c9fec383
commit
9b5cc3352a
@ -17312,6 +17312,21 @@ const GpuEvent* View::GetZoneParent( const GpuEvent& zone ) const
|
||||
|
||||
const ThreadData* View::GetZoneThreadData( const ZoneEvent& zone ) const
|
||||
{
|
||||
#ifndef TRACY_NO_STATISTICS
|
||||
if( m_worker.AreSourceLocationZonesReady() )
|
||||
{
|
||||
auto& slz = m_worker.GetZonesForSourceLocation( zone.SrcLoc() );
|
||||
if( !slz.zones.empty() )
|
||||
{
|
||||
auto it = std::lower_bound( slz.zones.begin(), slz.zones.end(), zone.Start(), [] ( const auto& lhs, const auto& rhs ) { return lhs.Zone()->Start() < rhs; } );
|
||||
if( it != slz.zones.end() && it->Zone() == &zone )
|
||||
{
|
||||
return m_worker.GetThreadData( m_worker.DecompressThread( it->Thread() ) );
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
for( const auto& thread : m_worker.GetThreadData() )
|
||||
{
|
||||
const Vector<short_ptr<ZoneEvent>>* timeline = &thread->timeline;
|
||||
|
Loading…
x
Reference in New Issue
Block a user