eckit::distributed::Producer class

Base classes

class Actor

Public types

enum MessageTags { READY, WORK, SHUTDOWN, OPEN, WRITE, CLOSE, STATISTICS, BYE }

Public static functions

static auto tagName(int) -> const char*

Constructors, destructors, conversion operators

Producer(Transport& transport)

Public functions

void run() virtual
auto produce(Message& message) -> bool pure virtual
void finalise() pure virtual
void messageFromWorker(Message& message, int worker) const virtual
void messageFromWriter(Message& message, int worker) const virtual
void sendStatisticsToProducer(const Message& message) const virtual
void sendMessageToNextWorker(const Message& message) const virtual
void getNextWorkMessage(Message& message) const virtual
void getNextWriteMessage(Message& message) const virtual
void sendToWriter(int writer, const Message& message) const virtual
void sendShutDownMessage() const virtual

Enum documentation

enum eckit::distributed::Producer::MessageTags

Function documentation

static const char* eckit::distributed::Producer::tagName(int)

void eckit::distributed::Producer::finalise() pure virtual

void eckit::distributed::Producer::messageFromWorker(Message& message, int worker) const virtual

void eckit::distributed::Producer::messageFromWriter(Message& message, int worker) const virtual

void eckit::distributed::Producer::sendStatisticsToProducer(const Message& message) const virtual

void eckit::distributed::Producer::sendMessageToNextWorker(const Message& message) const virtual

void eckit::distributed::Producer::getNextWorkMessage(Message& message) const virtual

void eckit::distributed::Producer::getNextWriteMessage(Message& message) const virtual

void eckit::distributed::Producer::sendToWriter(int writer, const Message& message) const virtual

void eckit::distributed::Producer::sendShutDownMessage() const virtual