diff options
Diffstat (limited to 'source/base/StarVersionOptionParser.hpp')
-rw-r--r-- | source/base/StarVersionOptionParser.hpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/source/base/StarVersionOptionParser.hpp b/source/base/StarVersionOptionParser.hpp new file mode 100644 index 0000000..7a51f09 --- /dev/null +++ b/source/base/StarVersionOptionParser.hpp @@ -0,0 +1,27 @@ +#ifndef STAR_VERSION_OPTION_PARSER_HPP +#define STAR_VERSION_OPTION_PARSER_HPP + +#include "StarOptionParser.hpp" +#include "StarVersion.hpp" + +namespace Star { + +// Option parser that accepts -h to print the help and exit and -v to print the +// version and exit. +class VersionOptionParser : public OptionParser { +public: + static void printVersion(std::ostream& os); + + VersionOptionParser(); + + // Parse the command line options, or, in the case of an error, -h, or -v, + // prints the appropriate text and immediately exits. + Options parseOrDie(StringList const& cmdLineArguments) const; + + // First sets the command name based on argv[0], then calls parseOrDie. + Options commandParseOrDie(int argc, char** argv); +}; + +} + +#endif |