2025-12-08 17:58:25 +01:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include "core/cli/subcommand.h"
|
|
|
|
|
#include <memory>
|
|
|
|
|
#include <vector>
|
|
|
|
|
|
|
|
|
|
namespace satdump
|
|
|
|
|
{
|
|
|
|
|
namespace cli
|
|
|
|
|
{
|
|
|
|
|
struct RegisterSubcommandEvent
|
|
|
|
|
{
|
|
|
|
|
std::vector<std::shared_ptr<satdump::CmdHandler>> &cmd_handlers;
|
2025-12-09 20:46:12 +01:00
|
|
|
bool is_gui;
|
2025-12-08 17:58:25 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
bool checkVerbose(int argc, char *argv[]);
|
|
|
|
|
|
2025-12-09 20:46:12 +01:00
|
|
|
class CommandHandler
|
|
|
|
|
{
|
|
|
|
|
private:
|
|
|
|
|
const bool is_gui;
|
|
|
|
|
CLI::App app;
|
|
|
|
|
|
|
|
|
|
std::vector<std::shared_ptr<satdump::CmdHandler>> cmd_handlers;
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
CommandHandler(bool is_gui = false);
|
|
|
|
|
int parse(int argc, char *argv[]);
|
2026-03-13 21:09:37 +01:00
|
|
|
bool has_command();
|
2025-12-09 20:46:12 +01:00
|
|
|
bool run();
|
|
|
|
|
};
|
2025-12-08 17:58:25 +01:00
|
|
|
} // namespace cli
|
|
|
|
|
} // namespace satdump
|