mirror of
https://github.com/slsdetectorgroup/aare.git
synced 2025-06-07 21:20:40 +02:00
fix warnings
This commit is contained in:
parent
3c58039502
commit
2f23e4610d
@ -12,12 +12,12 @@ int main() {
|
|||||||
|
|
||||||
while (true) {
|
while (true) {
|
||||||
int rc = socket.receive(header, reinterpret_cast<std::byte *>(data));
|
int rc = socket.receive(header, reinterpret_cast<std::byte *>(data));
|
||||||
aare::logger::info("Received header: ", header.to_string());
|
aare::logger::info("Received bytes",rc,"Received header: ", header.to_string());
|
||||||
auto *data_int = reinterpret_cast<uint32_t *>(data);
|
auto *data_int = reinterpret_cast<uint32_t *>(data);
|
||||||
for (int i = 0; i < header.npixelsx; i++) {
|
for (uint32_t i = 0; i < header.npixelsx; i++) {
|
||||||
for (int j = 0; j < header.npixelsy; j++) {
|
for (uint32_t j = 0; j < header.npixelsy; j++) {
|
||||||
// verify that the sent data is correct
|
// verify that the sent data is correct
|
||||||
assert(data_int[i * header.npixelsy + j] == (i + j));
|
assert(data_int[i * header.npixelsy + j] == i + j);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
aare::logger::info("Frame verified");
|
aare::logger::info("Frame verified");
|
||||||
|
@ -30,6 +30,7 @@ int main() {
|
|||||||
aare::logger::info("Frame size:", frame.size(), "\n");
|
aare::logger::info("Frame size:", frame.size(), "\n");
|
||||||
|
|
||||||
int rc = socket.send(header, frame.data(), frame.size());
|
int rc = socket.send(header, frame.data(), frame.size());
|
||||||
|
aare::logger::info("Sent bytes", rc);
|
||||||
sleep(1);
|
sleep(1);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -12,7 +12,12 @@ class RawFile : public FileInterface {
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
std::filesystem::path m_fname; // TO be made private!
|
std::filesystem::path m_fname; // TO be made private!
|
||||||
void write(Frame &frame) override{};
|
|
||||||
|
// pragma to ignore warnings
|
||||||
|
void write(Frame &frame) override{
|
||||||
|
throw std::runtime_error("Not implemented");
|
||||||
|
};
|
||||||
|
|
||||||
Frame read() override { return get_frame(this->current_frame++); };
|
Frame read() override { return get_frame(this->current_frame++); };
|
||||||
std::vector<Frame> read(size_t n_frames) override;
|
std::vector<Frame> read(size_t n_frames) override;
|
||||||
void read_into(std::byte *image_buf) override { return get_frame_into(this->current_frame++, image_buf); };
|
void read_into(std::byte *image_buf) override { return get_frame_into(this->current_frame++, image_buf); };
|
||||||
|
@ -89,7 +89,7 @@ template <typename DataType> size_t SubFile::read_impl_flip(std::byte *buffer) {
|
|||||||
|
|
||||||
size_t SubFile::frame_number(int frame_index) {
|
size_t SubFile::frame_number(int frame_index) {
|
||||||
sls_detector_header h{};
|
sls_detector_header h{};
|
||||||
FILE *fp = fopen(this->m_fname.c_str(), "r");
|
fp = fopen(this->m_fname.c_str(), "r");
|
||||||
if (!fp)
|
if (!fp)
|
||||||
throw std::runtime_error(fmt::format("Could not open: {} for reading", m_fname.c_str()));
|
throw std::runtime_error(fmt::format("Could not open: {} for reading", m_fname.c_str()));
|
||||||
fseek(fp, (sizeof(sls_detector_header) + bytes_per_part()) * frame_index, SEEK_SET);
|
fseek(fp, (sizeof(sls_detector_header) + bytes_per_part()) * frame_index, SEEK_SET);
|
||||||
|
@ -19,7 +19,7 @@ TEST_CASE("Read a 1D numpy file with int32 data type") {
|
|||||||
|
|
||||||
// use the load function to read the full file into a NDArray
|
// use the load function to read the full file into a NDArray
|
||||||
auto data = f.load<int32_t, 1>();
|
auto data = f.load<int32_t, 1>();
|
||||||
for (size_t i = 0; i < 10; i++) {
|
for (int32_t i = 0; i < 10; i++) {
|
||||||
REQUIRE(data(i) == i);
|
REQUIRE(data(i) == i);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -20,7 +20,7 @@ class ZmqSocketReceiver : public ZmqSocket {
|
|||||||
public:
|
public:
|
||||||
ZmqSocketReceiver(const std::string &endpoint);
|
ZmqSocketReceiver(const std::string &endpoint);
|
||||||
void connect();
|
void connect();
|
||||||
int receive(ZmqHeader &header, std::byte *data, bool serialized_header = false);
|
size_t receive(ZmqHeader &header, std::byte *data, bool serialized_header = false);
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace aare
|
} // namespace aare
|
@ -7,6 +7,6 @@ class ZmqSocketSender : public ZmqSocket {
|
|||||||
public:
|
public:
|
||||||
ZmqSocketSender(const std::string &endpoint);
|
ZmqSocketSender(const std::string &endpoint);
|
||||||
void bind();
|
void bind();
|
||||||
int send(ZmqHeader &header, const std::byte *data, size_t size, bool serialize_header = false);
|
size_t send(ZmqHeader &header, const std::byte *data, size_t size, bool serialize_header = false);
|
||||||
};
|
};
|
||||||
} // namespace aare
|
} // namespace aare
|
@ -29,12 +29,14 @@ void ZmqSocketReceiver::connect() {
|
|||||||
zmq_setsockopt(m_socket, ZMQ_SUBSCRIBE, "", 0);
|
zmq_setsockopt(m_socket, ZMQ_SUBSCRIBE, "", 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
int ZmqSocketReceiver::receive(ZmqHeader &header, std::byte *data, bool serialized_header) {
|
size_t ZmqSocketReceiver::receive(ZmqHeader &header, std::byte *data, bool serialized_header) {
|
||||||
|
|
||||||
|
size_t data_bytes_received{};
|
||||||
|
|
||||||
if (serialized_header)
|
if (serialized_header)
|
||||||
throw std::runtime_error("Not implemented");
|
throw std::runtime_error("Not implemented");
|
||||||
|
|
||||||
int header_bytes_received = zmq_recv(m_socket, m_header_buffer, m_max_header_size, 0);
|
size_t header_bytes_received = zmq_recv(m_socket, m_header_buffer, m_max_header_size, 0);
|
||||||
|
|
||||||
// receive header
|
// receive header
|
||||||
m_header_buffer[header_bytes_received] = '\0'; // make sure we zero terminate
|
m_header_buffer[header_bytes_received] = '\0'; // make sure we zero terminate
|
||||||
@ -61,12 +63,12 @@ int ZmqSocketReceiver::receive(ZmqHeader &header, std::byte *data, bool serializ
|
|||||||
return 0; // no data following header
|
return 0; // no data following header
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
int data_bytes_received = zmq_recv(m_socket, data, header.imageSize, 0); // TODO! configurable size!!!!
|
data_bytes_received = zmq_recv(m_socket, data, header.imageSize, 0); // TODO! configurable size!!!!
|
||||||
if (data_bytes_received == -1)
|
if (data_bytes_received == -1)
|
||||||
throw std::runtime_error("Got half of a multipart msg!!!");
|
throw std::runtime_error("Got half of a multipart msg!!!");
|
||||||
aare::logger::debug("Bytes: ", data_bytes_received);
|
aare::logger::debug("Bytes: ", data_bytes_received);
|
||||||
}
|
}
|
||||||
return 1;
|
return data_bytes_received + header_bytes_received;
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace aare
|
} // namespace aare
|
||||||
|
@ -9,12 +9,12 @@ ZmqSocketSender::ZmqSocketSender(const std::string &endpoint) { m_endpoint = end
|
|||||||
void ZmqSocketSender::bind() {
|
void ZmqSocketSender::bind() {
|
||||||
m_context = zmq_ctx_new();
|
m_context = zmq_ctx_new();
|
||||||
m_socket = zmq_socket(m_context, ZMQ_PUB);
|
m_socket = zmq_socket(m_context, ZMQ_PUB);
|
||||||
int rc = zmq_bind(m_socket, m_endpoint.c_str());
|
size_t rc = zmq_bind(m_socket, m_endpoint.c_str());
|
||||||
assert(rc == 0);
|
assert(rc == 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
int ZmqSocketSender::send(ZmqHeader &header, const std::byte *data, size_t size, bool serialize_header) {
|
size_t ZmqSocketSender::send(ZmqHeader &header, const std::byte *data, size_t size, bool serialize_header) {
|
||||||
int rc;
|
size_t rc;
|
||||||
if (serialize_header) {
|
if (serialize_header) {
|
||||||
rc = zmq_send(m_socket, &header, sizeof(ZmqHeader), ZMQ_SNDMORE);
|
rc = zmq_send(m_socket, &header, sizeof(ZmqHeader), ZMQ_SNDMORE);
|
||||||
assert(rc == sizeof(ZmqHeader));
|
assert(rc == sizeof(ZmqHeader));
|
||||||
@ -24,7 +24,7 @@ int ZmqSocketSender::send(ZmqHeader &header, const std::byte *data, size_t size,
|
|||||||
assert(rc == header_str.size());
|
assert(rc == header_str.size());
|
||||||
}
|
}
|
||||||
|
|
||||||
int rc2 = zmq_send(m_socket, data, size, 0);
|
size_t rc2 = zmq_send(m_socket, data, size, 0);
|
||||||
assert(rc2 == size);
|
assert(rc2 == size);
|
||||||
return rc + rc2;
|
return rc + rc2;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user