DebugAnalyzer: Fix build after changes to BObjectList API.

This commit is contained in:
Augustin Cavalier
2025-06-18 16:43:24 -04:00
parent 1d810c307f
commit 01240fc9dc
9 changed files with 28 additions and 24 deletions
@@ -278,15 +278,16 @@ private:
struct NodeContainerNode : Node { struct NodeContainerNode : Node {
NodeContainerNode() NodeContainerNode()
: :
fChildren(20, true) fChildren(20)
{ {
} }
NodeContainerNode(BObjectList<Node>& nodes) NodeContainerNode(BObjectList<Node>& nodes)
: :
fChildren(20, true) fChildren(20)
{ {
fChildren.AddList(&nodes); for (int32 index = 0; index < nodes.CountItems(); index++)
fChildren.AddItem(nodes.ItemAt(index));
// compute total waits and total wait time // compute total waits and total wait time
fWaits = 0; fWaits = 0;
@@ -341,7 +342,7 @@ private:
} }
protected: protected:
BObjectList<Node> fChildren; BObjectList<Node, true> fChildren;
int64 fWaits; int64 fWaits;
nanotime_t fTotalWaitTime; nanotime_t fTotalWaitTime;
}; };
@@ -354,8 +355,8 @@ private:
model(model) model(model)
{ {
// create nodes for the wait object groups // create nodes for the wait object groups
BObjectList<Node> tempChildren; BObjectList<Node, true> tempChildren;
BObjectList<Node>& children BObjectList<Node, true>& children
= groupByName ? tempChildren : NodeContainerNode::fChildren; = groupByName ? tempChildren : NodeContainerNode::fChildren;
int32 count = model->CountWaitObjectGroups(); int32 count = model->CountWaitObjectGroups();
for (int32 i = 0; i < count; i++) { for (int32 i = 0; i < count; i++) {
@@ -368,6 +369,7 @@ private:
if (groupByName) { if (groupByName) {
if (children.CountItems() < 2) { if (children.CountItems() < 2) {
NodeContainerNode::fChildren.AddList(&children); NodeContainerNode::fChildren.AddList(&children);
children.MakeEmpty(false);
return; return;
} }
@@ -400,6 +402,8 @@ private:
previousNode = node; previousNode = node;
} }
} }
tempChildren.MakeEmpty(false);
} }
private: private:
+1 -1
View File
@@ -719,7 +719,7 @@ HeaderView::HeaderView()
: :
BView("header view", B_WILL_DRAW | B_FULL_UPDATE_ON_RESIZE), BView("header view", B_WILL_DRAW | B_FULL_UPDATE_ON_RESIZE),
fModel(NULL), fModel(NULL),
fHeaderEntries(10, true), fHeaderEntries(10),
fLayoutValid(false), fLayoutValid(false),
fDefaultState(new DefaultState(this)), fDefaultState(new DefaultState(this)),
fState(fDefaultState) fState(fDefaultState)
+1 -1
View File
@@ -187,7 +187,7 @@ public:
private: private:
struct HeaderEntry; struct HeaderEntry;
typedef BObjectList<HeaderEntry> HeaderEntryList; typedef BObjectList<HeaderEntry, true> HeaderEntryList;
typedef BObjectList<HeaderViewListener> ListenerList; typedef BObjectList<HeaderViewListener> ListenerList;
class State; class State;
@@ -143,7 +143,7 @@ LegendChartAxis::LegendChartAxis(ChartAxisLegendSource* legendSource,
fLocation(CHART_AXIS_BOTTOM), fLocation(CHART_AXIS_BOTTOM),
fRange(), fRange(),
fFrame(), fFrame(),
fLegends(20, true), fLegends(20),
fHorizontalSpacing(20), fHorizontalSpacing(20),
fVerticalSpacing(10), fVerticalSpacing(10),
fLayoutValid(false) fLayoutValid(false)
@@ -30,7 +30,7 @@ public:
private: private:
struct LegendInfo; struct LegendInfo;
typedef BObjectList<LegendInfo> LegendList; typedef BObjectList<LegendInfo, true> LegendList;
private: private:
void _InvalidateLayout(); void _InvalidateLayout();
bool _ValidateLayout(BView* view); bool _ValidateLayout(BView* view);
+6 -6
View File
@@ -320,7 +320,7 @@ Model::Thread::Thread(Team* team, const system_profiler_thread_added* event,
fIOTime(0), fIOTime(0),
fPreemptions(0), fPreemptions(0),
fIndex(-1), fIndex(-1),
fWaitObjectGroups(20, true) fWaitObjectGroups(20)
{ {
} }
@@ -631,11 +631,11 @@ Model::Model(const char* dataSourceName, void* eventData, size_t eventDataSize,
fBaseTime(0), fBaseTime(0),
fLastEventTime(0), fLastEventTime(0),
fIdleTime(0), fIdleTime(0),
fCPUs(20, true), fCPUs(20),
fTeams(20, true), fTeams(20),
fThreads(20, true), fThreads(20),
fWaitObjectGroups(20, true), fWaitObjectGroups(20),
fIOSchedulers(10, true), fIOSchedulers(10),
fSchedulingStates(100) fSchedulingStates(100)
{ {
} }
+6 -6
View File
@@ -135,11 +135,11 @@ public:
// returns the closest previous state // returns the closest previous state
private: private:
typedef BObjectList<CPU> CPUList; typedef BObjectList<CPU, true> CPUList;
typedef BObjectList<Team> TeamList; typedef BObjectList<Team, true> TeamList;
typedef BObjectList<Thread> ThreadList; typedef BObjectList<Thread, true> ThreadList;
typedef BObjectList<WaitObjectGroup> WaitObjectGroupList; typedef BObjectList<WaitObjectGroup, true> WaitObjectGroupList;
typedef BObjectList<IOScheduler> IOSchedulerList; typedef BObjectList<IOScheduler, true> IOSchedulerList;
typedef BObjectList<CompactSchedulingState> SchedulingStateList; typedef BObjectList<CompactSchedulingState> SchedulingStateList;
private: private:
@@ -505,7 +505,7 @@ public:
const Thread* thread); const Thread* thread);
private: private:
typedef BObjectList<ThreadWaitObjectGroup> typedef BObjectList<ThreadWaitObjectGroup, true>
ThreadWaitObjectGroupList; ThreadWaitObjectGroupList;
private: private:
+1 -1
View File
@@ -40,7 +40,7 @@ ThreadModel::ThreadModel(Model* model, Model::Thread* thread)
: :
fModel(model), fModel(model),
fThread(thread), fThread(thread),
fWaitObjectGroups(10, true) fWaitObjectGroups(10)
{ {
} }
+1 -1
View File
@@ -40,7 +40,7 @@ public:
int32 FindSchedulingEvent(nanotime_t time); int32 FindSchedulingEvent(nanotime_t time);
private: private:
typedef BObjectList<WaitObjectGroup> WaitObjectGroupList; typedef BObjectList<WaitObjectGroup, true> WaitObjectGroupList;
typedef BObjectList<const system_profiler_event_header> EventList; typedef BObjectList<const system_profiler_event_header> EventList;
private: private: