9 #ifndef IMPBASE_FLAGS_H
10 #define IMPBASE_FLAGS_H
12 #include <IMP/base/base_config.h>
13 #include <boost/cstdint.hpp>
17 IMPBASE_BEGIN_NAMESPACE
41 std::string description);
52 std::string description);
68 std::string positional_description,
int num_positional);
78 std::string description);
93 std::string positional_description,
int num_positional);
103 std::string *storage);
108 IMPBASEEXPORT
void add_string_flag(std::string name, std::string default_value,
109 std::string description);
120 AddIntFlag(std::string name, std::string description,
121 boost::int64_t *storage);
126 IMPBASEEXPORT
void add_int_flag(std::string name,
size_t default_value,
127 std::string description);
138 AddBoolFlag(std::string name, std::string description,
bool *storage);
143 IMPBASEEXPORT
void add_bool_flag(std::string name, std::string description);
154 AddFloatFlag(std::string name, std::string description,
double *storage);
159 IMPBASEEXPORT
void add_float_flag(std::string name,
double default_value,
160 std::string description);
167 IMPBASEEXPORT
void write_help(std::ostream &out = std::cerr);
169 #if !defined(SWIG) && !defined(IMP_DOXYGEN)
181 IMPBASE_END_NAMESPACE
size_t get_int_flag(std::string name)
double get_float_flag(std::string name)
void add_float_flag(std::string name, double default_value, std::string description)
bool get_bool_flag(std::string name)
IMP::base::Vector< String > Strings
Standard way to pass a bunch of String values.
std::string get_string_flag(std::string name)
void add_bool_flag(std::string name, std::string description)
void add_string_flag(std::string name, std::string default_value, std::string description)
void write_help(std::ostream &out=std::cerr)
void add_int_flag(std::string name, size_t default_value, std::string description)
Strings setup_from_argv(const Strings &argv, std::string description, std::string positional_description, int num_positional)
Strings setup_from_argv_allowing_unknown(int argc, char **argv, std::string description)
std::string get_executable_name()