Files
Jungfraujoch/image_pusher/ZMQWriterNotificationPuller.h
2024-10-14 15:03:38 +02:00

29 lines
749 B
C++

// Copyright (2019-2024) Paul Scherrer Institute
// Copyright (2019-2024) Paul Scherrer Institute
#ifndef JFJOCH_ZMQWRITERNOTIFICATIONPULLER_H
#define JFJOCH_ZMQWRITERNOTIFICATIONPULLER_H
#include <optional>
#include "../common/ZMQWrappers.h"
struct ZMQWriterNotificationOutput {
bool ok;
uint64_t socket_number;
uint64_t processed_images;
};
class ZMQWriterNotificationPuller {
ZMQSocket socket;
public:
explicit ZMQWriterNotificationPuller(const std::string& addr, std::chrono::milliseconds timeout = std::chrono::seconds(15));
std::string GetEndpointName();
std::optional<ZMQWriterNotificationOutput> Receive(uint64_t run_number, const std::string &run_name);
};
#endif //JFJOCH_ZMQWRITERNOTIFICATIONPULLER_H