27#include "pism/util/options.hh"
38void show_usage(
const Logger &log,
const std::string &execname,
const std::string &usage);
42bool maybe_show_usage(
const Logger &log,
const std::string &execname,
const std::string &usage);
54 String(
const std::string& option,
55 const std::string& description);
57 String(
const std::string& option,
58 const std::string& description,
59 const std::string& default_value,
62 int process(
const std::string& option,
63 const std::string& description,
64 const std::string& default_value,
70 Keyword(
const std::string& option,
71 const std::string& description,
72 const std::string& choices,
73 const std::string& default_value);
78 Integer(
const std::string& option,
79 const std::string& description,
85 Real(std::shared_ptr<units::System> system,
86 const std::string& option,
87 const std::string& description,
88 const std::string& units,
89 double default_value);
92bool Bool(
const std::string& option,
93 const std::string& description);
95void deprecated(
const std::string &old_name,
const std::string &new_name);
Template base class used by PISM's option-processing classes.
int process(const std::string &option, const std::string &description, const std::string &default_value, ArgumentFlag flag)
void deprecated(const std::string &old_name, const std::string &new_name)
Stop if an option old_name is set, printing a message that new_name should be used instead.
bool Bool(const std::string &option, const std::string &description)
void ignored(const Logger &log, const std::string &name)
Print a warning telling the user that an option was ignored.
void forbidden(const std::string &name)
Stop if an option name is set.
void show_usage(const Logger &log, const std::string &execname, const std::string &usage)
Print a usage message.
bool maybe_show_usage(const Logger &log, const std::string &execname, const std::string &usage)
In a single call a driver program can provide a usage string to the user and check if required option...