aboutsummaryrefslogtreecommitdiff
path: root/src/Cli/Cli.h
diff options
context:
space:
mode:
authorfrosty <gabriel@bwaaa.monster>2026-09-16 16:32:06 -0400
committerfrosty <gabriel@bwaaa.monster>2026-09-16 16:32:06 -0400
commit4c8d764d171ec77ff626cec273c44ec7e7a995fc (patch)
treedc36193e611ece53c8f7e74d1dea71f8d9e7004e /src/Cli/Cli.h
downloadyapssg-master.tar.gz
init: initHEADmaster
Diffstat (limited to 'src/Cli/Cli.h')
-rw-r--r--src/Cli/Cli.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/Cli/Cli.h b/src/Cli/Cli.h
new file mode 100644
index 0000000..9695fd4
--- /dev/null
+++ b/src/Cli/Cli.h
@@ -0,0 +1,30 @@
+#ifndef YAPSSG_CLI_H
+#define YAPSSG_CLI_H
+
+#include "Logger/Logger.h"
+
+typedef enum {
+ INPUT_TYPE_NONE,
+ INPUT_TYPE_FILE,
+ INPUT_TYPE_DIRECTORY
+} InputType;
+
+typedef enum {
+ CLI_PARSE_ERROR = -1,
+ CLI_PARSE_OK,
+ CLI_PARSE_HELP,
+ CLI_PARSE_VERSION
+} CliParseResult;
+
+typedef struct {
+ InputType input_type;
+ const char *input_path;
+ const char *output_path;
+ int overwrite_output;
+ LogLevel log_level;
+} CliOptions;
+
+CliParseResult cli_parse(int argc, char **argv, CliOptions *options);
+void cli_print_usage(const char *program_name);
+
+#endif