summaryrefslogtreecommitdiffstats
path: root/mmc_updater/src/UpdaterOptions.h
diff options
context:
space:
mode:
Diffstat (limited to 'mmc_updater/src/UpdaterOptions.h')
-rw-r--r--mmc_updater/src/UpdaterOptions.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/mmc_updater/src/UpdaterOptions.h b/mmc_updater/src/UpdaterOptions.h
new file mode 100644
index 00000000..b4473a82
--- /dev/null
+++ b/mmc_updater/src/UpdaterOptions.h
@@ -0,0 +1,28 @@
+#pragma once
+
+#include "UpdateInstaller.h"
+
+/** Parses the command-line options to the updater binary. */
+class UpdaterOptions
+{
+ public:
+ UpdaterOptions();
+
+ void parse(int argc, char** argv);
+
+ UpdateInstaller::Mode mode;
+ std::string installDir;
+ std::string packageDir;
+ std::string scriptPath;
+ std::string finishCmd;
+ PLATFORM_PID waitPid;
+ std::string logFile;
+ bool showVersion;
+ bool forceElevated;
+ bool autoClose;
+
+ private:
+ void parseOldFormatArgs(int argc, char** argv);
+ static void parseOldFormatArg(const std::string& arg, std::string* key, std::string* value);
+};
+