Teuchos - Trilinos Tools Package Version of the Day
Loading...
Searching...
No Matches
Teuchos_SystemInformation.hpp
Go to the documentation of this file.
1// @HEADER
2// *****************************************************************************
3// Teuchos: Common Tools Package
4//
5// Copyright 2004 NTESS and the Teuchos contributors.
6// SPDX-License-Identifier: BSD-3-Clause
7// *****************************************************************************
8// @HEADER
9
10#ifndef TEUCHOS_SYSTEMINFORMATION_HPP
11#define TEUCHOS_SYSTEMINFORMATION_HPP
12
26
27#include <map>
28#include <string>
29
30namespace Teuchos::SystemInformation {
31
33bool commandIsAvailable(const std::string &command);
34
36std::string runCommandAndCaptureOutput(const std::string &command);
37
38enum RegistrationResult { REGISTERED, ALREADY_PRESENT, FAILURE };
39
41RegistrationResult registerEnvironmentVariable(const std::string &variableName);
42
45void registerAllPrefixedVariables(const std::string &prefix);
46
48RegistrationResult registerEnvironmentVariablePrefix(const std::string &prefix);
49
51RegistrationResult
52registerCommand(const std::string &commandLabel,
53 const std::string &commandToRunAndCapture = "",
54 const std::string &commandToCheckForExistence = "");
55
57void initializeCollection();
58
60std::map<std::string, std::string> collectSystemInformation();
61
62} // namespace Teuchos::SystemInformation
63
64#endif