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 =
42 "Diagnose overworld data: map pointer issues, tile16 layout, "
43 "and ZSCustomOverworld feature detection.";
44 d.todo_reference = "todo#overworld-doctor";
45 return d;
46 }
47
48 absl::Status ValidateArgs(const resources::ArgumentParser& parser) override {
49 // No required args - ROM is loaded via context
50 // Optional: baseline, output, fix, dry-run, verbose, format
51 return absl::OkStatus();
52 }
53
54 absl::Status Execute(Rom* rom, const resources::ArgumentParser& parser,
55 resources::OutputFormatter& formatter) override;
56};
57
58} // namespace yaze::cli
59
60#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:49
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.