From 6a1b0acb93a377883c3242b6485abfed0b232492 Mon Sep 17 00:00:00 2001 From: lrlunin Date: Wed, 6 May 2026 10:23:58 +0200 Subject: [PATCH] renamed helper function, sorted header fields alphabetically --- slsReceiverSoftware/src/DataStreamer.cpp | 38 ++++++++++++++---------- slsReceiverSoftware/src/DataStreamer.h | 2 +- 2 files changed, 23 insertions(+), 17 deletions(-) diff --git a/slsReceiverSoftware/src/DataStreamer.cpp b/slsReceiverSoftware/src/DataStreamer.cpp index 29ad04ae6..9478a5289 100644 --- a/slsReceiverSoftware/src/DataStreamer.cpp +++ b/slsReceiverSoftware/src/DataStreamer.cpp @@ -162,18 +162,23 @@ void DataStreamer::ProcessAnImage(sls_detector_header header, size_t size, } } -zmqHeader DataStreamer::prepareZmqHeader() { +zmqHeader DataStreamer::prepareRxZmqHeader() { zmqHeader zHeader; zHeader.jsonversion = SLS_DETECTOR_JSON_HEADER_VERSION; - // parameters coming from the receiver software - zHeader.fname = fileNametoStream; + + // parameters coming from the receiver zHeader.dynamicRange = generalData->dynamicRange; zHeader.fileIndex = fileIndex; + zHeader.flipRows = static_cast(flipRows); + zHeader.fname = fileNametoStream; + zHeader.imageSize = generalData->imageSize; + if (generalData->detType == GOTTHARD2 && index != 0) { + zHeader.imageSize = generalData->vetoImageSize; + } zHeader.ndetx = numPorts.x; zHeader.ndety = numPorts.y; zHeader.npixelsx = generalData->nPixelsX; zHeader.npixelsy = generalData->nPixelsY; - zHeader.flipRows = static_cast(flipRows); zHeader.quad = quadEnable; // update local copy only if it was updated (to prevent locking each time) @@ -188,37 +193,38 @@ zmqHeader DataStreamer::prepareZmqHeader() { } int DataStreamer::SendDummyHeader() { - zmqHeader zHeader = prepareZmqHeader(); + zmqHeader zHeader = prepareRxZmqHeader(); zHeader.data = false; return zmqSocket->SendHeader(index, zHeader); } int DataStreamer::SendDataHeader(sls_detector_header header, uint32_t size) { - zmqHeader zHeader = prepareZmqHeader(); + zmqHeader zHeader = prepareRxZmqHeader(); zHeader.data = true; // parameter coming from the detector (raw and derived) uint64_t frameIndex = header.frameNumber - firstIndex; uint64_t acquisitionIndex = header.frameNumber; - zHeader.frameIndex = frameIndex; zHeader.acqIndex = acquisitionIndex; - zHeader.frameNumber = header.frameNumber; - zHeader.progress = - 100 * ((double)(frameIndex + 1) / (double)(nTotalFrames)); - zHeader.expLength = header.expLength; - zHeader.packetNumber = header.packetNumber; + zHeader.column = header.column; zHeader.completeImage = (header.packetNumber < generalData->packetsPerFrame ? false : true); zHeader.detSpec1 = header.detSpec1; - zHeader.timestamp = header.timestamp; - zHeader.modId = header.modId; - zHeader.row = header.row; - zHeader.column = header.column; zHeader.detSpec2 = header.detSpec2; zHeader.detSpec3 = header.detSpec3; zHeader.detSpec4 = header.detSpec4; zHeader.detType = header.detType; + zHeader.expLength = header.expLength; + zHeader.frameIndex = frameIndex; + zHeader.frameNumber = header.frameNumber; + zHeader.imageSize = size; + zHeader.modId = header.modId; + zHeader.packetNumber = header.packetNumber; + zHeader.progress = + 100 * ((double)(frameIndex + 1) / (double)(nTotalFrames)); + zHeader.row = header.row; + zHeader.timestamp = header.timestamp; zHeader.version = header.version; return zmqSocket->SendHeader(index, zHeader); diff --git a/slsReceiverSoftware/src/DataStreamer.h b/slsReceiverSoftware/src/DataStreamer.h index 69b6ee30d..ba4abcb5f 100644 --- a/slsReceiverSoftware/src/DataStreamer.h +++ b/slsReceiverSoftware/src/DataStreamer.h @@ -72,7 +72,7 @@ class DataStreamer : private virtual slsDetectorDefs, public ThreadObject { */ void ProcessAnImage(sls_detector_header header, size_t size, char *data); - zmqHeader prepareZmqHeader(); + zmqHeader prepareRxZmqHeader(); int SendDummyHeader(); /**