Open 3D Engine Profiler Gem API Reference  24.09
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
Profiler::ImGuiTreemap Class Referenceabstract

#include <ImGuiTreemap.h>

Inherited by Profiler::ImGuiTreemapImpl.

Public Member Functions

virtual const AZ::Name & GetName () const =0
 Retrieve the Treemap name.
 
virtual void SetName (char const *name)=0
 
virtual void SetName (AZ::Name name)=0
 
virtual void SetUnitLabel (char const *unitLabel)=0
 
virtual void SetRoots (AZStd::vector< TreemapNode > &&roots)=0
 
virtual void AddMask (const char *label, uint32_t mask)=0
 
virtual void Render (int x, int y, int w, int h)=0
 
virtual void WeighAndComputeLayout (int w, int h)=0
 

Detailed Description

A treemap is a 2D visualization of entries designed to emphasize relative size differences. It is commonly used to visualize disk space utilization, but extends naturally to understanding memory allocations, archive data, and more.

Member Function Documentation

◆ AddMask()

virtual void Profiler::ImGuiTreemap::AddMask ( const char *  label,
uint32_t  mask 
)
pure virtual

(ADVANCED) Add a UI radio button that renders only nodes possessing a tag that is either 0 or passes the mask

Parameters
labelThe UI label used to select this mask
maskWhen this mask is active, nodes with a non-zero tag will be included for display if (tag & mask) is non-zero

Implemented in Profiler::ImGuiTreemapImpl.

◆ Render()

virtual void Profiler::ImGuiTreemap::Render ( int  x,
int  y,
int  w,
int  h 
)
pure virtual

Submit ImGui directives to draw the treemap

Parameters
xHorizontal offset
yVertical offset
wUI width
hUI height

Implemented in Profiler::ImGuiTreemapImpl.

◆ SetName() [1/2]

virtual void Profiler::ImGuiTreemap::SetName ( AZ::Name  name)
pure virtual

Set Treemap name

Parameters
nameThe name to display in the ImGui titlebar

Implemented in Profiler::ImGuiTreemapImpl.

◆ SetName() [2/2]

virtual void Profiler::ImGuiTreemap::SetName ( char const *  name)
pure virtual

Set Treemap name

Parameters
nameThe name to display in the ImGui titlebar

Implemented in Profiler::ImGuiTreemapImpl.

◆ SetRoots()

virtual void Profiler::ImGuiTreemap::SetRoots ( AZStd::vector< TreemapNode > &&  roots)
pure virtual

Supply the root nodes of the treemap. This is required to supply data to the treemap.

Parameters
rootsA vector of treemap nodes that constitute the top-level nodes in the visualization. Note that the treemap takes ownership of the data. This function may be invoked as often as needed to modify the data the treemap contains.

Implemented in Profiler::ImGuiTreemapImpl.

◆ SetUnitLabel()

virtual void Profiler::ImGuiTreemap::SetUnitLabel ( char const *  unitLabel)
pure virtual

Set unit label

Parameters
unitLabelThe unit label (e.g. lbs, square footage, MB, etc.) is shown in tooltips and node descriptions

Implemented in Profiler::ImGuiTreemapImpl.

◆ WeighAndComputeLayout()

virtual void Profiler::ImGuiTreemap::WeighAndComputeLayout ( int  w,
int  h 
)
pure virtual

Weigh entries and perform layout. This occurs automatically on Render but is exposed here if you wish to perform a layout in advance. Note that previously computed scores and the computed layout are cached until entries are modified, added, removed, or the window size is changed.

Parameters
wUI width
hUI height

Implemented in Profiler::ImGuiTreemapImpl.


The documentation for this class was generated from the following file: