summaryrefslogtreecommitdiff
path: root/src/main.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.cc')
-rw-r--r--src/main.cc34
1 files changed, 30 insertions, 4 deletions
diff --git a/src/main.cc b/src/main.cc
index 08cb89f..cc5fbb3 100644
--- a/src/main.cc
+++ b/src/main.cc
@@ -3,25 +3,47 @@
#include <getopt.h>
#include <iostream>
-void err()
+static std::string version_number = "v0.1";
+
+static std::string banner =
+ " _/_/_/ _/_/_/ _/_/_/ _/_/_/ \n"
+ " _/ _/ _/ _/ _/ \n"
+ " _/_/_/ _/ _/_/ _/ \n"
+ " _/ _/ _/ _/ _/ \n"
+ "_/ _/ _/_/_/ _/_/_/ _/_/_/ \n"
+ " \n"
+ " \n"
+ " _/_/ _/_/ \n"
+ " _/ _/ _/ _/_/_/_/ _/_/_/ _/_/_/_/_/ _/_/ _/_/_/ _/ \n"
+ " _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ \n"
+ "_/ _/ _/ _/_/_/ _/ _/ _/ _/ _/_/_/ _/ \n"
+ " _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ \n"
+ " _/ _/ _/_/_/_/ _/_/_/ _/ _/_/ _/ _/ _/ \n"
+ " _/_/ _/_/ \n";
+
+static void print_version_number() { std::cout << banner << version_number << '\n'; }
+
+static void err()
{
std::cerr << "Usage:\n\trisc_vector [OPTIONS]\nOptions:\n\t--debug,\t-d: "
- "turn on verbose output\n\t--no-python,\t-p: run without GUI\n"
+ "turn on verbose output\n\t--no-python,\t-p: run without "
+ "GUI\n\t--version,\t-v: print the version information and exit\n"
<< std::endl;
}
-void parseArguments(int argc, char **argv, Logger &logger, bool &python)
+static void parseArguments(int argc, char **argv, Logger &logger, bool &python)
{
struct option long_options[] = {
{"debug", no_argument, 0, 'd'},
{"no-python", no_argument, 0, 'p'},
+ {"version", no_argument, 0, 'v'},
{0, 0, 0, 0}};
python = true;
int opt;
- while ((opt = getopt_long(argc, argv, "d:p", long_options, NULL)) != -1) {
+ while ((opt = getopt_long(argc, argv, "d:p:v", long_options, NULL)) != -1) {
switch (opt) {
case 'd':
logger.setLevel(DEBUG);
@@ -31,6 +53,9 @@ void parseArguments(int argc, char **argv, Logger &logger, bool &python)
logger.log(INFO, "Python will NOT be started!");
python = false;
break;
+ case 'v':
+ print_version_number();
+ exit(EXIT_SUCCESS);
default:
err();
exit(EXIT_FAILURE);
@@ -40,6 +65,7 @@ void parseArguments(int argc, char **argv, Logger &logger, bool &python)
int main(int argc, char **argv)
{
+ print_version_number();
Logger logger("vector.log");
Cli cli;
logger.log(INFO, "Initializing...");