yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
oracle_ram_panel.h
Go to the documentation of this file.
1#ifndef YAZE_APP_EDITOR_AGENT_ORACLE_RAM_PANEL_H_
2#define YAZE_APP_EDITOR_AGENT_ORACLE_RAM_PANEL_H_
3
4#include <cstdint>
5#include <memory>
6#include <string>
7#include <vector>
8
10
11namespace yaze {
12namespace editor {
13
18 public:
20 ~OracleRamPanel() override = default;
21
22 // EditorPanel implementation
23 std::string GetId() const override { return "agent.oracle_ram"; }
24 std::string GetDisplayName() const override { return "Oracle RAM"; }
25 std::string GetIcon() const override; // Returns ICON_MD_MEMORY
26 std::string GetEditorCategory() const override { return "Agent"; }
28
29 void Draw(bool* p_open) override;
30 void OnOpen() override;
31
32 private:
33 struct RamVariable {
34 uint32_t address;
35 std::string label;
36 std::string description;
37 uint8_t size; // 1 or 2 bytes
38 uint16_t last_value = 0;
39 };
40
42 void RefreshVariables();
43 void DrawVariableTable();
44
45 std::vector<RamVariable> variables_;
46 double last_refresh_time_ = 0.0;
47 bool auto_refresh_ = true;
48};
49
50} // namespace editor
51} // namespace yaze
52
53#endif // YAZE_APP_EDITOR_AGENT_ORACLE_RAM_PANEL_H_
Base interface for all logical panel components.
Panel for live monitoring of Oracle of Secrets RAM variables.
void Draw(bool *p_open) override
Draw the panel content.
std::string GetDisplayName() const override
Human-readable name shown in menus and title bars.
std::string GetEditorCategory() const override
Editor category this panel belongs to.
std::vector< RamVariable > variables_
std::string GetId() const override
Unique identifier for this panel.
void OnOpen() override
Called when panel becomes visible.
~OracleRamPanel() override=default
std::string GetIcon() const override
Material Design icon for this panel.
PanelCategory GetPanelCategory() const override
Get the lifecycle category for this panel.
PanelCategory
Defines lifecycle behavior for editor panels.
@ Persistent
Always visible once shown.