mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2026-02-10 10:48:40 +01:00
readoutspeed in rx master file and other master file inconsistencies (#1245)
readout speed added to json and h5 master files. Also fixed master file inconsistencies Sserver binaries - update server binaries because readoutspeed needs to be sent to receiver with rx_hostname command API - added const to Detector class set/getburstmode Python - updated python bindings (burstmode const and roi arguments) Cmd generation - added pragma once in Caller.in.h as Caller is included in test files m3: num channels due to #counters < 3 * workaround for m3 for messed up num channels (client always assumes all counters enabled and adds them to num channels), fix for hdf5 g2: exptime master file inconsistency - exptime didnt match because of round of when setting burst mode (sets to a different clk divider) - so updating actual time for all timers (exptime, period, subexptime etc, ) in Module class, get timer values from detector when setting it and then send to receiver to write in master file ctb image size incorrect: - write actual size into master file and not the reserved size (digital reduces depending on dbit list and dbit offset) - added a calculate ctb image size free function in generalData.h that is used there as well as for the tests. master file inconsistencies - refactored master attributes writing using templates - names changed to keep it consistent between json and hdf5 master file (Version, Pixels, Exposure Times, GateDelays, Acquisition Period, etc.) - datatypes changed to keep it simple where possible: imageSize, dynamicRange, tengiga, quad, readnrows, analog, analogsamples, digital, digitalsamples, dbitreorder, dbitoffset, transceivermask, transeiver, transceiversamples, countermask, gates =>int - replacing "toString" with arrays, objects etc for eg for scan, rois, etc. - json header always written (empty dataset or empty brackets) - hdf5 needs const char* so have to convert strings to it, but taking care that strings exist prior to push_back - master attributes (redundant string literals->error prone tests for master file - suppressed deprecated functions in rapidjson warnings just for the tests - added slsREceiverSoftware/src to allow access to receiver_defs.h to test binary/hdf5 version - refactored acquire tests by moving all the acquire tests from individual detector type files to a single one=test-Caller-acquire.cpp - set some default settings (loadBasicSettings) for a basic acquire at load config part for the test_simulator python scripts. so minimum number of settings for detector to be set for any acquire tests. - added tests to test master files for json and hdf5= test-Caller-master-attributes.cpp - added option to add '-m' markers for tests using test_simulator python script
This commit is contained in:
@@ -126,6 +126,9 @@ class slsDetectorDefs {
|
||||
int y{0};
|
||||
xy() = default;
|
||||
xy(int x, int y) : x(x), y(y){};
|
||||
constexpr bool operator==(const xy &other) const {
|
||||
return ((x == other.x) && (y == other.y));
|
||||
}
|
||||
} __attribute__((packed));
|
||||
#endif
|
||||
|
||||
@@ -548,7 +551,7 @@ enum streamingInterface {
|
||||
stepSize(step) {
|
||||
dacSettleTime_ns = t.count();
|
||||
}
|
||||
bool operator==(const scanParameters &other) const {
|
||||
constexpr bool operator==(const scanParameters &other) const {
|
||||
return ((enable == other.enable) && (dacInd == other.dacInd) &&
|
||||
(startOffset == other.startOffset) &&
|
||||
(stopOffset == other.stopOffset) &&
|
||||
@@ -663,6 +666,7 @@ enum streamingInterface {
|
||||
scanParameters scanParams{};
|
||||
int transceiverSamples{0};
|
||||
uint32_t transceiverMask{0};
|
||||
speedLevel readoutSpeed{FULL_SPEED};
|
||||
} __attribute__((packed));
|
||||
#endif
|
||||
|
||||
|
||||
@@ -413,6 +413,7 @@ enum detFuncs {
|
||||
F_GET_RECEIVER_DBIT_REORDER,
|
||||
F_SET_RECEIVER_DBIT_REORDER,
|
||||
F_RECEIVER_GET_ROI_METADATA,
|
||||
F_SET_RECEIVER_READOUT_SPEED,
|
||||
|
||||
NUM_REC_FUNCTIONS
|
||||
};
|
||||
@@ -822,6 +823,7 @@ const char* getFunctionNameFromEnum(enum detFuncs func) {
|
||||
case F_GET_RECEIVER_DBIT_REORDER: return "F_GET_RECEIVER_DBIT_REORDER";
|
||||
case F_SET_RECEIVER_DBIT_REORDER: return "F_SET_RECEIVER_DBIT_REORDER";
|
||||
case F_RECEIVER_GET_ROI_METADATA: return "F_RECEIVER_GET_ROI_METADATA";
|
||||
case F_SET_RECEIVER_READOUT_SPEED: return "F_SET_RECEIVER_READOUT_SPEED";
|
||||
|
||||
case NUM_REC_FUNCTIONS: return "NUM_REC_FUNCTIONS";
|
||||
default: return "Unknown Function";
|
||||
|
||||
@@ -3,10 +3,10 @@
|
||||
/** API versions */
|
||||
#define APILIB "0.0.0 0x250523"
|
||||
#define APIRECEIVER "0.0.0 0x250523"
|
||||
#define APICTB "0.0.0 0x250523"
|
||||
#define APIGOTTHARD2 "0.0.0 0x250523"
|
||||
#define APIMOENCH "0.0.0 0x250523"
|
||||
#define APIEIGER "0.0.0 0x250523"
|
||||
#define APIXILINXCTB "0.0.0 0x250523"
|
||||
#define APIJUNGFRAU "0.0.0 0x250523"
|
||||
#define APIMYTHEN3 "0.0.0 0x250523"
|
||||
#define APICTB "0.0.0 0x250714"
|
||||
#define APIGOTTHARD2 "0.0.0 0x250714"
|
||||
#define APIMOENCH "0.0.0 0x250714"
|
||||
#define APIEIGER "0.0.0 0x250714"
|
||||
#define APIXILINXCTB "0.0.0 0x250714"
|
||||
#define APIJUNGFRAU "0.0.0 0x250714"
|
||||
#define APIMYTHEN3 "0.0.0 0x250714"
|
||||
|
||||
Reference in New Issue
Block a user