10 #ifndef TEUCHOS_SYSTEMINFORMATION_HPP
11 #define TEUCHOS_SYSTEMINFORMATION_HPP
30 namespace Teuchos::SystemInformation {
33 bool commandIsAvailable(
const std::string &command);
36 std::string runCommandAndCaptureOutput(
const std::string &command);
38 enum RegistrationResult { REGISTERED, ALREADY_PRESENT, FAILURE };
41 RegistrationResult registerEnvironmentVariable(
const std::string &variableName);
45 void registerAllPrefixedVariables(
const std::string &prefix);
49 registerCommand(
const std::string &commandLabel,
50 const std::string &commandToRunAndCapture =
"",
51 const std::string &commandToCheckForExistence =
"");
54 void initializeCollection();
57 std::map<std::string, std::string> collectSystemInformation();