yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
music_commands.cc
Go to the documentation of this file.
2
3#include "absl/strings/str_format.h"
4
5namespace yaze {
6namespace cli {
7namespace handlers {
8
10 Rom* rom, const resources::ArgumentParser& parser,
11 resources::OutputFormatter& formatter) {
12 formatter.BeginObject("Music Tracks");
13 formatter.AddField("total_tracks", 0);
14 formatter.AddField("status", "not_implemented");
15 formatter.AddField("message",
16 "Music listing requires music system integration");
17
18 formatter.BeginArray("tracks");
19 formatter.EndArray();
20 formatter.EndObject();
21
22 return absl::OkStatus();
23}
24
26 Rom* rom, const resources::ArgumentParser& parser,
27 resources::OutputFormatter& formatter) {
28 auto track_id = parser.GetString("id").value();
29
30 formatter.BeginObject("Music Track Info");
31 formatter.AddField("track_id", track_id);
32 formatter.AddField("status", "not_implemented");
33 formatter.AddField("message", "Music info requires music system integration");
34 formatter.EndObject();
35
36 return absl::OkStatus();
37}
38
40 Rom* rom, const resources::ArgumentParser& parser,
41 resources::OutputFormatter& formatter) {
42 auto category = parser.GetString("category").value_or("all");
43
44 formatter.BeginObject("Music Track Data");
45 formatter.AddField("category", category);
46 formatter.AddField("total_tracks", 0);
47 formatter.AddField("status", "not_implemented");
48 formatter.AddField("message",
49 "Music track data requires music system integration");
50
51 formatter.BeginArray("tracks");
52 formatter.EndArray();
53 formatter.EndObject();
54
55 return absl::OkStatus();
56}
57
58} // namespace handlers
59} // namespace cli
60} // namespace yaze
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
absl::Status Execute(Rom *rom, const resources::ArgumentParser &parser, resources::OutputFormatter &formatter) override
Execute the command business logic.
absl::Status Execute(Rom *rom, const resources::ArgumentParser &parser, resources::OutputFormatter &formatter) override
Execute the command business logic.
absl::Status Execute(Rom *rom, const resources::ArgumentParser &parser, resources::OutputFormatter &formatter) override
Execute the command business logic.
Utility for parsing common CLI argument patterns.
std::optional< std::string > GetString(const std::string &name) const
Parse a named argument (e.g., –format=json or –format json)
Utility for consistent output formatting across commands.
void BeginArray(const std::string &key)
Begin an array.
void BeginObject(const std::string &title="")
Start a JSON object or text section.
void EndObject()
End a JSON object or text section.
void AddField(const std::string &key, const std::string &value)
Add a key-value pair.