yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
dungeon_doctor_commands.h
Go to the documentation of this file.
1#ifndef YAZE_CLI_HANDLERS_TOOLS_DUNGEON_DOCTOR_COMMANDS_H
2#define YAZE_CLI_HANDLERS_TOOLS_DUNGEON_DOCTOR_COMMANDS_H
3
5
6namespace yaze::cli {
7
21 public:
22 std::string GetName() const override { return "dungeon-doctor"; }
23
24 std::string GetDescription() const {
25 return "Diagnose dungeon room data integrity and validate limits";
26 }
27
28 std::string GetUsage() const override {
29 return "dungeon-doctor --rom <path> [--room <id>] [--all] "
30 "[--format json|text] [--verbose]";
31 }
32
33 std::string GetDefaultFormat() const override { return "text"; }
34
35 std::string GetOutputTitle() const override { return "Dungeon Doctor"; }
36
37 Descriptor Describe() const override {
38 Descriptor desc;
39 desc.display_name = "dungeon-doctor";
40 desc.summary = "Diagnose dungeon room data including object counts, "
41 "sprite limits, chest conflicts, and bounds checking.";
42 desc.todo_reference = "todo#dungeon-doctor";
43 return desc;
44 }
45
46 absl::Status ValidateArgs(
47 const resources::ArgumentParser& parser) override {
48 return absl::OkStatus();
49 }
50
51 absl::Status Execute(Rom* rom, const resources::ArgumentParser& parser,
52 resources::OutputFormatter& formatter) override;
53};
54
55} // namespace yaze::cli
56
57#endif // YAZE_CLI_HANDLERS_TOOLS_DUNGEON_DOCTOR_COMMANDS_H
58
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
Dungeon doctor command for room data integrity.
std::string GetOutputTitle() const override
Get the output title for formatting.
std::string GetName() const override
Get the command name.
absl::Status ValidateArgs(const resources::ArgumentParser &parser) override
Validate command arguments.
Descriptor Describe() const override
Provide metadata for TUI/help summaries.
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.
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.