1#ifndef YAZE_SRC_CLI_HANDLERS_MUSIC_COMMANDS_H_
2#define YAZE_SRC_CLI_HANDLERS_MUSIC_COMMANDS_H_
15 std::string
GetName()
const {
return "music-list"; }
17 return "List available music tracks";
20 return "music-list [--format <json|text>]";
24 return absl::OkStatus();
36 std::string
GetName()
const {
return "music-info"; }
38 return "Get information about a specific music track";
41 return "music-info --id <track_id> [--format <json|text>]";
57 std::string
GetName()
const {
return "music-tracks"; }
59 return "Get detailed track data for music";
62 return "music-tracks [--category <category>] [--format <json|text>]";
66 return absl::OkStatus();
The Rom class is used to load, save, and modify Rom data.
Command handler for getting music track information.
absl::Status Execute(Rom *rom, const resources::ArgumentParser &parser, resources::OutputFormatter &formatter) override
Execute the command business logic.
std::string GetUsage() const
Get the command usage string.
absl::Status ValidateArgs(const resources::ArgumentParser &parser) override
Validate command arguments.
std::string GetDescription() const
std::string GetName() const
Get the command name.
Command handler for listing music tracks.
std::string GetName() const
Get the command name.
std::string GetUsage() const
Get the command usage string.
std::string GetDescription() const
absl::Status Execute(Rom *rom, const resources::ArgumentParser &parser, resources::OutputFormatter &formatter) override
Execute the command business logic.
absl::Status ValidateArgs(const resources::ArgumentParser &parser) override
Validate command arguments.
Command handler for getting detailed music track data.
std::string GetDescription() const
std::string GetUsage() const
Get the command usage string.
absl::Status Execute(Rom *rom, const resources::ArgumentParser &parser, resources::OutputFormatter &formatter) override
Execute the command business logic.
std::string GetName() const
Get the command name.
absl::Status ValidateArgs(const resources::ArgumentParser &parser) override
Validate command arguments.
Utility for parsing common CLI argument patterns.
absl::Status RequireArgs(const std::vector< std::string > &required) const
Validate that required arguments are present.
Base class for CLI command handlers.
Main namespace for the application.