eckit::Main class

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.

This website is beyond its original expiry date and the content may be out of date. The site owner has been notified and may choose to extend the expiry date and remove this banner. If you have any questions about this, please visit our support portal.