yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
overworld_doctor_commands.h
Go to the documentation of this file.
1#ifndef YAZE_CLI_HANDLERS_TOOLS_OVERWORLD_DOCTOR_COMMANDS_H
2#define YAZE_CLI_HANDLERS_TOOLS_OVERWORLD_DOCTOR_COMMANDS_H
3
5
6namespace yaze::cli {
7
21 public:
22 std::string GetName() const override { return "overworld-doctor"; }
23
24 std::string GetDescription() const {
25 return "Diagnose and repair overworld data corruption";
26 }
27
28 std::string GetUsage() const override {
29 return "overworld-doctor --rom <path> [--baseline <path>] [--fix] "
30 "[--apply-tail-expansion] [--dry-run] [--output <path>] "
31 "[--format json|text] [--verbose]";
32 }
33
34 std::string GetDefaultFormat() const override { return "text"; }
35
36 std::string GetOutputTitle() const override { return "Overworld Doctor"; }
37
38 Descriptor Describe() const override {
39 Descriptor d;
40 d.display_name = "overworld-doctor";
41 d.summary = "Diagnose and repair overworld data corruption including "
42 "tile16 corruption, map pointer issues, and ZSCustomOverworld "
43 "feature detection.";
44 d.todo_reference = "todo#overworld-doctor";
45 return d;
46 }
47
48 absl::Status ValidateArgs(
49 const resources::ArgumentParser& parser) override {
50 // No required args - ROM is loaded via context
51 // Optional: baseline, output, fix, dry-run, verbose, format
52 return absl::OkStatus();
53 }
54
55 absl::Status Execute(Rom* rom, const resources::ArgumentParser& parser,
56 resources::OutputFormatter& formatter) override;
57};
58
59} // namespace yaze::cli
60
61#endif // YAZE_CLI_HANDLERS_TOOLS_OVERWORLD_DOCTOR_COMMANDS_H
The Rom class is used to load, save, and modify Rom data. This is a generic SNES ROM container and do...
Definition rom.h:24
ROM doctor command for overworld data integrity.
absl::Status Execute(Rom *rom, const resources::ArgumentParser &parser, resources::OutputFormatter &formatter) override
Execute the command business logic.
std::string GetDefaultFormat() const override
Get the default output format ("json" or "text")
std::string GetUsage() const override
Get the command usage string.
std::string GetOutputTitle() const override
Get the output title for formatting.
Descriptor Describe() const override
Provide metadata for TUI/help summaries.
absl::Status ValidateArgs(const resources::ArgumentParser &parser) override
Validate command arguments.
std::string GetName() const override
Get the command name.
Utility for parsing common CLI argument patterns.
Base class for CLI command handlers.
Utility for consistent output formatting across commands.
Namespace for the command line interface.