12 #ifndef SST_CORE_CONFIGSHARED_H 13 #define SST_CORE_CONFIGSHARED_H 15 #include "sst/core/configBase.h" 16 #include "sst/core/sst_types.h" 17 #include "sst/core/warnmacros.h" 38 friend int ::main(
int argc,
char** argv);
48 ConfigShared(
bool suppress_print,
bool include_libpath,
bool include_env,
bool include_verbose);
51 void addLibraryPathOptions();
52 void addEnvironmentOptions();
53 void addVerboseOptions(
bool sdl_avail);
63 SST_CONFIG_DECLARE_OPTION(std::string, libpath,
"", &StandardConfigParsers::from_string<std::string>);
65 SST_CONFIG_DECLARE_OPTION(std::string, addLibPath,
"",
66 std::bind(&StandardConfigParsers::append_string,
":",
"", std::placeholders::_1, std::placeholders::_2));
71 SST_CONFIG_DECLARE_OPTION(
bool, print_env,
false, &StandardConfigParsers::flag_set_true);
73 SST_CONFIG_DECLARE_OPTION(
bool, no_env_config,
false, &StandardConfigParsers::flag_set_true);
77 static int parse_verbosity(int32_t& val, std::string arg)
84 unsigned long value = stoul(arg);
88 catch ( std::invalid_argument& e ) {
89 fprintf(stderr,
"Failed to parse '%s' as number for option --verbose\n", arg.c_str());
94 SST_CONFIG_DECLARE_OPTION(int32_t, verbose, 0, &ConfigShared::parse_verbosity);
99 std::string
getLibPath(
bool exclude_ext_paths =
false)
const;
104 #endif // SST_CORE_CONFIGBASE_H std::string getLibPath(bool exclude_ext_paths=false) const
Get the library path for loading element libraries.
Definition: configShared.cc:74
Class to contain SST Simulation Configuration variables.
Definition: configShared.h:36
Base class to parse command line options for SST Simulation Configuration variables.
Definition: configBase.h:573