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