Panel for live monitoring of Oracle of Secrets RAM variables. More...
#include <oracle_ram_panel.h>


Classes | |
| struct | RamVariable |
Public Member Functions | |
| OracleRamPanel () | |
| ~OracleRamPanel () override=default | |
| std::string | GetId () const override |
| Unique identifier for this panel. | |
| std::string | GetDisplayName () const override |
| Human-readable name shown in menus and title bars. | |
| std::string | GetIcon () const override |
| Material Design icon for this panel. | |
| std::string | GetEditorCategory () const override |
| Editor category this panel belongs to. | |
| PanelCategory | GetPanelCategory () const override |
| Get the lifecycle category for this panel. | |
| void | Draw (bool *p_open) override |
| Draw the panel content. | |
| void | OnOpen () override |
| Called when panel becomes visible. | |
Public Member Functions inherited from yaze::editor::EditorPanel | |
| virtual | ~EditorPanel ()=default |
| virtual void | OnFirstDraw () |
| Called once before the first Draw() in a session. | |
| virtual bool | RequiresLazyInit () const |
| Whether this panel uses lazy initialization. | |
| void | InvalidateLazyInit () |
| Reset lazy init state so OnFirstDraw() runs again. | |
| virtual void | OnClose () |
| Called when panel is hidden. | |
| virtual void | OnFocus () |
| Called when panel receives focus. | |
| virtual PanelContextScope | GetContextScope () const |
| Optional context binding for this panel (room/selection/etc) | |
| virtual PanelScope | GetScope () const |
| Get the registration scope for this panel. | |
| virtual bool | IsEnabled () const |
| Check if this panel is currently enabled. | |
| virtual std::string | GetDisabledTooltip () const |
| Get tooltip text when panel is disabled. | |
| virtual std::string | GetShortcutHint () const |
| Get keyboard shortcut hint for display. | |
| virtual int | GetPriority () const |
| Get display priority for menu ordering. | |
| virtual float | GetPreferredWidth () const |
| Get preferred width for this panel (optional) | |
| virtual bool | IsVisibleByDefault () const |
| Whether this panel should be visible by default. | |
| virtual std::string | GetParentPanelId () const |
| Get parent panel ID for cascade behavior. | |
| virtual bool | CascadeCloseChildren () const |
| Whether closing this panel should close child panels. | |
| void | DrawWithLazyInit (bool *p_open) |
| Execute lazy initialization if needed, then call Draw() | |
Private Member Functions | |
| void | InitializeVariables () |
| void | RefreshVariables () |
| void | DrawVariableTable () |
Private Attributes | |
| std::vector< RamVariable > | variables_ |
| double | last_refresh_time_ = 0.0 |
| bool | auto_refresh_ = true |
Additional Inherited Members | |
Protected Member Functions inherited from yaze::editor::EditorPanel | |
| void | InvalidateCache () |
| Invalidate all cached computations. | |
| template<typename T > | |
| T & | GetCached (const std::string &key, std::function< T()> compute) |
| Get or compute a cached value. | |
| bool | IsCacheValid () const |
| Check if cache has been invalidated. | |
| void | ClearCache () |
| Clear all cached values (more aggressive than InvalidateCache) | |
Panel for live monitoring of Oracle of Secrets RAM variables.
Definition at line 17 of file oracle_ram_panel.h.
| yaze::editor::OracleRamPanel::OracleRamPanel | ( | ) |
Definition at line 15 of file oracle_ram_panel.cc.
References InitializeVariables().

|
overridedefault |
|
inlineoverridevirtual |
Unique identifier for this panel.
IDs should be:
Implements yaze::editor::EditorPanel.
Definition at line 23 of file oracle_ram_panel.h.
|
inlineoverridevirtual |
Human-readable name shown in menus and title bars.
Implements yaze::editor::EditorPanel.
Definition at line 24 of file oracle_ram_panel.h.
|
overridevirtual |
Material Design icon for this panel.
Implements yaze::editor::EditorPanel.
Definition at line 19 of file oracle_ram_panel.cc.
References ICON_MD_MEMORY.
|
inlineoverridevirtual |
Editor category this panel belongs to.
Implements yaze::editor::EditorPanel.
Definition at line 26 of file oracle_ram_panel.h.
|
inlineoverridevirtual |
Get the lifecycle category for this panel.
Default is EditorBound (hidden when switching editors).
Reimplemented from yaze::editor::EditorPanel.
Definition at line 27 of file oracle_ram_panel.h.
References yaze::editor::Persistent.
|
overridevirtual |
Draw the panel content.
| p_open | Pointer to visibility flag (nullptr if not closable) |
Called by PanelManager when the panel is visible. Do NOT call ImGui::Begin/End - the PanelWindow wrapper handles that. Just draw your content directly.
Implements yaze::editor::EditorPanel.
Definition at line 73 of file oracle_ram_panel.cc.
References auto_refresh_, DrawVariableTable(), ICON_MD_PAUSE, ICON_MD_PLAY_ARROW, ICON_MD_REFRESH, last_refresh_time_, and RefreshVariables().

|
overridevirtual |
Called when panel becomes visible.
Use this to initialize state, load resources, or start animations. Called after the panel is shown but before first Draw().
Reimplemented from yaze::editor::EditorPanel.
Definition at line 23 of file oracle_ram_panel.cc.
References RefreshVariables().

|
private |
Definition at line 27 of file oracle_ram_panel.cc.
References variables_.
Referenced by OracleRamPanel().
|
private |
Definition at line 50 of file oracle_ram_panel.cc.
References yaze::emu::mesen::MesenClientRegistry::GetOrCreate(), and variables_.
Referenced by Draw(), and OnOpen().

|
private |
|
private |
Definition at line 45 of file oracle_ram_panel.h.
Referenced by DrawVariableTable(), InitializeVariables(), and RefreshVariables().
|
private |
Definition at line 46 of file oracle_ram_panel.h.
Referenced by Draw().
|
private |
Definition at line 47 of file oracle_ram_panel.h.
Referenced by Draw().