enabled data processor should write to master file

This commit is contained in:
2026-07-27 18:45:23 +02:00
parent 160d793f71
commit 2d33f31ec0
3 changed files with 14 additions and 4 deletions
@@ -63,6 +63,8 @@ void DataProcessor::SetDataStreamEnable(bool enable) {
dataStreamEnable = enable;
}
bool DataProcessor::GetDataStreamEnable() const { return dataStreamEnable; }
void DataProcessor::SetStreamingFrequency(uint32_t value) {
streamingFrequency = value;
}
@@ -329,6 +331,7 @@ void DataProcessor::ProcessAnImage(sls_receiver_header &header, size_t &size,
uint64_t fnum = header.detHeader.frameNumber;
LOG(logDEBUG1) << "DataProcessing " << index << ": fnum:" << fnum;
currentFrameIndex = fnum;
LOG(logDEBUG) << "numFramesCaught:" << numFramesCaught;
numFramesCaught++;
uint32_t nump = header.detHeader.packetNumber;
+1
View File
@@ -43,6 +43,7 @@ class DataProcessor : private virtual slsDetectorDefs, public ThreadObject {
void SetPortROI(const ROI arg);
void setMultiROIMetadata(const std::vector<slsDetectorDefs::ROI> &args);
void SetDataStreamEnable(bool enable);
bool GetDataStreamEnable() const;
void SetStreamingFrequency(uint32_t value);
void SetStreamingTimerInMs(uint32_t value);
void SetStreamingStartFnum(uint32_t value);
+10 -4
View File
@@ -203,7 +203,9 @@ void Implementation::SetupDataProcessor(int i) {
dataProcessor[i]->SetActivate(activated);
dataProcessor[i]->SetPortROI(portRois[i]);
if (i == 0)
dataProcessor[0]->setMultiROIMetadata(multiRoiMetadata);
dataProcessor[0]->setMultiROIMetadata(
multiRoiMetadata); // TODO: Info should also be in all but doesnt
// make sense to disable one port and have ROI
dataProcessor[i]->SetDataStreamEnable(dataStreamEnable);
dataProcessor[i]->SetStreamingFrequency(streamingFrequency);
dataProcessor[i]->SetStreamingTimerInMs(streamingTimerInMs);
@@ -1013,9 +1015,13 @@ void Implementation::StartMasterWriter() {
masterAttributes.udpPortsDisabled = udpPortsDisabledMetadata;
// create master file
masterFileName = dataProcessor[0]->CreateMasterFile(
filePath, fileName, fileIndex, overwriteEnable, silentMode,
fileFormatType, &masterAttributes, &hdf5LibMutex);
size_t dataprocessor_index =
dataProcessor[0]->GetDataStreamEnable() ? 0 : 1;
masterFileName =
dataProcessor[dataprocessor_index]->CreateMasterFile(
filePath, fileName, fileIndex, overwriteEnable, silentMode,
fileFormatType, &masterAttributes, &hdf5LibMutex);
}
#ifdef HDF5C
// create virtual and master file