eckit::PipeApplication class

Base classes

class Application

Public static functions

static void launch(const std::string& name, int in, int out)
static auto instance() -> Application&
static auto hostname() -> std::string
Platform agnostic hostname.
static void initialise(int argc, char** argv, const char* homeenv = nullptr)
static auto ready() -> bool

Constructors, destructors, conversion operators

PipeApplication(int argc, char** argv, const char* homeenv)
~PipeApplication() override

Public functions

void process(Stream&) pure virtual
void endBatch() virtual
void init(Stream&) virtual
void waiting() virtual
void unique()
call this function once to make this application unique on this host
void start() override
void stop() override
void kill() override
void wait() override
auto active() -> bool override
auto running() const -> bool
void terminate() override
auto uptime() -> time_t
auto argc() const -> int
auto argv() const -> char**
auto argv(int n) const -> std::string
auto home() const -> const std::string&
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 createMetricsLogTarget() const -> LogTarget* virtual

Private functions

void run() override
overridden from Application

Function documentation

static Application& eckit::PipeApplication::instance()

static std::string eckit::PipeApplication::hostname()

Platform agnostic hostname.

static void eckit::PipeApplication::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

static bool eckit::PipeApplication::ready()

void eckit::PipeApplication::unique()

call this function once to make this application unique on this host

void eckit::PipeApplication::start() override

void eckit::PipeApplication::stop() override

void eckit::PipeApplication::kill() override

void eckit::PipeApplication::wait() override

bool eckit::PipeApplication::active() override

bool eckit::PipeApplication::running() const

void eckit::PipeApplication::terminate() override

time_t eckit::PipeApplication::uptime()

int eckit::PipeApplication::argc() const

char** eckit::PipeApplication::argv() const

std::string eckit::PipeApplication::argv(int n) const

const std::string& eckit::PipeApplication::home() const

long eckit::PipeApplication::taskID() const

void eckit::PipeApplication::taskID(long)

const std::string& eckit::PipeApplication::name() const virtual

Name of the program as called from the command-line.

const std::string& eckit::PipeApplication::displayName() const virtual

Name to display in logs. Default is name(), but can be configured differently.

bool eckit::PipeApplication::debug() const virtual

LogTarget* eckit::PipeApplication::createMetricsLogTarget() const virtual