class
#include <eckit/runtime/Main.h>
Main
Derived classes
- class Application
- class Library
- class Tool
Public static functions
- static auto instance() -> Main&
-
static auto hostname() -> std::
string - Platform agnostic hostname.
- static void initialise(int argc, char** argv, const char* homeenv = nullptr)
- static auto ready() -> bool
Public functions
- auto argc() const -> int
- auto argv() const -> char**
-
auto argv(int n) const -> std::
string -
auto home() const -> const std::
string& - void terminate() virtual
- auto taskID() const -> long
- void taskID(long)
-
auto name() const -> const std::
string& virtual - Name of the program as called from the command-line.
-
auto displayName() const -> const std::
string& virtual - auto debug() const -> bool virtual
- auto createInfoLogTarget() const -> LogTarget* virtual
- Channel handling.
- auto createWarningLogTarget() const -> LogTarget* virtual
- auto createErrorLogTarget() const -> LogTarget* virtual
- auto createDebugLogTarget() const -> LogTarget* virtual
- auto createMetricsLogTarget() const -> LogTarget* virtual
Private functions
- ~Main() private virtual
- auto createDefaultLogTarget() const -> LogTarget* virtual
Function documentation
static void eckit:: Main:: initialise(int argc,
char** argv,
const char* homeenv = nullptr)
Ensure that there exits a Main object. This is to be used For unit tests and fortran bindinds only
const std:: string& eckit:: Main:: displayName() const virtual
Name to display in logs. Default is name(), but can be configured differently.