#include <oracle_validation_panel.h>


Public Member Functions | |
| ~OracleValidationPanel () override | |
| 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. | |
| float | GetPreferredWidth () const override |
| Get preferred width for this panel (optional) | |
| void | Draw (bool *p_open) override |
| Draw the panel content. | |
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 | OnOpen () |
| Called when panel becomes visible. | |
| 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 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 | PollPendingResult () |
| Rom * | GetRom () const |
| void | LaunchRun (oracle_validation::RunMode mode) |
| void | DrawOptions () |
| void | DrawActionButtons () |
| void | DrawResults () |
| void | DrawSmokeCards (const oracle_validation::SmokeResult &smoke) |
| void | DrawPreflightCards (const oracle_validation::PreflightResult &preflight) |
| void | DrawRawOutput (const oracle_validation::OracleRunResult &result) |
Static Private Member Functions | |
| static std::string | DefaultRomPath () |
Private Attributes | |
| std::string | rom_path_ = DefaultRomPath() |
| int | min_d6_track_rooms_ = 4 |
| bool | write_report_ = false |
| std::string | report_path_ |
| std::string | required_collision_rooms_ = "0x25,0x27" |
| bool | running_ = false |
| std::future< oracle_validation::OracleRunResult > | pending_ |
| std::optional< oracle_validation::OracleRunResult > | last_result_ |
| std::string | status_message_ |
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) | |
Definition at line 17 of file oracle_validation_panel.h.
|
override |
Definition at line 50 of file oracle_validation_panel.cc.
References pending_.
|
overridevirtual |
Unique identifier for this panel.
IDs should be:
Implements yaze::editor::EditorPanel.
Definition at line 56 of file oracle_validation_panel.cc.
|
overridevirtual |
Human-readable name shown in menus and title bars.
Implements yaze::editor::EditorPanel.
Definition at line 58 of file oracle_validation_panel.cc.
|
overridevirtual |
Material Design icon for this panel.
Implements yaze::editor::EditorPanel.
Definition at line 62 of file oracle_validation_panel.cc.
References ICON_MD_VERIFIED_USER.
|
overridevirtual |
Editor category this panel belongs to.
Implements yaze::editor::EditorPanel.
Definition at line 66 of file oracle_validation_panel.cc.
|
overridevirtual |
Get the lifecycle category for this panel.
Default is EditorBound (hidden when switching editors).
Reimplemented from yaze::editor::EditorPanel.
Definition at line 70 of file oracle_validation_panel.cc.
References yaze::editor::CrossEditor.
|
overridevirtual |
Get preferred width for this panel (optional)
Override this to specify content-based sizing. For example, a tile selector with 8 tiles at 16px × 2.0 scale would return ~276px.
Reimplemented from yaze::editor::EditorPanel.
Definition at line 74 of file oracle_validation_panel.cc.
|
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 76 of file oracle_validation_panel.cc.
References DrawActionButtons(), DrawOptions(), DrawResults(), and PollPendingResult().

|
staticprivate |
Definition at line 86 of file oracle_validation_panel.cc.
References yaze::Rom::filename(), yaze::Rom::is_loaded(), and yaze::editor::ContentRegistry::Context::rom().
Referenced by DrawOptions().

|
private |
Definition at line 93 of file oracle_validation_panel.cc.
References last_result_, pending_, running_, and status_message_.
Referenced by Draw().
|
private |
Definition at line 106 of file oracle_validation_panel.cc.
References yaze::editor::ContentRegistry::Context::rom().
Referenced by DrawActionButtons(), and LaunchRun().

|
private |
Definition at line 110 of file oracle_validation_panel.cc.
References yaze::editor::oracle_validation::BuildCliCommand(), yaze::editor::oracle_validation::BuildPreflightArgs(), yaze::editor::oracle_validation::BuildSmokeArgs(), yaze::editor::oracle_validation::OracleRunResult::cli_command, yaze::editor::oracle_validation::OracleRunResult::command_ok, yaze::editor::oracle_validation::CurrentTimestamp(), yaze::editor::oracle_validation::OracleRunResult::error_message, GetRom(), yaze::editor::oracle_validation::OracleRunResult::json_parse_failed, yaze::editor::oracle_validation::kPreflight, yaze::editor::oracle_validation::kStrictReadiness, yaze::editor::oracle_validation::SmokeOptions::min_d6_track_rooms, min_d6_track_rooms_, yaze::editor::oracle_validation::OracleRunResult::mode, yaze::editor::oracle_validation::ParsePreflightOutput(), yaze::editor::oracle_validation::ParseSmokeCheckOutput(), pending_, yaze::editor::oracle_validation::OracleRunResult::preflight, yaze::editor::oracle_validation::OracleRunResult::raw_output, yaze::editor::oracle_validation::SmokeOptions::report_path, yaze::editor::oracle_validation::PreflightOptions::report_path, report_path_, yaze::editor::oracle_validation::PreflightOptions::required_collision_rooms, required_collision_rooms_, yaze::editor::oracle_validation::SmokeOptions::rom_path, yaze::editor::oracle_validation::PreflightOptions::rom_path, rom_path_, yaze::cli::resources::CommandHandler::Run(), running_, yaze::editor::oracle_validation::OracleRunResult::smoke, yaze::editor::oracle_validation::OracleRunResult::status_code, status_message_, yaze::editor::oracle_validation::SmokeOptions::strict_readiness, yaze::editor::oracle_validation::OracleRunResult::timestamp, and write_report_.
Referenced by DrawActionButtons().
|
private |
Definition at line 208 of file oracle_validation_panel.cc.
References DefaultRomPath(), min_d6_track_rooms_, report_path_, required_collision_rooms_, rom_path_, and write_report_.
Referenced by Draw().

