Proper setup of PerformanceView/ProcessMeter

This commit is contained in:
Sean Miller
2026-04-07 15:38:16 +01:00
parent b56b7cc1b0
commit 373e541fa6
4 changed files with 18 additions and 14 deletions
+1 -1
View File
@@ -30892,7 +30892,7 @@ __vt__8dScene_c = .data:0x8050DDF8; // type:object size:0x4C
@25621 = .data:0x8050DE9C; // type:object size:0x15 scope:local data:string
@25756 = .data:0x8050DEB4; // type:object size:0xD scope:local data:string
@25757 = .data:0x8050DEC4; // type:object size:0xE scope:local data:string
__vt__Q23EGG129TSystem<Q23EGG5Video,Q23EGG12AsyncDisplay,Q23EGG10XfbManager,Q23EGG14SimpleAudioMgr,Q23EGG12SceneManager,Q23EGG15PerformanceView> = .data:0x8050DED4; // type:object size:0x3C
__vt__Q23EGG126TSystem<Q23EGG5Video,Q23EGG12AsyncDisplay,Q23EGG10XfbManager,Q23EGG14SimpleAudioMgr,Q23EGG12SceneManager,Q23EGG12ProcessMeter> = .data:0x8050DED4; // type:object size:0x3C
lbl_8050DF10 = .data:0x8050DF10; // type:object size:0x18
@9033 = .data:0x8050DF28; // type:object size:0x11 scope:local data:string
@9034 = .data:0x8050DF3C; // type:object size:0x11 scope:local data:string
+2 -1
View File
@@ -3,13 +3,14 @@
#include "common.h"
#include "egg/core/eggHeap.h"
#include "egg/core/eggProcessMeter.h"
#include "egg/core/eggSystem.h"
#include "nw4r/ut/ut_Color.h"
#define ROUND_UP_4KB(x) (((u32)(x) + 4096 - 1) & ~(4096 - 1))
typedef EGG::TSystem<
EGG::Video, EGG::AsyncDisplay, EGG::XfbManager, EGG::SimpleAudioMgr, EGG::SceneManager, EGG::PerformanceView>
EGG::Video, EGG::AsyncDisplay, EGG::XfbManager, EGG::SimpleAudioMgr, EGG::SceneManager, EGG::ProcessMeter>
System;
class dSndMgr_c;
+14
View File
@@ -0,0 +1,14 @@
#ifndef EGG_PROCESS_METER_H
#define EGG_PROCESS_METER_H
#include "egg/core/eggThread.h"
namespace EGG {
class PerformanceView {};
class ProcessMeter : public Thread, public PerformanceView {};
};
#endif // EGG_PROCESS_METER_H
+1 -12
View File
@@ -6,13 +6,6 @@
namespace EGG {
// TODO Proper definition of PerformanceView
class PerformanceView {
public:
u8 placeholder[0x4c];
/* 0x4c */ u32 _4c;
};
class Display;
class Heap;
class PerformanceView;
@@ -99,11 +92,7 @@ public:
}
PerformanceView *getPerfView() override {
if (!mPerfView) {
return mPerfView;
}
// TODO remove cast hack if/when more is known about PerformanceView
return static_cast<PerformanceView *>((void *)&mPerfView->_4c);
return static_cast<PerformanceView *>(mPerfView);
}
SceneManager *getSceneMgr() override {