10#include <framework/dataobjects/EventMetaData.h>
11#include <framework/pcore/EvtMessage.h>
12#include <framework/pcore/zmq/messages/ZMQMessageFactory.h>
24 using TimeStamp = std::chrono::time_point<std::chrono::system_clock>;
28 unsigned int workerId);
34 template <
class AZMQClient>
55 template <
class AZMQClient>
59 socket.publish(std::move(message));
Storage item for the event backup storing the event message, the time stamp and the event meta data.
const TimeStamp & getTimestamp() const
Getter for the stored time stamp.
std::chrono::time_point< std::chrono::system_clock > TimeStamp
Short for the class of the time stamp (it is a system clock time stamp)
const unsigned int & getWorkerId() const
Getter for the stored worker id.
TimeStamp m_timestamp
Getter for the stored time stamp.
unsigned int m_workerId
Getter for the stored worker id.
const EventMetaData & getEventMetaData() const
Getter for the stored event meta data.
bool operator==(const EventMetaData &rhs)
Compare operator needed in the backup list.
EventMetaData m_eventMetaData
Getter for the stored event meta data.
std::unique_ptr< EvtMessage > m_eventMessage
Stored event message.
static auto createMessage(const std::string &msgIdentity, const EMessageTypes msgType, const std::unique_ptr< EvtMessage > &eventMessage)
Create an ID Message out of an identity, the type and an event message.
void sendToSocket(const AZMQClient &socket)
Publish this event backup directly to the given client.
Abstract base class for different kinds of events.