Merge branch 'dev/issue_dont_reorder_digital_data' of github.com:slsdetectorgroup/slsDetectorPackage into dev/issue_dont_reorder_digital_data

This commit is contained in:
2025-03-19 08:24:33 +01:00
23 changed files with 289 additions and 16 deletions

View File

@@ -3,7 +3,7 @@
/************************************************
* @file DataProcessor.cpp
* @short creates data processor thread that
* pulls pointers to memory addresses from fifos
* pulls pointers to memory addresses from fifos
* and processes data stored in them & writes them to file
***********************************************/
@@ -118,10 +118,10 @@ void DataProcessor::SetCtbDbitList(std::vector<int> value) {
ctbDbitList = value;
}
void DataProcessor::SetReorder(const bool value) { reorder = value; }
void DataProcessor::SetCtbDbitOffset(int value) { ctbDbitOffset = value; }
void DataProcessor::SetCtbDbitReorder(bool value) { ctbDbitReorder = value; }
void DataProcessor::SetQuadEnable(bool value) { quadEnable = value; }
void DataProcessor::SetFlipRows(bool fd) {
@@ -404,7 +404,7 @@ void DataProcessor::ProcessAnImage(sls_receiver_header &header, size_t &size,
// rearrange ctb digital bits
if (!ctbDbitList.empty()) {
ArrangeDbitData(size, data);
} else if (reorder) {
} else if (ctbDbitReorder) {
Reorder(size, data);
} else if (ctbDbitOffset > 0) {
RemoveTrailingBits(size, data);
@@ -708,7 +708,7 @@ void DataProcessor::ArrangeDbitData(size_t &size, char *data) {
0; // number of bytes for selected digital data given by dtbDbitList
// store each selected bit from all samples consecutively
if (reorder) {
if (ctbDbitReorder) {
size_t numBitsPerDbit =
numDigitalSamples; // num bits per selected digital
// Bit for all samples
@@ -728,7 +728,7 @@ void DataProcessor::ArrangeDbitData(size_t &size, char *data) {
std::vector<uint8_t> result(totalNumBytes, 0);
uint8_t *dest = &result[0];
if (reorder) {
if (ctbDbitReorder) {
// loop through digital bit enable vector
int bitoffset = 0;
for (auto bi : ctbDbitList) {