|
private |
Definition at line 237 of file oracle_validation_panel.cc.
References GetRom(), yaze::Rom::is_loaded(), yaze::editor::oracle_validation::kPreflight, yaze::editor::oracle_validation::kStrictReadiness, yaze::editor::oracle_validation::kStructural, LaunchRun(), rom_path_, running_, and status_message_.
Referenced by Draw().

|
private |
Definition at line 272 of file oracle_validation_panel.cc.
References DrawPreflightCards(), DrawRawOutput(), DrawSmokeCards(), ICON_MD_ERROR, ICON_MD_WARNING, yaze::editor::oracle_validation::kPreflight, yaze::editor::oracle_validation::kStrictReadiness, and last_result_.
Referenced by Draw().

|
private |
Definition at line 329 of file oracle_validation_panel.cc.
References yaze::editor::oracle_validation::SmokeResult::d3, yaze::editor::oracle_validation::SmokeResult::d4, yaze::editor::oracle_validation::SmokeResult::d6, yaze::editor::oracle_validation::SmokeD6::meets_min_track_rooms, yaze::editor::oracle_validation::SmokeD6::min_track_rooms, yaze::editor::oracle_validation::SmokeD6::ok, yaze::editor::oracle_validation::SmokeD3::ok, yaze::editor::oracle_validation::SmokeD3::readiness_check, yaze::editor::oracle_validation::SmokeD4::required_rooms_check, yaze::editor::oracle_validation::SmokeD4::required_rooms_ok, yaze::editor::oracle_validation::SmokeD4::structural_ok, and yaze::editor::oracle_validation::SmokeD6::track_rooms_found.
Referenced by DrawResults().
|
private |
Definition at line 359 of file oracle_validation_panel.cc.
References yaze::editor::oracle_validation::PreflightResult::custom_collision_maps_ok, yaze::editor::oracle_validation::PreflightResult::error_count, yaze::editor::oracle_validation::PreflightResult::errors, yaze::editor::oracle_validation::PreflightResult::required_rooms_check, yaze::editor::oracle_validation::PreflightResult::required_rooms_ok, yaze::editor::oracle_validation::PreflightResult::water_fill_region_ok, and yaze::editor::oracle_validation::PreflightResult::water_fill_table_ok.
Referenced by DrawResults().
|
private |
Definition at line 398 of file oracle_validation_panel.cc.
References yaze::editor::oracle_validation::OracleRunResult::raw_output.
Referenced by DrawResults().
|
private |
Definition at line 43 of file oracle_validation_panel.h.
Referenced by DrawActionButtons(), DrawOptions(), and LaunchRun().
|
private |
Definition at line 44 of file oracle_validation_panel.h.
Referenced by DrawOptions(), and LaunchRun().
|
private |
Definition at line 45 of file oracle_validation_panel.h.
Referenced by DrawOptions(), and LaunchRun().
|
private |
Definition at line 46 of file oracle_validation_panel.h.
Referenced by DrawOptions(), and LaunchRun().
|
private |
Definition at line 47 of file oracle_validation_panel.h.
Referenced by DrawOptions(), and LaunchRun().
|
private |
Definition at line 49 of file oracle_validation_panel.h.
Referenced by DrawActionButtons(), LaunchRun(), and PollPendingResult().
|
private |
Definition at line 50 of file oracle_validation_panel.h.
Referenced by LaunchRun(), PollPendingResult(), and ~OracleValidationPanel().
|
private |
Definition at line 51 of file oracle_validation_panel.h.
Referenced by DrawResults(), and PollPendingResult().
|
private |
Definition at line 52 of file oracle_validation_panel.h.
Referenced by DrawActionButtons(), LaunchRun(), and PollPendingResult().