26 lines
759 B
C++
26 lines
759 B
C++
// Copyright (2019-2024) Paul Scherrer Institute
|
|
|
|
#ifndef JFJOCH_ZMQPREVIEWSOCKET_H
|
|
#define JFJOCH_ZMQPREVIEWSOCKET_H
|
|
|
|
#include "PreviewCounter.h"
|
|
#include "../common/ZMQWrappers.h"
|
|
#include "../frame_serialize/CBORStream2Serializer.h"
|
|
#include "ZMQPreviewSettings.h"
|
|
|
|
class ZMQPreviewSocket {
|
|
ZMQSocket socket;
|
|
PreviewCounter counter;
|
|
bool enable;
|
|
public:
|
|
explicit ZMQPreviewSocket(const std::string &addr);
|
|
ZMQPreviewSocket& Period(const std::optional<std::chrono::microseconds> &period);
|
|
void SendImage(const uint8_t *image_data, size_t image_size);
|
|
std::string GetAddress();
|
|
|
|
ZMQPreviewSocket& ImportSettings(const ZMQPreviewSettings& settings);
|
|
ZMQPreviewSettings GetSettings();
|
|
};
|
|
|
|
#endif //JFJOCH_ZMQPREVIEWSOCKET_H
|