mirror of
https://github.com/wolfpld/tracy.git
synced 2024-11-30 09:14:36 +00:00
Display zone in which memory allocation took place.
This commit is contained in:
parent
912cfdbc5e
commit
3f7abd478e
@ -3695,7 +3695,7 @@ void View::DrawMemory()
|
|||||||
ImGui::TextDisabled( "(%s)", RealToString( match.size(), true ) );
|
ImGui::TextDisabled( "(%s)", RealToString( match.size(), true ) );
|
||||||
if( expand )
|
if( expand )
|
||||||
{
|
{
|
||||||
ImGui::Columns( 5 );
|
ImGui::Columns( 6 );
|
||||||
ImGui::Text( "Address" );
|
ImGui::Text( "Address" );
|
||||||
ImGui::NextColumn();
|
ImGui::NextColumn();
|
||||||
ImGui::Text( "Size" );
|
ImGui::Text( "Size" );
|
||||||
@ -3724,7 +3724,10 @@ void View::DrawMemory()
|
|||||||
ImGui::EndTooltip();
|
ImGui::EndTooltip();
|
||||||
}
|
}
|
||||||
ImGui::NextColumn();
|
ImGui::NextColumn();
|
||||||
|
ImGui::Text( "Zone" );
|
||||||
|
ImGui::NextColumn();
|
||||||
ImGui::Separator();
|
ImGui::Separator();
|
||||||
|
int idx = 0;
|
||||||
for( auto& v : match )
|
for( auto& v : match )
|
||||||
{
|
{
|
||||||
if( v->ptr == m_memInfo.ptrFind )
|
if( v->ptr == m_memInfo.ptrFind )
|
||||||
@ -3757,6 +3760,36 @@ void View::DrawMemory()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
ImGui::NextColumn();
|
ImGui::NextColumn();
|
||||||
|
auto zone = FindZoneAtTime( m_worker.DecompressThread( v->threadAlloc ), v->timeAlloc );
|
||||||
|
if( !zone )
|
||||||
|
{
|
||||||
|
ImGui::Text( "-" );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
const auto& srcloc = m_worker.GetSourceLocation( zone->srcloc );
|
||||||
|
const auto txt = srcloc.name.active ? m_worker.GetString( srcloc.name ) : m_worker.GetString( srcloc.function );
|
||||||
|
ImGui::PushID( idx++ );
|
||||||
|
auto sel = ImGui::Selectable( txt, false );
|
||||||
|
auto hover = ImGui::IsItemHovered();
|
||||||
|
ImGui::SameLine();
|
||||||
|
ImGui::TextDisabled( "%s:%i", m_worker.GetString( srcloc.file ), srcloc.line );
|
||||||
|
ImGui::PopID();
|
||||||
|
if( sel )
|
||||||
|
{
|
||||||
|
m_zoneInfoWindow = zone;
|
||||||
|
}
|
||||||
|
if( hover )
|
||||||
|
{
|
||||||
|
m_zoneHighlight = zone;
|
||||||
|
if( ImGui::IsMouseClicked( 2 ) )
|
||||||
|
{
|
||||||
|
ZoomToZone( *zone );
|
||||||
|
}
|
||||||
|
ZoneTooltip( *zone );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ImGui::NextColumn();
|
||||||
}
|
}
|
||||||
ImGui::EndColumns();
|
ImGui::EndColumns();
|
||||||
ImGui::TreePop();
|
ImGui::TreePop();
|
||||||
|
Loading…
Reference in New Issue
Block a user