From 224c8d9f8d0cc461f62488c20dd5868da988336f Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Thu, 20 May 2021 14:51:37 +0200 Subject: [PATCH 01/23] m3 server: setting counter mask, set vth[i] for counter[i] and its M_VTH1, not VTH1 --- .../slsDetectorFunctionList.c | 40 ++++++++++--------- .../include/slsDetectorFunctionList.h | 6 +-- 2 files changed, 23 insertions(+), 23 deletions(-) diff --git a/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c b/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c index 7e0c737b1..c3efc3261 100644 --- a/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c +++ b/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c @@ -5,8 +5,8 @@ #include "RegisterDefs.h" #include "clogger.h" #include "common.h" -#include "mythen3.h" #include "loadPattern.h" +#include "mythen3.h" #include "sharedMemory.h" #include "sls/versionAPI.h" #ifdef VIRTUAL @@ -21,7 +21,6 @@ #include #endif - // Global variable from slsDetectorServer_funcs extern int debugflag; extern int updateFlag; @@ -47,7 +46,7 @@ enum detectorSettings thisSettings; sls_detector_module *detectorModules = NULL; int *detectorChans = NULL; int *detectorDacs = NULL; -int *channelMask=NULL; +int *channelMask = NULL; int32_t clkPhase[NUM_CLOCKS] = {}; uint32_t clkDivider[NUM_CLOCKS] = {}; @@ -379,7 +378,6 @@ void allocateDetectorStructureMemory() { memset(channelMask, 0, NCHIP * NCHAN * sizeof(char)); detectorDacs = malloc(NDAC * sizeof(int)); - LOG(logDEBUG1, ("modules from 0x%x to 0x%x\n", detectorModules, detectorModules)); LOG(logDEBUG1, ("chans from 0x%x to 0x%x\n", detectorChans, detectorChans)); @@ -519,7 +517,7 @@ void setupDetector() { powerChip(1); if (!initError) { - setChipStatusRegister(CSR_default); + setChipStatusRegister(CSR_default); } setAllTrimbits(DEFAULT_TRIMBIT_VALUE); @@ -938,8 +936,9 @@ void setCounterMask(uint32_t arg) { for (int i = 0; i < NCOUNTERS; ++i) { // if change in enable if ((arg & (1 << i)) ^ (oldmask & (1 << i))) { - // will disable if counter disabled - setDAC(VTH1, vthEnabledVals[i], 0); + // will disable if counter disabled, else set corresponding vth dac + enum DACINDEX vth = (i == 0 ? M_VTH1 : (i == 1 ? M_VTH2 : M_VTH3)); + setDAC(vth, vthEnabledVals[i], 0); } } } @@ -1057,7 +1056,7 @@ int64_t getMeasurementTime() { /* parameters - module, speed, readout */ -int setDACS(int* dacs){ +int setDACS(int *dacs) { for (int i = 0; i < NDAC; ++i) { if (dacs[i] != -1) { setDAC((enum DACINDEX)i, dacs[i], 0); @@ -1074,17 +1073,16 @@ int setDACS(int* dacs){ return OK; } - int setModule(sls_detector_module myMod, char *mess) { LOG(logINFO, ("Setting module\n")); - if (setChipStatusRegister(myMod.reg)){ + if (setChipStatusRegister(myMod.reg)) { sprintf(mess, "Could not CSR from module\n"); LOG(logERROR, (mess)); return FAIL; } - if (setDACS(myMod.dacs)){ + if (setDACS(myMod.dacs)) { sprintf(mess, "Could not set dacs\n"); LOG(logERROR, (mess)); return FAIL; @@ -1093,7 +1091,7 @@ int setModule(sls_detector_module myMod, char *mess) { for (int i = 0; i < NCOUNTERS; ++i) { if (myMod.eV[i] >= 0) { setThresholdEnergy(i, myMod.eV[i]); - }else{ + } else { setThresholdEnergy(i, -1); } } @@ -1267,6 +1265,12 @@ void setDAC(enum DACINDEX ind, int val, int mV) { return; } + // out of scope, NDAC + 1 for vthreshold + if ((int)ind > NDAC + 1) { + LOG(logERROR, ("Unknown dac index %d\n", ind)); + return; + } + if (ind == M_VTHRESHOLD) { LOG(logINFO, ("Setting Threshold voltages to %d %s\n", val, (mV ? "mv" : ""))); @@ -1373,13 +1377,11 @@ int setHighVoltage(int val) { return highvoltage; } -int isMaster(){ - return !(bus_r(0x18) >> 31); -} +int isMaster() { return !(bus_r(0x18) >> 31); } /* parameters - timing */ void setTiming(enum timingMode arg) { - + if (!isMaster() && arg == AUTO_TIMING) arg = TRIGGER_EXPOSURE; @@ -2663,7 +2665,7 @@ int setChipStatusRegister(int csr) { return OK; } -int setGainCaps(int caps){ +int setGainCaps(int caps) { // Update only gain caps, leave the rest of the CSR unchanged int csr = getChipStatusRegister(); csr &= ~GAIN_MASK; @@ -2674,8 +2676,8 @@ int setGainCaps(int caps){ return setChipStatusRegister(csr); } -int getGainCaps(){ +int getGainCaps() { int csr = getChipStatusRegister(); int caps = csrToGainCaps(csr); - return caps; + return caps; } diff --git a/slsDetectorServers/slsDetectorServer/include/slsDetectorFunctionList.h b/slsDetectorServers/slsDetectorServer/include/slsDetectorFunctionList.h index 65b5d7fb1..1f18cd371 100644 --- a/slsDetectorServers/slsDetectorServer/include/slsDetectorFunctionList.h +++ b/slsDetectorServers/slsDetectorServer/include/slsDetectorFunctionList.h @@ -25,7 +25,7 @@ #include "blackfin.h" #endif -#if defined(MYTHEN3D) +#if defined(MYTHEN3D) #include "mythen3.h" #endif @@ -289,8 +289,6 @@ int64_t getMeasurementTime(); int setModule(sls_detector_module myMod, char *mess); #endif #ifdef MYTHEN3D -int setBit(int ibit, int patword); -int clearBit(int ibit, int patword); int setTrimbits(int *trimbits); int setAllTrimbits(int val); int getAllTrimbits(); @@ -360,7 +358,7 @@ int isMaster(); int setGainCaps(int caps); int getGainCaps(); int setChipStatusRegister(int csr); -int setDACS(int* dacs); +int setDACS(int *dacs); #endif #if defined(GOTTHARDD) || defined(MYTHEN3D) void setExtSignal(int signalIndex, enum externalSignalFlag mode); From a6a2a91fea3b7309f7755a712d60dd3f46f5d289 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Thu, 20 May 2021 16:46:10 +0200 Subject: [PATCH 02/23] m3 server: refactor --- .../mythen3DetectorServer/slsDetectorFunctionList.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c b/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c index c3efc3261..36d820ebb 100644 --- a/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c +++ b/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c @@ -937,8 +937,8 @@ void setCounterMask(uint32_t arg) { // if change in enable if ((arg & (1 << i)) ^ (oldmask & (1 << i))) { // will disable if counter disabled, else set corresponding vth dac - enum DACINDEX vth = (i == 0 ? M_VTH1 : (i == 1 ? M_VTH2 : M_VTH3)); - setDAC(vth, vthEnabledVals[i], 0); + enum DACINDEX ind[] = {M_VTH1, M_VTH2, M_VTH3}; + setDAC(ind[i], vthEnabledVals[i], 0); } } } From 45e7187e7ccd949d021c0fb6cc98e09cfbf3e4fe Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Tue, 25 May 2021 11:25:27 +0200 Subject: [PATCH 03/23] binaries in --- .../bin/mythen3DetectorServer_developer | Bin 244716 -> 242144 bytes slsSupportLib/include/sls/versionAPI.h | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer b/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer index 85cab48bdb961ba8a0fe2f700efc5698824d4256..3cd0150e5551721232ca60a44ed8cce38607831f 100755 GIT binary patch literal 242144 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 literal 244716 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 diff --git a/slsSupportLib/include/sls/versionAPI.h b/slsSupportLib/include/sls/versionAPI.h index 971adc349..d820c3ce8 100644 --- a/slsSupportLib/include/sls/versionAPI.h +++ b/slsSupportLib/include/sls/versionAPI.h @@ -6,7 +6,7 @@ #define APIJUNGFRAU 0x210225 #define APIMOENCH 0x210225 #define APIEIGER 0x210225 -#define APIMYTHEN3 0x210225 #define APILIB 0x210225 #define APIRECEIVER 0x210225 #define APIGUI 0x210225 +#define APIMYTHEN3 0x210525 From 9ac836c2f424e34601cb3ac4153f413fe846555a Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Tue, 25 May 2021 15:03:05 +0200 Subject: [PATCH 04/23] setting vthreshold exception message fix when not all counters enabled, appropriate message --- .../src/slsDetectorServer_funcs.c | 47 ++++++++++++------- 1 file changed, 31 insertions(+), 16 deletions(-) diff --git a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c index 362c450d0..cd72dba3c 100644 --- a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c +++ b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c @@ -642,9 +642,9 @@ int set_timing_mode(int file_des) { } // get retval = getTiming(); - #ifndef MYTHEN3D +#ifndef MYTHEN3D validate((int)arg, (int)retval, "set timing mode", DEC); - #endif +#endif LOG(logDEBUG1, ("Timing Mode: %d\n", retval)); return Server_SendResult(file_des, INT32, &retval, sizeof(retval)); @@ -1213,6 +1213,19 @@ int validateAndSetDac(enum dacIndex ind, int val, int mV) { setDAC(serverDacIndex, val, mV); retval = getDAC(serverDacIndex, mV); } +#ifdef MYTHEN3D + if (serverDacIndex == M_VTHRESHOLD && retval == -1) { + ret = FAIL; + uint32_t counter_retval = getCounterMask(); + if (counter_retval != MAX_COUNTER_MSK) { + strcpy(mess, "Could not set all threshold dacs as not all " + "counters enabled\n"); + } else { + sprintf(mess, "Could not set all threshold dacs\n"); + } + LOG(logERROR, (mess)); + } +#endif #ifdef EIGERD if (val != GET_FLAG && getSettings() != UNDEFINED) { // changing dac changes settings to undefined @@ -1552,7 +1565,7 @@ int set_module(int file_des) { // check index #if !(defined(EIGERD) || defined(MYTHEN3D)) -//TODO! Check if this is used for any detector + // TODO! Check if this is used for any detector switch (module.reg) { #ifdef JUNGFRAUD case DYNAMICGAIN: @@ -7576,21 +7589,23 @@ int set_pattern(int file_des) { patternParameters *pat = malloc(sizeof(patternParameters)); memset(pat, 0, sizeof(patternParameters)); - // ignoring endianness for eiger + // ignoring endianness for eiger if (receiveData(file_des, pat, sizeof(patternParameters), INT32) < 0) { if (pat != NULL) free(pat); return printSocketReadError(); } - + if (Server_VerifyLock() == OK) { LOG(logINFO, ("Setting Pattern from structure\n")); LOG(logINFO, - ("Setting Pattern Word (printing every 10 words that are not 0\n")); - /****************************************************************************************************************/ - /* I SUGGEST TO VALIDATE THE VALUES HERE AND THEN WRITE THE PATTERN IN A SEPARATE FUNCTION WHICH COULD BE REUSED*/ - /* added loadPattern.c/h - the same func could be reused also in readDefaultPattern */ - /***************************************************************************************************************/ + ("Setting Pattern Word (printing every 10 words that are not 0\n")); + /****************************************************************************************************************/ + /* I SUGGEST TO VALIDATE THE VALUES HERE AND THEN WRITE THE PATTERN IN A + * SEPARATE FUNCTION WHICH COULD BE REUSED*/ + /* added loadPattern.c/h - the same func could be reused also in + * readDefaultPattern */ + /***************************************************************************************************************/ for (int i = 0; i < MAX_PATTERN_LENGTH; ++i) { if ((i % 10 == 0) && pat->word[i] != 0) { @@ -7664,7 +7679,7 @@ int set_pattern(int file_des) { } } } - /******* DOWN TO HERE ***********/ + /******* DOWN TO HERE ***********/ } if (pat != NULL) free(pat); @@ -8372,7 +8387,7 @@ int get_all_threshold_energy(int file_des) { return Server_SendResult(file_des, INT32, retvals, sizeof(retvals)); } -int get_master(int file_des){ +int get_master(int file_des) { ret = OK; memset(mess, 0, sizeof(mess)); int retval = -1; @@ -8387,7 +8402,7 @@ int get_master(int file_des){ return Server_SendResult(file_des, INT32, &retval, sizeof(retval)); } -int get_csr(int file_des){ +int get_csr(int file_des) { ret = OK; memset(mess, 0, sizeof(mess)); int retval = -1; @@ -8402,7 +8417,7 @@ int get_csr(int file_des){ return Server_SendResult(file_des, INT32, &retval, sizeof(retval)); } -int set_gain_caps(int file_des){ +int set_gain_caps(int file_des) { ret = OK; memset(mess, 0, sizeof(mess)); int arg = 0; @@ -8418,14 +8433,14 @@ int set_gain_caps(int file_des){ #else if (Server_VerifyLock() == OK) { setGainCaps(arg); - retval = getChipStatusRegister(); //TODO! fix + retval = getChipStatusRegister(); // TODO! fix LOG(logDEBUG1, ("gain caps retval: %u\n", retval)); } #endif return Server_SendResult(file_des, INT32, &retval, sizeof(retval)); } -int get_gain_caps(int file_des){ +int get_gain_caps(int file_des) { ret = OK; memset(mess, 0, sizeof(mess)); // int arg = 0; From bd8f51fb1a0fcadb14017a7ab5897473dad4737b Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Tue, 25 May 2021 15:04:02 +0200 Subject: [PATCH 05/23] binaries in --- .../bin/mythen3DetectorServer_developer | Bin 242144 -> 246240 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer b/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer index 3cd0150e5551721232ca60a44ed8cce38607831f..b123f5607d5d12009ea2e2cac8b7af34f48fa7af 100755 GIT binary patch delta 55464 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 WoHW|S5&0cO$~!!1KpW9d^zwfh_IWY@ delta 54865 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 Date: Tue, 25 May 2021 15:09:28 +0200 Subject: [PATCH 06/23] produced new mythen3 trimfiles with the gaincap for 4000,6000,8000,12000eV all trimbits to 0 --- examples/moench03_T1.config | 8 +-- settingsdir/mythen3/fast/11200eV/trim.sn0000 | Bin 15424 -> 0 bytes settingsdir/mythen3/fast/11200eV/trim.snxxxx | Bin 15424 -> 0 bytes settingsdir/mythen3/fast/4500eV/trim.sn0000 | Bin 15424 -> 0 bytes settingsdir/mythen3/fast/4500eV/trim.snxxxx | Bin 15424 -> 0 bytes settingsdir/mythen3/fast/5400eV/trim.sn0000 | Bin 15424 -> 0 bytes settingsdir/mythen3/fast/5400eV/trim.snxxxx | Bin 15424 -> 0 bytes settingsdir/mythen3/fast/6400eV/trim.sn0000 | Bin 15424 -> 0 bytes settingsdir/mythen3/fast/6400eV/trim.snxxxx | Bin 15424 -> 0 bytes settingsdir/mythen3/fast/8000eV/trim.sn0000 | Bin 15424 -> 0 bytes settingsdir/mythen3/fast/8000eV/trim.snxxxx | Bin 15424 -> 15428 bytes settingsdir/mythen3/fast/9900eV/trim.sn0000 | Bin 15424 -> 0 bytes settingsdir/mythen3/fast/9900eV/trim.snxxxx | Bin 15424 -> 0 bytes .../mythen3/highgain/11200eV/trim.sn0000 | Bin 15424 -> 0 bytes .../mythen3/highgain/11200eV/trim.snxxxx | Bin 15424 -> 0 bytes .../mythen3/highgain/4500eV/trim.sn0000 | Bin 15424 -> 0 bytes .../mythen3/highgain/4500eV/trim.snxxxx | Bin 15424 -> 0 bytes .../mythen3/highgain/5400eV/trim.sn0000 | Bin 15424 -> 0 bytes .../mythen3/highgain/5400eV/trim.snxxxx | Bin 15424 -> 0 bytes .../mythen3/highgain/6400eV/trim.sn0000 | Bin 15424 -> 0 bytes .../mythen3/highgain/6400eV/trim.snxxxx | Bin 15424 -> 0 bytes .../mythen3/highgain/8000eV/trim.sn0000 | Bin 15424 -> 0 bytes .../mythen3/highgain/8000eV/trim.snxxxx | Bin 15424 -> 15428 bytes .../mythen3/highgain/9900eV/trim.sn0000 | Bin 15424 -> 0 bytes .../mythen3/highgain/9900eV/trim.snxxxx | Bin 15424 -> 0 bytes .../mythen3/standard/11200eV/trim.sn0000 | Bin 15424 -> 0 bytes .../mythen3/standard/11200eV/trim.snxxxx | Bin 15424 -> 0 bytes .../mythen3/standard/4500eV/trim.sn0000 | Bin 15424 -> 0 bytes .../mythen3/standard/4500eV/trim.snxxxx | Bin 15424 -> 0 bytes .../mythen3/standard/5400eV/trim.sn0000 | Bin 15424 -> 0 bytes .../mythen3/standard/5400eV/trim.snxxxx | Bin 15424 -> 0 bytes .../mythen3/standard/6400eV/trim.sn0000 | Bin 15424 -> 0 bytes .../mythen3/standard/6400eV/trim.snxxxx | Bin 15424 -> 0 bytes .../mythen3/standard/8000eV/trim.sn0000 | Bin 15424 -> 0 bytes .../mythen3/standard/8000eV/trim.snxxxx | Bin 15424 -> 15428 bytes .../mythen3/standard/9900eV/trim.sn0000 | Bin 15424 -> 0 bytes .../mythen3/standard/9900eV/trim.snxxxx | Bin 15424 -> 0 bytes .../interpolations/slsInterpolation.h | 51 ++++++++---------- 38 files changed, 28 insertions(+), 31 deletions(-) delete mode 100644 settingsdir/mythen3/fast/11200eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/fast/11200eV/trim.snxxxx delete mode 100644 settingsdir/mythen3/fast/4500eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/fast/4500eV/trim.snxxxx delete mode 100644 settingsdir/mythen3/fast/5400eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/fast/5400eV/trim.snxxxx delete mode 100644 settingsdir/mythen3/fast/6400eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/fast/6400eV/trim.snxxxx delete mode 100644 settingsdir/mythen3/fast/8000eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/fast/9900eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/fast/9900eV/trim.snxxxx delete mode 100644 settingsdir/mythen3/highgain/11200eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/highgain/11200eV/trim.snxxxx delete mode 100644 settingsdir/mythen3/highgain/4500eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/highgain/4500eV/trim.snxxxx delete mode 100644 settingsdir/mythen3/highgain/5400eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/highgain/5400eV/trim.snxxxx delete mode 100644 settingsdir/mythen3/highgain/6400eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/highgain/6400eV/trim.snxxxx delete mode 100644 settingsdir/mythen3/highgain/8000eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/highgain/9900eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/highgain/9900eV/trim.snxxxx delete mode 100644 settingsdir/mythen3/standard/11200eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/standard/11200eV/trim.snxxxx delete mode 100644 settingsdir/mythen3/standard/4500eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/standard/4500eV/trim.snxxxx delete mode 100644 settingsdir/mythen3/standard/5400eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/standard/5400eV/trim.snxxxx delete mode 100644 settingsdir/mythen3/standard/6400eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/standard/6400eV/trim.snxxxx delete mode 100644 settingsdir/mythen3/standard/8000eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/standard/9900eV/trim.sn0000 delete mode 100644 settingsdir/mythen3/standard/9900eV/trim.snxxxx diff --git a/examples/moench03_T1.config b/examples/moench03_T1.config index a67fca6ce..e51643b29 100644 --- a/examples/moench03_T1.config +++ b/examples/moench03_T1.config @@ -1,7 +1,8 @@ -initialchecks 0 +#initialchecks 0 ############################################# ### edit with hostname or IP address of your detector ############################################ +#hostname bchip181+ hostname bchip181+ ############################################# @@ -27,7 +28,7 @@ rx_zmqport 50003 ############################################# ### edit with 1 Gbs IP of PC where you will run the GUI ############################################ -zmqip 129.129.202.136 +zmqip 129.129.202.98 zmqport 50001 @@ -39,11 +40,12 @@ rx_zmqstream 1 frames 100000 period 0.0006 +exptime 0.00035 ############################################# ### edit with directory you want to write to ############################################ -fpath /mnt/moench_data/scratch/ +fpath /mnt/moench_data/scratch1/ fwrite 0 diff --git a/settingsdir/mythen3/fast/11200eV/trim.sn0000 b/settingsdir/mythen3/fast/11200eV/trim.sn0000 deleted file mode 100644 index e82819eba70c72fc9a78c6678c05cb3e1ad0b93a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15424 zcma*rYm(GO5CrfEP=Q5Zc?hDSf1mgkmSx#RP!8aIypSLLz#%-4M=&ce$6pY11RGIN zJw4skSy@@#125j%?fyB~?QXvP(*OP6=RflKuXlF4ix*yg_j~4_XWh)bi2Zqfx7%V5 zcK_S`jBDRzT>CWR+E*FZZe?71KjYd_#pi{}X2H zpEF-O%eZzY<63cz@A>1++xV@?c-Iu~c<03ouUB(`(S*(A1~)(s|LqE!A>%+72|lz@#ZD}>SW8hnmF69j`@gJ*q{^|dcD zu6fVM;g&Tu>!@ZL?^WN}Uw)zJvf%1 zzP;nsN#B9-Vp9)lz+N-Hc*MUYZq4|f+q-AHdUm}Wnv4BtOygL))@rF}@l$zS@&>wdYw|a;sg)xTfCv{doB_&h30x z6X%1>*VMVSSZP=eU1OY{IbO`pznkxBz9Yu5$FqF@XOA3Ywq}2+$t`PYVvrL#H2$im zTyLC}4&MugnmFZ9%@{}h$cedFm+ED_^S+g8*nGt!26Zc*_WF45DDMh;)*fHgTAb$F z8jd$Fc~JlA*?Bc-?Hs#T44&os6+fPJFSu*oGuB<*sxfOJZ;q{<$5v5t?Sj^QF5t?t#jk;*;O3Z$kj??;iH8c$m*MaoTsDYmMwLb8-Di;@8A^J@d7mKYqiE-#2``|0iP|FXy|Ob+<;|b?$Zj zD!%WmJlx2+HMMQNzQt{-^udE@kV@p$Vc&tkK8tkG%q*Q}R)EpPUS zF~#g}47oLqYsBN7@BLt2t9Qiv&9O1%Ts+=~o@>8|Q;qqK*w@ypcgA@8TAtOp`8qEK zHR(O(xz@#8jBhT+@hmZ`bKh}mtv2i_Id`n~#AbYZ#~iJfe0m3ZmN?yOOvm2I_LSJ< z%^s0M*Q+=4wMJ@5e%vb_b2KmYV=mqs&b!z7E!wTwzZWxKGhg!(vpB^s=hn_O#y2l} z+`K&3y~g)k^HOiFckH?5D`tDa@oLS}@L4P03)SGvLb-bVbHG4!|sbO(G%-)*4 zJeX>7xQcJSzH6T4*fr|VI=V)FoL49EV;nUje$VyYF&E>neuK%a*wl}|8Pt;ZhP|_z zZ%xLl6KgHczKPB|Hjck<)q{K*)3NWe>#d7?8sEH*lUq$bJ#d{bT2nEbqw9^YCS9WrQg+fHy5=hX4j}^b!Ax+}UG;_iZcK5m_!Q3yv+>oB8k0lU z+ZXD=b64x-U!6N|zTWw2$@t=TY#eK0j?TMY?TNv9IhJQ@Bxd>XTzU4aN9nzq@#WmT z;`g_Ncb#kO3wu^wS!?6C=2>voj4wa^oig6DjcC?i;V()Tj7eFK?H#zh?g$$M;(N zYEK^gEg`qQ7h-6w#(S20nv0w~%buEdkvN? z8n~YPYrgy9Z+*tQS6%tu$zk8{@nSp6=bD_DyV_pyBe%ZSo@I^1tUlF%JlLmdTRiUd zu6Evf$&Y->gZ%#*u4*S4*Nneqz9xS0n7cjY8nIbB>*C!a|LWg)V;V<1*23ELo*r-f zYG=G$xkmkD+5XS@ayi~R#JU?(-n>ujP5F1PyxqxpHT7vs-zK?Q@hLX-DK_r`ITvT| zgYoLtv6^x0nl1ZlhZ)zr)2i$7=59^pM-IhrP3u!$5cV0f_&HK67$6I%M;a0w@*~|8(HR|vB@#1-!&$ZRN>0UYXeiMTn zuJ9E5c-PCP{Urw18{fRtgY}Yg`_Y){%03mtNpRPyk@50lFI>rYH8F@^oW?XSYbsaj zM9k{S`0`_a*$eXE`sO{}d9nE}^xrY#t*My3Gv&vau5oN#uH}rHanz@IsR7r^iD%i@ j&ifXd*X`h`c^9cS$Kr9lcY^r0#ILPtA&2f&tJdXT!}bL- diff --git a/settingsdir/mythen3/fast/11200eV/trim.snxxxx b/settingsdir/mythen3/fast/11200eV/trim.snxxxx deleted file mode 100644 index e82819eba70c72fc9a78c6678c05cb3e1ad0b93a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15424 zcma*rYm(GO5CrfEP=Q5Zc?hDSf1mgkmSx#RP!8aIypSLLz#%-4M=&ce$6pY11RGIN zJw4skSy@@#125j%?fyB~?QXvP(*OP6=RflKuXlF4ix*yg_j~4_XWh)bi2Zqfx7%V5 zcK_S`jBDRzT>CWR+E*FZZe?71KjYd_#pi{}X2H zpEF-O%eZzY<63cz@A>1++xV@?c-Iu~c<03ouUB(`(S*(A1~)(s|LqE!A>%+72|lz@#ZD}>SW8hnmF69j`@gJ*q{^|dcD zu6fVM;g&Tu>!@ZL?^WN}Uw)zJvf%1 zzP;nsN#B9-Vp9)lz+N-Hc*MUYZq4|f+q-AHdUm}Wnv4BtOygL))@rF}@l$zS@&>wdYw|a;sg)xTfCv{doB_&h30x z6X%1>*VMVSSZP=eU1OY{IbO`pznkxBz9Yu5$FqF@XOA3Ywq}2+$t`PYVvrL#H2$im zTyLC}4&MugnmFZ9%@{}h$cedFm+ED_^S+g8*nGt!26Zc*_WF45DDMh;)*fHgTAb$F z8jd$Fc~JlA*?Bc-?Hs#T44&os6+fPJFSu*oGuB<*sxfOJZ;q{<$5v5t?Sj^QF5t?t#jk;*;O3Z$kj??;iH8c$m*MaoTsDYmMwLb8-Di;@8A^J@d7mKYqiE-#2``|0iP|FXy|Ob+<;|b?$Zj zD!%WmJlx2+HMMQNzQt{-^udE@kV@p$Vc&tkK8tkG%q*Q}R)EpPUS zF~#g}47oLqYsBN7@BLt2t9Qiv&9O1%Ts+=~o@>8|Q;qqK*w@ypcgA@8TAtOp`8qEK zHR(O(xz@#8jBhT+@hmZ`bKh}mtv2i_Id`n~#AbYZ#~iJfe0m3ZmN?yOOvm2I_LSJ< z%^s0M*Q+=4wMJ@5e%vb_b2KmYV=mqs&b!z7E!wTwzZWxKGhg!(vpB^s=hn_O#y2l} z+`K&3y~g)k^HOiFckH?5D`tDa@oLS}@L4P03)SGvLb-bVbHG4!|sbO(G%-)*4 zJeX>7xQcJSzH6T4*fr|VI=V)FoL49EV;nUje$VyYF&E>neuK%a*wl}|8Pt;ZhP|_z zZ%xLl6KgHczKPB|Hjck<)q{K*)3NWe>#d7?8sEH*lUq$bJ#d{bT2nEbqw9^YCS9WrQg+fHy5=hX4j}^b!Ax+}UG;_iZcK5m_!Q3yv+>oB8k0lU z+ZXD=b64x-U!6N|zTWw2$@t=TY#eK0j?TMY?TNv9IhJQ@Bxd>XTzU4aN9nzq@#WmT z;`g_Ncb#kO3wu^wS!?6C=2>voj4wa^oig6DjcC?i;V()Tj7eFK?H#zh?g$$M;(N zYEK^gEg`qQ7h-6w#(S20nv0w~%buEdkvN? z8n~YPYrgy9Z+*tQS6%tu$zk8{@nSp6=bD_DyV_pyBe%ZSo@I^1tUlF%JlLmdTRiUd zu6Evf$&Y->gZ%#*u4*S4*Nneqz9xS0n7cjY8nIbB>*C!a|LWg)V;V<1*23ELo*r-f zYG=G$xkmkD+5XS@ayi~R#JU?(-n>ujP5F1PyxqxpHT7vs-zK?Q@hLX-DK_r`ITvT| zgYoLtv6^x0nl1ZlhZ)zr)2i$7=59^pM-IhrP3u!$5cV0f_&HK67$6I%M;a0w@*~|8(HR|vB@#1-!&$ZRN>0UYXeiMTn zuJ9E5c-PCP{Urw18{fRtgY}Yg`_Y){%03mtNpRPyk@50lFI>rYH8F@^oW?XSYbsaj zM9k{S`0`_a*$eXE`sO{}d9nE}^xrY#t*My3Gv&vau5oN#uH}rHanz@IsR7r^iD%i@ j&ifXd*X`h`c^9cS$Kr9lcY^r0#ILPtA&2f&tJdXT!}bL- diff --git a/settingsdir/mythen3/fast/4500eV/trim.sn0000 b/settingsdir/mythen3/fast/4500eV/trim.sn0000 deleted file mode 100644 index 30f6400a244aed7de65cbf8b2bd98b9f0877aebe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15424 zcmeHNS#A_D5N(N70igh4-qTTxv=1W{+D;be_tGi%a<0v{Y3c(>_T?{{6cv=H%yN1AtS;i z_Y^-6+mH#h-$Q{={c98m)vNps1w!>T@_jfHPaqQ-^Cb#|>Q^a0M`Z-_4W1#kDfk_M z^ZkGyh*yw_N015UJL?xcQ2LA>z>RnenJA63%Ko21Znw~2BGdLA7!eu!j1Aw9;F38M%_K9w@tFtjP29g6GWQ_C9dT|B?ucis;7S~i!E31W zdAYi{M+@GYuAu^=cU^P*MGuT%#6okjzjxtAoGe0HubO!vlgUjO5gGg5Hg4W%)ej>Y zK)ANt#t(!$BXEoaUnTL}5L`*;;okfI*f$fJLl1eC^LCH?Gcn)8h*0~?-b~kY^&L?l zRG*PGrrs4~d`oRIZPb{YtAabajvokTqk7)020ty*eGcEPqx`gT`;LkUmxG&^oV|PQ zdhS!-uP6|z|AYde`c^Vy2UpT}MD;3j3LV-~IEZ6sdesjr0+lCS0>|4!aBPt-={?O%+(YrM|<2&0N z?*X^3IBq!|jXS4IC&T5LxHH;vul4wK3VZ4G=*hVia}UftF!w;)9%!{^%j{A0K7W;K zBEMS(&roJ>oVj1k)KzMuckk-k>P+2gJZNsSyu1f$?%ecT@4hMY_(rz8MfJbd^ogt8 z#mt;BwVz%5OdRLCuKLn%3YmT=J;T;~AJKJ<-!y_N>AI%+vnXFd(nPELGw)8Tx-xNk U{4b4LH#cF-Wcs|7jjmqTTxv=1W{+D;be_tGi%a<0v{Y3c(>_T?{{6cv=H%yN1AtS;i z_Y^-6+mH#h-$Q{={c98m)vNps1w!>T@_jfHPaqQ-^Cb#|>Q^a0M`Z-_4W1#kDfk_M z^ZkGyh*yw_N015UJL?xcQ2LA>z>RnenJA63%Ko21Znw~2BGdLA7!eu!j1Aw9;F38M%_K9w@tFtjP29g6GWQ_C9dT|B?ucis;7S~i!E31W zdAYi{M+@GYuAu^=cU^P*MGuT%#6okjzjxtAoGe0HubO!vlgUjO5gGg5Hg4W%)ej>Y zK)ANt#t(!$BXEoaUnTL}5L`*;;okfI*f$fJLl1eC^LCH?Gcn)8h*0~?-b~kY^&L?l zRG*PGrrs4~d`oRIZPb{YtAabajvokTqk7)020ty*eGcEPqx`gT`;LkUmxG&^oV|PQ zdhS!-uP6|z|AYde`c^Vy2UpT}MD;3j3LV-~IEZ6sdesjr0+lCS0>|4!aBPt-={?O%+(YrM|<2&0N z?*X^3IBq!|jXS4IC&T5LxHH;vul4wK3VZ4G=*hVia}UftF!w;)9%!{^%j{A0K7W;K zBEMS(&roJ>oVj1k)KzMuckk-k>P+2gJZNsSyu1f$?%ecT@4hMY_(rz8MfJbd^ogt8 z#mt;BwVz%5OdRLCuKLn%3YmT=J;T;~AJKJ<-!y_N>AI%+vnXFd(nPELGw)8Tx-xNk U{4b4LH#cF-Wcs|7jjmb?k0FZ}0DRk9Ysu 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 literal 15424 zcmZ|STXI!p5Cz~(sf0^N42gn@y1k(Y29l5j0jnH8cvK)Q%UjOy~_rIh6ytyp5cHaN(k9_|*Yz#D__U1{1ChHY3#~j?8;f}O3y}riL9|JN3km($FBSmyYeV@)_A<+SbcnGGB8Mr?&HDd~M@6n{sF^^fwoA+P7Q%?7QqV zoL1z&^&I^IF}^aLI(u@BPsN^>6M6H!slWW&!^Y7^+uv#8lq+M(n>$KQ zd{zwYm(gM{7k7*K8q;U3op|6!VqSf$k?$sZ(prnh{`7aC?-cij9E#Z*wVtEJxso6G*FFo+74x-5zB{bD z=VB1&MdDZVarS%v=oN8(+Y6(gBG%DauOy)(0q-#=E;h6w711v-_f2s7jmMHGuWDpHs5kK z`W&%F_O?8@1Gg|3$9JpuT6eLTi?x0goE5pXpT*{kcrIpt6IvJXSR>En*1DUQ?=0uk zcgohRnd6$=EA9&W(7fc$9Cs6^A|C7O-f;HK(H?VN+_z$|M&{+c;x~?bS_|vtUDm~Z z+v41Q^Il_Wd#~7xF9vgzEBQ2zcRBC+J731PUiPZH+J19JyjOqwO`P_C_Zr`Nxu2a! z^OApK`d+Ya<1{_Pp@JF{|VF7}~wVGp>U#b*4A@LaJ*?ki_UPCPgM76y5?MxJXM=S6T< zx=-ZCnD(Lb>-)}r z@LuD))2zE3dM?i+<@x^aH7)NZ*kv`hyC2#UzE$n&w$M>ultf}$k|7G&6SjR1F z#&kxUUw!0FPQ1(7*$?`^4bF=3<*M)A(Q+l{^5#A_-`+D?ALAV4ZxuNggPd4LZFAQa zzkTanayb8!RL){o>{WM>am-!Y+KI<|*W6XHujJWtIW(p??SWf~U)kb8-nQ_IM;_ey z?rkwxFMk^t$6U(CXnV;S+`7w{awP`$y!|Q9+WPn|Fn6(OKS~Z2`8THA%0vIh8hsxz z$2I5IiSgx1PVAXt9BuCAC^q}we%7}C-9`4B?+!7@v$@EvdE0MW*u*1;Vv{S+yQ@a~ zyG4I@mo=4V_pO-4W?oz8J}W=YubAb;I*QF)^sz?9w@;iY_qIG3N84IBr}n^Jc&`{= ze)_v(w0p*w-en!T??;R6RlZm3Z8^73C^J8Q;q zj^cLp@%%ie75R}j@0F7^&sNOQ+4Re{@QR#D|-y+7h|Fz9m{MOVtdYJeXIkCRR@h;=I(_SZL#e0qEJJ)k-VGsN6 zmIv!)jg0U4n_#P~u`BK_?=?sJ$KOTfZVy}Q&d_K%DVEU(NO6t!S-H~3nUX{Avfu1s zXH(w9<6bqs`FfXo(t3$mK8bXb?f2jKfBygcD4+kjyxV)NMT*Y>imeV+A2 zX8x}dbCG?R{o2o2*S^cT)^o<+TUfan{|$CC>somlUtY(zzVW|ep5^|F#MH{i_#ZJb zSog!k)Y_A`{YQzZ`JFYEr}5Roc>7rX#y`N^mxrD?-hPVz`+Qfsn{`dD#MxTMi`jK^ zj5m+ioEP&Ov*r1kys5*p#MGW-U8~;5s}s-qEZ^0Pv6hp>)YO37`mFtu=Ph|^*79xk zFS6nquMS(^cy%r(_w!v%oU0f)S65r|)UrJPvo7bTXO1_I`t02>-ek8<@>Vrr}W zo~5qD`A+iG)T}(af0+21oZF+~8gGrglg5joeIDQUzUM z$(x+mcX@E%XYGYt8RNS~PR#FY`mB1EfBP$+>gsapt$CI)>dkXK%i52Uv$kbjyODLx zoc(^hIE_)~YRSHc=UQ^rR(FLt?ThhOlc(l~Hll-hFFPdk+&=v!`P4EcM)3AMYLIymVg2`|Os_7nwMnDP!eUZ0i4d z^4HX@vtu5)vR^CCeO3(CD2Mlgr{*1E-_@}Do+TdFYRS9ZURe8;;Hfz;)^1MElB-o; z%;~xIXfGIQhgsLmneFpG`zVLbh%xf!9deS4HRn-M3ybn^SFz*?9Nui~Ja)=Ix6- z%m0&9RTH!CYcX$$uh|zdn5Vys$J;OQs4Jg!|5=`|*+*wn-ujzsyt5{6zT@Q9bNy|p zX5`j;-n#ss&N=mdbM2kK;#|#mu63>Odv7?`a&EuWfM@wGa9-5Ey-<_(&U3}T%5N{s zW4&Tl=iXQLT5Wi)_^bEvo@?#q7lVD2L)U7?TEwZ&<;}G{RjX>x-#_ZXbFF2iH)ns9 z-+o!6+{%MGF{k&2`#x*!-bK#%mGrMB2C-SMoERhL?z@(M=R%z7({s&ZjcV22sW;=* zr+14no+WRtjS<6H_^ipN+7N?xvb|Q@-kI(@M`~C+C&5$mKH0KgGk%rd-dUHNn8$tf zseXF?c=>VP`^U9;)QtE&S3OvZoU1o`h?4>)YOviGI?{~TC80R_FA5uJF&So z&tY)ZR(yJv`Nb@U>dLt`zqMD7a(*u-uS7Z z=3Lv~em~xG)s=m5Er-^q9#-7CFP}cUnhR^OM`~C;)sp9~Fq>cfs4;cujC)6^2e}fb z@$xSZ;)EF@s5`t&yr`)dYor!_EFA#)|}3W zvtW!|$%(btJM$R-GB|7Im!Ffw)XXpc@@C(yx95yktDfsSPR_kUYpAW7LeZEGPEYd9+{l(VX5z&X;(6c6BFs zt{Rg!ajMl<;i}g6=XlRm58@Y({c@(PMQrv?&h4YRwO{Vr3-ic{y)gf?)LAoswKIOh zjB%Zi^FQZHKK;!mZ(@_TEg5U_CjUNbU24g`H{W>mZ10>e`LtiFo|;Gfh_kakUR~KQ z`8i5l&G@OIc93<=nffjJwZ@KD|MFwK-W&GRedkL~#Bc4MB|rA`Ecj~TF{eC~oALHe z4XX#=r}oPl?S(pjnKNqEA`hM`SI&akvvy~B%UQM4tZU*dPvd=W+F#F=L-Bi`h{u^K zmhs|uHs#HjVjpjh%rDQz*e~lkNv@ih<=nc&ASd=qe$?LeoK+Kp__xH=%xS-TR_$54 zbEK~1!Frt|XTkm&Z|(9^?Bm7%DxYii)VWpzo@-9IGX81u*Y>lnnMa)VxBVY4w_bXb?f2jKfBygcD4+kjyxV)NMT*Y>imeV+A2 zX8x}dbCG?R{o2o2*S^cT)^o<+TUfan{|$CC>somlUtY(zzVW|ep5^|F#MH{i_#ZJb zSog!k)Y_A`{YQzZ`JFYEr}5Roc>7rX#y`N^mxrD?-hPVz`+Qfsn{`dD#MxTMi`jK^ zj5m+ioEP&Ov*r1kys5*p#MGW-U8~;5s}s-qEZ^0Pv6hp>)YO37`mFtu=Ph|^*79xk zFS6nquMS(^cy%r(_w!v%oU0f)S65r|)UrJPvo7bTXO1_I`t02>-ek8<@>Vrr}W zo~5qD`A+iG)T}(af0+21oZF+~8gGrglg5joeIDQUzUM z$(x+mcX@E%XYGYt8RNS~PR#FY`mB1EfBP$+>gsapt$CI)>dkXK%i52Uv$kbjyODLx zoc(^hIE_)~YRSHc=UQ^rR(FLt?ThhOlc(l~Hll-hFFPdk+&=v!`P4EcM)3AMYLIymVg2`|Os_7nwMnDP!eUZ0i4d z^4HX@vtu5)vR^CCeO3(CD2Mlgr{*1E-_@}Do+TdFYRS9ZURe8;;Hfz;)^1MElB-o; z%;~xIXfGIQhgsLmneFpG`zVLbh%xf!9deS4HRn-M3ybn^SFz*?9Nui~Ja)=Ix6- z%m0&9RTH!CYcX$$uh|zdn5Vys$J;OQs4Jg!|5=`|*+*wn-ujzsyt5{6zT@Q9bNy|p zX5`j;-n#ss&N=mdbM2kK;#|#mu63>Odv7?`a&EuWfM@wGa9-5Ey-<_(&U3}T%5N{s zW4&Tl=iXQLT5Wi)_^bEvo@?#q7lVD2L)U7?TEwZ&<;}G{RjX>x-#_ZXbFF2iH)ns9 z-+o!6+{%MGF{k&2`#x*!-bK#%mGrMB2C-SMoERhL?z@(M=R%z7({s&ZjcV22sW;=* zr+14no+WRtjS<6H_^ipN+7N?xvb|Q@-kI(@M`~C+C&5$mKH0KgGk%rd-dUHNn8$tf zseXF?c=>VP`^U9;)QtE&S3OvZoU1o`h?4>)YOviGI?{~TC80R_FA5uJF&So z&tY)ZR(yJv`Nb@U>dLt`zqMD7a(*u-uS7Z z=3Lv~em~xG)s=m5Er-^q9#-7CFP}cUnhR^OM`~C;)sp9~Fq>cfs4;cujC)6^2e}fb z@$xSZ;)EF@s5`t&yr`)dYor!_EFA#)|}3W zvtW!|$%(btJM$R-GB|7Im!Ffw)XXpc@@C(yx95yktDfsSPR_kUYpAW7LeZEGPEYd9+{l(VX5z&X;(6c6BFs zt{Rg!ajMl<;i}g6=XlRm58@Y({c@(PMQrv?&h4YRwO{Vr3-ic{y)gf?)LAoswKIOh zjB%Zi^FQZHKK;!mZ(@_TEg5U_CjUNbU24g`H{W>mZ10>e`LtiFo|;Gfh_kakUR~KQ z`8i5l&G@OIc93<=nffjJwZ@KD|MFwK-W&GRedkL~#Bc4MB|rA`Ecj~TF{eC~oALHe z4XX#=r}oPl?S(pjnKNqEA`hM`SI&akvvy~B%UQM4tZU*dPvd=W+F#F=L-Bi`h{u^K zmhs|uHs#HjVjpjh%rDQz*e~lkNv@ih<=nc&ASd=qe$?LeoK+Kp__xH=%xS-TR_$54 zbEK~1!Frt|XTkm&Z|(9^?Bm7%DxYii)VWpzo@-9IGX81u*Y>lnnMa)VxBVY4w_CWR+E*FZZe?71KjYd_#pi{}X2H zpEF-O%eZzY<63cz@A>1++xV@?c-Iu~c<03ouUB(`(S*(A1~)(s|LqE!A>%+72|lz@#ZD}>SW8hnmF69j`@gJ*q{^|dcD zu6fVM;g&Tu>!@ZL?^WN}Uw)zJvf%1 zzP;nsN#B9-Vp9)lz+N-Hc*MUYZq4|f+q-AHdUm}Wnv4BtOygL))@rF}@l$zS@&>wdYw|a;sg)xTfCv{doB_&h30x z6X%1>*VMVSSZP=eU1OY{IbO`pznkxBz9Yu5$FqF@XOA3Ywq}2+$t`PYVvrL#H2$im zTyLC}4&MugnmFZ9%@{}h$cedFm+ED_^S+g8*nGt!26Zc*_WF45DDMh;)*fHgTAb$F z8jd$Fc~JlA*?Bc-?Hs#T44&os6+fPJFSu*oGuB<*sxfOJZ;q{<$5v5t?Sj^QF5t?t#jk;*;O3Z$kj??;iH8c$m*MaoTsDYmMwLb8-Di;@8A^J@d7mKYqiE-#2``|0iP|FXy|Ob+<;|b?$Zj zD!%WmJlx2+HMMQNzQt{-^udE@kV@p$Vc&tkK8tkG%q*Q}R)EpPUS zF~#g}47oLqYsBN7@BLt2t9Qiv&9O1%Ts+=~o@>8|Q;qqK*w@ypcgA@8TAtOp`8qEK zHR(O(xz@#8jBhT+@hmZ`bKh}mtv2i_Id`n~#AbYZ#~iJfe0m3ZmN?yOOvm2I_LSJ< z%^s0M*Q+=4wMJ@5e%vb_b2KmYV=mqs&b!z7E!wTwzZWxKGhg!(vpB^s=hn_O#y2l} z+`K&3y~g)k^HOiFckH?5D`tDa@oLS}@L4P03)SGvLb-bVbHG4!|sbO(G%-)*4 zJeX>7xQcJSzH6T4*fr|VI=V)FoL49EV;nUje$VyYF&E>neuK%a*wl}|8Pt;ZhP|_z zZ%xLl6KgHczKPB|Hjck<)q{K*)3NWe>#d7?8sEH*lUq$bJ#d{bT2nEbqw9^YCS9WrQg+fHy5=hX4j}^b!Ax+}UG;_iZcK5m_!Q3yv+>oB8k0lU z+ZXD=b64x-U!6N|zTWw2$@t=TY#eK0j?TMY?TNv9IhJQ@Bxd>XTzU4aN9nzq@#WmT z;`g_Ncb#kO3wu^wS!?6C=2>voj4wa^oig6DjcC?i;V()Tj7eFK?H#zh?g$$M;(N zYEK^gEg`qQ7h-6w#(S20nv0w~%buEdkvN? z8n~YPYrgy9Z+*tQS6%tu$zk8{@nSp6=bD_DyV_pyBe%ZSo@I^1tUlF%JlLmdTRiUd zu6Evf$&Y->gZ%#*u4*S4*Nneqz9xS0n7cjY8nIbB>*C!a|LWg)V;V<1*23ELo*r-f zYG=G$xkmkD+5XS@ayi~R#JU?(-n>ujP5F1PyxqxpHT7vs-zK?Q@hLX-DK_r`ITvT| zgYoLtv6^x0nl1ZlhZ)zr)2i$7=59^pM-IhrP3u!$5cV0f_&HK67$6I%M;a0w@*~|8(HR|vB@#1-!&$ZRN>0UYXeiMTn zuJ9E5c-PCP{Urw18{fRtgY}Yg`_Y){%03mtNpRPyk@50lFI>rYH8F@^oW?XSYbsaj zM9k{S`0`_a*$eXE`sO{}d9nE}^xrY#t*My3Gv&vau5oN#uH}rHanz@IsR7r^iD%i@ j&ifXd*X`h`c^9cS$Kr9lcY^r0#ILPtA&2f&tJdXT!}bL- diff --git a/settingsdir/mythen3/highgain/11200eV/trim.snxxxx b/settingsdir/mythen3/highgain/11200eV/trim.snxxxx deleted file mode 100644 index e82819eba70c72fc9a78c6678c05cb3e1ad0b93a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15424 zcma*rYm(GO5CrfEP=Q5Zc?hDSf1mgkmSx#RP!8aIypSLLz#%-4M=&ce$6pY11RGIN zJw4skSy@@#125j%?fyB~?QXvP(*OP6=RflKuXlF4ix*yg_j~4_XWh)bi2Zqfx7%V5 zcK_S`jBDRzT>CWR+E*FZZe?71KjYd_#pi{}X2H zpEF-O%eZzY<63cz@A>1++xV@?c-Iu~c<03ouUB(`(S*(A1~)(s|LqE!A>%+72|lz@#ZD}>SW8hnmF69j`@gJ*q{^|dcD zu6fVM;g&Tu>!@ZL?^WN}Uw)zJvf%1 zzP;nsN#B9-Vp9)lz+N-Hc*MUYZq4|f+q-AHdUm}Wnv4BtOygL))@rF}@l$zS@&>wdYw|a;sg)xTfCv{doB_&h30x z6X%1>*VMVSSZP=eU1OY{IbO`pznkxBz9Yu5$FqF@XOA3Ywq}2+$t`PYVvrL#H2$im zTyLC}4&MugnmFZ9%@{}h$cedFm+ED_^S+g8*nGt!26Zc*_WF45DDMh;)*fHgTAb$F z8jd$Fc~JlA*?Bc-?Hs#T44&os6+fPJFSu*oGuB<*sxfOJZ;q{<$5v5t?Sj^QF5t?t#jk;*;O3Z$kj??;iH8c$m*MaoTsDYmMwLb8-Di;@8A^J@d7mKYqiE-#2``|0iP|FXy|Ob+<;|b?$Zj zD!%WmJlx2+HMMQNzQt{-^udE@kV@p$Vc&tkK8tkG%q*Q}R)EpPUS zF~#g}47oLqYsBN7@BLt2t9Qiv&9O1%Ts+=~o@>8|Q;qqK*w@ypcgA@8TAtOp`8qEK zHR(O(xz@#8jBhT+@hmZ`bKh}mtv2i_Id`n~#AbYZ#~iJfe0m3ZmN?yOOvm2I_LSJ< z%^s0M*Q+=4wMJ@5e%vb_b2KmYV=mqs&b!z7E!wTwzZWxKGhg!(vpB^s=hn_O#y2l} z+`K&3y~g)k^HOiFckH?5D`tDa@oLS}@L4P03)SGvLb-bVbHG4!|sbO(G%-)*4 zJeX>7xQcJSzH6T4*fr|VI=V)FoL49EV;nUje$VyYF&E>neuK%a*wl}|8Pt;ZhP|_z zZ%xLl6KgHczKPB|Hjck<)q{K*)3NWe>#d7?8sEH*lUq$bJ#d{bT2nEbqw9^YCS9WrQg+fHy5=hX4j}^b!Ax+}UG;_iZcK5m_!Q3yv+>oB8k0lU z+ZXD=b64x-U!6N|zTWw2$@t=TY#eK0j?TMY?TNv9IhJQ@Bxd>XTzU4aN9nzq@#WmT z;`g_Ncb#kO3wu^wS!?6C=2>voj4wa^oig6DjcC?i;V()Tj7eFK?H#zh?g$$M;(N zYEK^gEg`qQ7h-6w#(S20nv0w~%buEdkvN? z8n~YPYrgy9Z+*tQS6%tu$zk8{@nSp6=bD_DyV_pyBe%ZSo@I^1tUlF%JlLmdTRiUd zu6Evf$&Y->gZ%#*u4*S4*Nneqz9xS0n7cjY8nIbB>*C!a|LWg)V;V<1*23ELo*r-f zYG=G$xkmkD+5XS@ayi~R#JU?(-n>ujP5F1PyxqxpHT7vs-zK?Q@hLX-DK_r`ITvT| zgYoLtv6^x0nl1ZlhZ)zr)2i$7=59^pM-IhrP3u!$5cV0f_&HK67$6I%M;a0w@*~|8(HR|vB@#1-!&$ZRN>0UYXeiMTn zuJ9E5c-PCP{Urw18{fRtgY}Yg`_Y){%03mtNpRPyk@50lFI>rYH8F@^oW?XSYbsaj zM9k{S`0`_a*$eXE`sO{}d9nE}^xrY#t*My3Gv&vau5oN#uH}rHanz@IsR7r^iD%i@ j&ifXd*X`h`c^9cS$Kr9lcY^r0#ILPtA&2f&tJdXT!}bL- diff --git a/settingsdir/mythen3/highgain/4500eV/trim.sn0000 b/settingsdir/mythen3/highgain/4500eV/trim.sn0000 deleted file mode 100644 index 30f6400a244aed7de65cbf8b2bd98b9f0877aebe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15424 zcmeHNS#A_D5N(N70igh4-qTTxv=1W{+D;be_tGi%a<0v{Y3c(>_T?{{6cv=H%yN1AtS;i z_Y^-6+mH#h-$Q{={c98m)vNps1w!>T@_jfHPaqQ-^Cb#|>Q^a0M`Z-_4W1#kDfk_M z^ZkGyh*yw_N015UJL?xcQ2LA>z>RnenJA63%Ko21Znw~2BGdLA7!eu!j1Aw9;F38M%_K9w@tFtjP29g6GWQ_C9dT|B?ucis;7S~i!E31W zdAYi{M+@GYuAu^=cU^P*MGuT%#6okjzjxtAoGe0HubO!vlgUjO5gGg5Hg4W%)ej>Y zK)ANt#t(!$BXEoaUnTL}5L`*;;okfI*f$fJLl1eC^LCH?Gcn)8h*0~?-b~kY^&L?l zRG*PGrrs4~d`oRIZPb{YtAabajvokTqk7)020ty*eGcEPqx`gT`;LkUmxG&^oV|PQ zdhS!-uP6|z|AYde`c^Vy2UpT}MD;3j3LV-~IEZ6sdesjr0+lCS0>|4!aBPt-={?O%+(YrM|<2&0N z?*X^3IBq!|jXS4IC&T5LxHH;vul4wK3VZ4G=*hVia}UftF!w;)9%!{^%j{A0K7W;K zBEMS(&roJ>oVj1k)KzMuckk-k>P+2gJZNsSyu1f$?%ecT@4hMY_(rz8MfJbd^ogt8 z#mt;BwVz%5OdRLCuKLn%3YmT=J;T;~AJKJ<-!y_N>AI%+vnXFd(nPELGw)8Tx-xNk U{4b4LH#cF-Wcs|7jjmqTTxv=1W{+D;be_tGi%a<0v{Y3c(>_T?{{6cv=H%yN1AtS;i z_Y^-6+mH#h-$Q{={c98m)vNps1w!>T@_jfHPaqQ-^Cb#|>Q^a0M`Z-_4W1#kDfk_M z^ZkGyh*yw_N015UJL?xcQ2LA>z>RnenJA63%Ko21Znw~2BGdLA7!eu!j1Aw9;F38M%_K9w@tFtjP29g6GWQ_C9dT|B?ucis;7S~i!E31W zdAYi{M+@GYuAu^=cU^P*MGuT%#6okjzjxtAoGe0HubO!vlgUjO5gGg5Hg4W%)ej>Y zK)ANt#t(!$BXEoaUnTL}5L`*;;okfI*f$fJLl1eC^LCH?Gcn)8h*0~?-b~kY^&L?l zRG*PGrrs4~d`oRIZPb{YtAabajvokTqk7)020ty*eGcEPqx`gT`;LkUmxG&^oV|PQ zdhS!-uP6|z|AYde`c^Vy2UpT}MD;3j3LV-~IEZ6sdesjr0+lCS0>|4!aBPt-={?O%+(YrM|<2&0N z?*X^3IBq!|jXS4IC&T5LxHH;vul4wK3VZ4G=*hVia}UftF!w;)9%!{^%j{A0K7W;K zBEMS(&roJ>oVj1k)KzMuckk-k>P+2gJZNsSyu1f$?%ecT@4hMY_(rz8MfJbd^ogt8 z#mt;BwVz%5OdRLCuKLn%3YmT=J;T;~AJKJ<-!y_N>AI%+vnXFd(nPELGw)8Tx-xNk U{4b4LH#cF-Wcs|7jjmb?k0FZ}0DRk9Ysu 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 literal 15424 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 diff --git a/settingsdir/mythen3/standard/11200eV/trim.snxxxx b/settingsdir/mythen3/standard/11200eV/trim.snxxxx deleted file mode 100644 index e82819eba70c72fc9a78c6678c05cb3e1ad0b93a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15424 zcma*rYm(GO5CrfEP=Q5Zc?hDSf1mgkmSx#RP!8aIypSLLz#%-4M=&ce$6pY11RGIN zJw4skSy@@#125j%?fyB~?QXvP(*OP6=RflKuXlF4ix*yg_j~4_XWh)bi2Zqfx7%V5 zcK_S`jBDRzT>CWR+E*FZZe?71KjYd_#pi{}X2H zpEF-O%eZzY<63cz@A>1++xV@?c-Iu~c<03ouUB(`(S*(A1~)(s|LqE!A>%+72|lz@#ZD}>SW8hnmF69j`@gJ*q{^|dcD zu6fVM;g&Tu>!@ZL?^WN}Uw)zJvf%1 zzP;nsN#B9-Vp9)lz+N-Hc*MUYZq4|f+q-AHdUm}Wnv4BtOygL))@rF}@l$zS@&>wdYw|a;sg)xTfCv{doB_&h30x z6X%1>*VMVSSZP=eU1OY{IbO`pznkxBz9Yu5$FqF@XOA3Ywq}2+$t`PYVvrL#H2$im zTyLC}4&MugnmFZ9%@{}h$cedFm+ED_^S+g8*nGt!26Zc*_WF45DDMh;)*fHgTAb$F z8jd$Fc~JlA*?Bc-?Hs#T44&os6+fPJFSu*oGuB<*sxfOJZ;q{<$5v5t?Sj^QF5t?t#jk;*;O3Z$kj??;iH8c$m*MaoTsDYmMwLb8-Di;@8A^J@d7mKYqiE-#2``|0iP|FXy|Ob+<;|b?$Zj zD!%WmJlx2+HMMQNzQt{-^udE@kV@p$Vc&tkK8tkG%q*Q}R)EpPUS zF~#g}47oLqYsBN7@BLt2t9Qiv&9O1%Ts+=~o@>8|Q;qqK*w@ypcgA@8TAtOp`8qEK zHR(O(xz@#8jBhT+@hmZ`bKh}mtv2i_Id`n~#AbYZ#~iJfe0m3ZmN?yOOvm2I_LSJ< z%^s0M*Q+=4wMJ@5e%vb_b2KmYV=mqs&b!z7E!wTwzZWxKGhg!(vpB^s=hn_O#y2l} z+`K&3y~g)k^HOiFckH?5D`tDa@oLS}@L4P03)SGvLb-bVbHG4!|sbO(G%-)*4 zJeX>7xQcJSzH6T4*fr|VI=V)FoL49EV;nUje$VyYF&E>neuK%a*wl}|8Pt;ZhP|_z zZ%xLl6KgHczKPB|Hjck<)q{K*)3NWe>#d7?8sEH*lUq$bJ#d{bT2nEbqw9^YCS9WrQg+fHy5=hX4j}^b!Ax+}UG;_iZcK5m_!Q3yv+>oB8k0lU z+ZXD=b64x-U!6N|zTWw2$@t=TY#eK0j?TMY?TNv9IhJQ@Bxd>XTzU4aN9nzq@#WmT z;`g_Ncb#kO3wu^wS!?6C=2>voj4wa^oig6DjcC?i;V()Tj7eFK?H#zh?g$$M;(N zYEK^gEg`qQ7h-6w#(S20nv0w~%buEdkvN? z8n~YPYrgy9Z+*tQS6%tu$zk8{@nSp6=bD_DyV_pyBe%ZSo@I^1tUlF%JlLmdTRiUd zu6Evf$&Y->gZ%#*u4*S4*Nneqz9xS0n7cjY8nIbB>*C!a|LWg)V;V<1*23ELo*r-f zYG=G$xkmkD+5XS@ayi~R#JU?(-n>ujP5F1PyxqxpHT7vs-zK?Q@hLX-DK_r`ITvT| zgYoLtv6^x0nl1ZlhZ)zr)2i$7=59^pM-IhrP3u!$5cV0f_&HK67$6I%M;a0w@*~|8(HR|vB@#1-!&$ZRN>0UYXeiMTn zuJ9E5c-PCP{Urw18{fRtgY}Yg`_Y){%03mtNpRPyk@50lFI>rYH8F@^oW?XSYbsaj zM9k{S`0`_a*$eXE`sO{}d9nE}^xrY#t*My3Gv&vau5oN#uH}rHanz@IsR7r^iD%i@ j&ifXd*X`h`c^9cS$Kr9lcY^r0#ILPtA&2f&tJdXT!}bL- diff --git a/settingsdir/mythen3/standard/4500eV/trim.sn0000 b/settingsdir/mythen3/standard/4500eV/trim.sn0000 deleted file mode 100644 index 30f6400a244aed7de65cbf8b2bd98b9f0877aebe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15424 zcmeHNS#A_D5N(N70igh4-qTTxv=1W{+D;be_tGi%a<0v{Y3c(>_T?{{6cv=H%yN1AtS;i z_Y^-6+mH#h-$Q{={c98m)vNps1w!>T@_jfHPaqQ-^Cb#|>Q^a0M`Z-_4W1#kDfk_M z^ZkGyh*yw_N015UJL?xcQ2LA>z>RnenJA63%Ko21Znw~2BGdLA7!eu!j1Aw9;F38M%_K9w@tFtjP29g6GWQ_C9dT|B?ucis;7S~i!E31W zdAYi{M+@GYuAu^=cU^P*MGuT%#6okjzjxtAoGe0HubO!vlgUjO5gGg5Hg4W%)ej>Y zK)ANt#t(!$BXEoaUnTL}5L`*;;okfI*f$fJLl1eC^LCH?Gcn)8h*0~?-b~kY^&L?l zRG*PGrrs4~d`oRIZPb{YtAabajvokTqk7)020ty*eGcEPqx`gT`;LkUmxG&^oV|PQ zdhS!-uP6|z|AYde`c^Vy2UpT}MD;3j3LV-~IEZ6sdesjr0+lCS0>|4!aBPt-={?O%+(YrM|<2&0N z?*X^3IBq!|jXS4IC&T5LxHH;vul4wK3VZ4G=*hVia}UftF!w;)9%!{^%j{A0K7W;K zBEMS(&roJ>oVj1k)KzMuckk-k>P+2gJZNsSyu1f$?%ecT@4hMY_(rz8MfJbd^ogt8 z#mt;BwVz%5OdRLCuKLn%3YmT=J;T;~AJKJ<-!y_N>AI%+vnXFd(nPELGw)8Tx-xNk U{4b4LH#cF-Wcs|7jjmqTTxv=1W{+D;be_tGi%a<0v{Y3c(>_T?{{6cv=H%yN1AtS;i z_Y^-6+mH#h-$Q{={c98m)vNps1w!>T@_jfHPaqQ-^Cb#|>Q^a0M`Z-_4W1#kDfk_M z^ZkGyh*yw_N015UJL?xcQ2LA>z>RnenJA63%Ko21Znw~2BGdLA7!eu!j1Aw9;F38M%_K9w@tFtjP29g6GWQ_C9dT|B?ucis;7S~i!E31W zdAYi{M+@GYuAu^=cU^P*MGuT%#6okjzjxtAoGe0HubO!vlgUjO5gGg5Hg4W%)ej>Y zK)ANt#t(!$BXEoaUnTL}5L`*;;okfI*f$fJLl1eC^LCH?Gcn)8h*0~?-b~kY^&L?l zRG*PGrrs4~d`oRIZPb{YtAabajvokTqk7)020ty*eGcEPqx`gT`;LkUmxG&^oV|PQ zdhS!-uP6|z|AYde`c^Vy2UpT}MD;3j3LV-~IEZ6sdesjr0+lCS0>|4!aBPt-={?O%+(YrM|<2&0N z?*X^3IBq!|jXS4IC&T5LxHH;vul4wK3VZ4G=*hVia}UftF!w;)9%!{^%j{A0K7W;K zBEMS(&roJ>oVj1k)KzMuckk-k>P+2gJZNsSyu1f$?%ecT@4hMY_(rz8MfJbd^ogt8 z#mt;BwVz%5OdRLCuKLn%3YmT=J;T;~AJKJ<-!y_N>AI%+vnXFd(nPELGw)8Tx-xNk U{4b4LH#cF-Wcs|7jjmb?k0FZ}0DRk9Ysu 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 || etay<-1 || etay>1) { */ - /* cout << "**********" << etax << " " << etay << endl; */ - /* for (int ix=0; ix<3; ix++) { */ - /* for (int iy=0; iy<3; iy++) { */ - /* cout << cl[iy+3*ix] << "\t" ; */ - - /* } */ - /* cout << endl; */ - /* } */ - /* cout << sum << " " << l << " " << r << " " << t << " " << b << endl; */ - - /* } */ - if (etax>=0 && etay>=0) return TOP_RIGHT; @@ -479,6 +466,29 @@ class slsInterpolation } + + static int calcEta3X(double *cl, double &etax, double &etay, double &sum) { + double l,r,t,b; + sum=cl[0]+cl[1]+cl[2]+cl[3]+cl[4]+cl[5]+cl[6]+cl[7]+cl[8]; + if (sum>0) { + l=cl[3]; + r=cl[5]; + b=cl[1]; + t=cl[7]; + etax=(-l+r)/sum; + etay=(-b+t)/sum; + } + return -1; + } + + static int calcEta3X(int *cl, double &etax, double &etay, double &sum) { + double cli[9]; + for (int ix=0; ix<9; ix++) cli[ix]=cl[ix]; + + return calcEta3X(cli, etax, etay, sum); + } + + /* static int calcMyEta(double totquad, int quad, double *cl, double &etax, double &etay) { */ /* double l,r,t,b, sum; */ /* int yoff; */ @@ -537,21 +547,6 @@ class slsInterpolation - /* static int calcEta3X(double *cl, double &etax, double &etay, double &sum) { */ - /* double l,r,t,b; */ - /* sum=cl[0]+cl[1]+cl[2]+cl[3]+cl[4]+cl[5]+cl[6]+cl[7]+cl[8]; */ - /* if (sum>0) { */ - /* l=cl[3]; */ - /* r=cl[5]; */ - /* b=cl[1]; */ - /* t=cl[7]; */ - /* etax=(-l+r)/sum; */ - /* etay=(-b+t)/sum; */ - /* } */ - /* return -1; */ - /* } */ - - /* static int calcEta3X(int *cl, double &etax, double &etay, double &sum) { */ /* double l,r,t,b; */ /* sum=cl[0]+cl[1]+cl[2]+cl[3]+cl[4]+cl[5]+cl[6]+cl[7]+cl[8]; */ From 6ab640100b1702f56272e9cf2dcff37f346a0bb0 Mon Sep 17 00:00:00 2001 From: Anna Bergamaschi Date: Tue, 25 May 2021 16:23:36 +0200 Subject: [PATCH 07/23] replaced trimfile name with sn0000 extension --- .../trim.snxxxx => 12000eV/trim.sn0000} | Bin 15428 -> 15428 bytes .../trim.snxxxx => fast/4000eV/trim.sn0000} | Bin 15428 -> 15428 bytes settingsdir/mythen3/fast/6000eV/trim.sn0000 | Bin 0 -> 15428 bytes settingsdir/mythen3/fast/8000eV/trim.sn0000 | Bin 0 -> 15428 bytes .../mythen3/highgain/12000eV/trim.sn0000 | Bin 0 -> 15428 bytes .../trim.snxxxx => 4000eV/trim.sn0000} | Bin 15428 -> 15428 bytes .../mythen3/highgain/6000eV/trim.sn0000 | Bin 0 -> 15428 bytes .../mythen3/highgain/8000eV/trim.sn0000 | Bin 0 -> 15428 bytes .../mythen3/standard/12000eV/trim.sn0000 | Bin 0 -> 15428 bytes .../mythen3/standard/4000eV/trim.sn0000 | Bin 0 -> 15428 bytes .../mythen3/standard/6000eV/trim.sn0000 | Bin 0 -> 15428 bytes .../mythen3/standard/8000eV/trim.sn0000 | Bin 0 -> 15428 bytes 12 files changed, 0 insertions(+), 0 deletions(-) rename settingsdir/mythen3/fast/{8000eV/trim.snxxxx => 12000eV/trim.sn0000} (99%) rename settingsdir/mythen3/{standard/8000eV/trim.snxxxx => fast/4000eV/trim.sn0000} (99%) create mode 100644 settingsdir/mythen3/fast/6000eV/trim.sn0000 create mode 100644 settingsdir/mythen3/fast/8000eV/trim.sn0000 create mode 100644 settingsdir/mythen3/highgain/12000eV/trim.sn0000 rename settingsdir/mythen3/highgain/{8000eV/trim.snxxxx => 4000eV/trim.sn0000} (99%) create mode 100644 settingsdir/mythen3/highgain/6000eV/trim.sn0000 create mode 100644 settingsdir/mythen3/highgain/8000eV/trim.sn0000 create mode 100644 settingsdir/mythen3/standard/12000eV/trim.sn0000 create mode 100644 settingsdir/mythen3/standard/4000eV/trim.sn0000 create mode 100644 settingsdir/mythen3/standard/6000eV/trim.sn0000 create mode 100644 settingsdir/mythen3/standard/8000eV/trim.sn0000 diff --git a/settingsdir/mythen3/fast/8000eV/trim.snxxxx b/settingsdir/mythen3/fast/12000eV/trim.sn0000 similarity index 99% rename from settingsdir/mythen3/fast/8000eV/trim.snxxxx rename to settingsdir/mythen3/fast/12000eV/trim.sn0000 index e920fad50e3614f3c51e7d1b0dd02556ff2d907c..14c7074fc682d1233bfbb2d641c8ba64f868f211 100644 GIT binary patch delta 45 ucmX?7ail`7frEiz0}BI#01)3{WnlQg#lUa`$`@dnC@06%!o1Or%?1GS4+%K{ delta 45 wcmX?7ail`7frEiz0}BJg3uXp}JFE;0AGjD8jzIYbm?z4~F@50LXvby)03}ci2><{9 diff --git a/settingsdir/mythen3/standard/8000eV/trim.snxxxx b/settingsdir/mythen3/fast/4000eV/trim.sn0000 similarity index 99% rename from settingsdir/mythen3/standard/8000eV/trim.snxxxx rename to settingsdir/mythen3/fast/4000eV/trim.sn0000 index 251ff03a7b3e417b83c2caf365ac8970c0a0746f..de315dc1fe9647673e420d7be095e26506339f2e 100644 GIT binary patch delta 71 zcmX?7aiqeofrEiz0}BH~0W$-`9aaX04_pikN1%L=*cvtl1`c)x1|3EQ1|Oif15h3$ OwgHG+m^a$7*#H0z;0%`l delta 71 zcmX?7aiqeofrEiz0}BJg3uXoe237`!4_pikN1*%!Aiai-fq{dafx!pJ24M%FJVXvby)025OUG5`Po diff --git a/settingsdir/mythen3/fast/6000eV/trim.sn0000 b/settingsdir/mythen3/fast/6000eV/trim.sn0000 new file mode 100644 index 0000000000000000000000000000000000000000..d18ae50131d407aa8094959ec66aaa3544e25a4c GIT binary patch literal 15428 zcmeIuOAUhn5CqU6e1nP#Km-C1)dM0B(E}nXqarGyOHvUW-X?R{ncI6#$=M}Gn|%7@ zJ16h|e|4`RnZ{&klCAo+_NzN9d+m>kBS3%v0RjXF5FkK+009C72oNAZfB*pk1PBly sK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK;S+CKP(3cO8@`> literal 0 HcmV?d00001 diff --git a/settingsdir/mythen3/fast/8000eV/trim.sn0000 b/settingsdir/mythen3/fast/8000eV/trim.sn0000 new file mode 100644 index 0000000000000000000000000000000000000000..cc6a3c5f48558ec1f03c8f14fbbef1da88da2ec1 GIT binary patch literal 15428 zcmeIuI}w8b5CqU=_zo%}01*g4R0`x!AR$F$L_{Ryn289AcQaeuZug#3a(2n9O+J0{ zos;+fzq(^crZHKXWUGFy{p!xjUi+is2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF s5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5V()P4`eF|!vFvP literal 0 HcmV?d00001 diff --git a/settingsdir/mythen3/highgain/12000eV/trim.sn0000 b/settingsdir/mythen3/highgain/12000eV/trim.sn0000 new file mode 100644 index 0000000000000000000000000000000000000000..08ecc6cca783bf115c26a6878424556dac7e1175 GIT binary patch literal 15428 zcmeIuy9t0$5Cp&lzZhG9rC5Lk85&rQfkjx5CHMr3FqnhoxV>z)J~``TZIY$zdq}SD ze!HVh`Ysv2|6KlWcb4o`GL;wt1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ nfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7{v+@JF|r6u literal 0 HcmV?d00001 diff --git a/settingsdir/mythen3/highgain/8000eV/trim.snxxxx b/settingsdir/mythen3/highgain/4000eV/trim.sn0000 similarity index 99% rename from settingsdir/mythen3/highgain/8000eV/trim.snxxxx rename to settingsdir/mythen3/highgain/4000eV/trim.sn0000 index e06ab7072fc25982a6ee776d429c69376ca28948..440b0518aaee43b014a350b3cb61b45a0649abec 100644 GIT binary patch delta 19 acmX?7ain5`4ATqdiE?sGEzBG3*lYk#Nd}n! delta 19 bcmX?7ain5`4ATadiE?sGAGkK!vDp9sPhSSr diff --git a/settingsdir/mythen3/highgain/6000eV/trim.sn0000 b/settingsdir/mythen3/highgain/6000eV/trim.sn0000 new file mode 100644 index 0000000000000000000000000000000000000000..5a02d1ecc80806369f76f49a8c86d5c1567a9bc9 GIT binary patch literal 15428 zcmeIuI}L?U5CqUk_=frkKnem7MS&a&L?8$W?-D4GKyfyiVrREHOP}m@GCw(o(sCkVAn43Irj6y95ywZ<8%{CfmGiOwKmBnj~HFOv(M- zH9Pub9FnzUb(hlD>@2&Ney)Fp009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF n5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7csf!_$c*+>Zr literal 0 HcmV?d00001 diff --git a/settingsdir/mythen3/standard/6000eV/trim.sn0000 b/settingsdir/mythen3/standard/6000eV/trim.sn0000 new file mode 100644 index 0000000000000000000000000000000000000000..103a0fb57766947a48edcd1cd5c918fb86a3ac93 GIT binary patch literal 15428 zcmeIuu?>Sj5Cp)Lu;E2S2`%2$TXSh(O7saQZk90Tc-JNdeKvSX#+m|K?~(e Date: Tue, 25 May 2021 16:46:01 +0200 Subject: [PATCH 08/23] m3: vthreshold and vthx gives correct exception messages (binaries not in) --- .../src/slsDetectorServer_funcs.c | 27 +++++++++---------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c index cd72dba3c..765f95a14 100644 --- a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c +++ b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c @@ -1213,19 +1213,6 @@ int validateAndSetDac(enum dacIndex ind, int val, int mV) { setDAC(serverDacIndex, val, mV); retval = getDAC(serverDacIndex, mV); } -#ifdef MYTHEN3D - if (serverDacIndex == M_VTHRESHOLD && retval == -1) { - ret = FAIL; - uint32_t counter_retval = getCounterMask(); - if (counter_retval != MAX_COUNTER_MSK) { - strcpy(mess, "Could not set all threshold dacs as not all " - "counters enabled\n"); - } else { - sprintf(mess, "Could not set all threshold dacs\n"); - } - LOG(logERROR, (mess)); - } -#endif #ifdef EIGERD if (val != GET_FLAG && getSettings() != UNDEFINED) { // changing dac changes settings to undefined @@ -1251,8 +1238,18 @@ int validateAndSetDac(enum dacIndex ind, int val, int mV) { ret = OK; } else { ret = FAIL; - sprintf(mess, "Setting dac %d : wrote %d but read %d\n", - serverDacIndex, val, retval); +#ifdef MYTHEN3D + // give a different exception message if counter not enabled + uint32_t counter_retval = getCounterMask(); + if ((serverDacIndex == M_VTHRESHOLD || + serverDacIndex == M_VTH1 || serverDacIndex == M_VTH2 || + serverDacIndex == M_VTH3) && + counter_retval != MAX_COUNTER_MSK) { + strcpy(mess, "Could not set dac as counter disabled\n"); + } else +#endif + sprintf(mess, "Setting dac %d : wrote %d but read %d\n", + serverDacIndex, val, retval); LOG(logERROR, (mess)); } } From 240ec124855c798d30ce97d63b890f70615e2f35 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Tue, 25 May 2021 16:46:56 +0200 Subject: [PATCH 09/23] binaries in --- .../bin/mythen3DetectorServer_developer | Bin 246240 -> 242144 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer b/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer index b123f5607d5d12009ea2e2cac8b7af34f48fa7af..e2cf2430f765c85cb2c347a9b77740c6691612ce 100755 GIT binary patch delta 54923 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 From 89898becedd1f8e6207f5b0721578aab06dc22ad Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Wed, 26 May 2021 12:23:46 +0200 Subject: [PATCH 10/23] m3:different exception message for vths when counter disabled --- .../src/slsDetectorServer_funcs.c | 28 +++++++++++++++---- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c index 765f95a14..17a31bf0c 100644 --- a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c +++ b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c @@ -1240,11 +1240,29 @@ int validateAndSetDac(enum dacIndex ind, int val, int mV) { ret = FAIL; #ifdef MYTHEN3D // give a different exception message if counter not enabled - uint32_t counter_retval = getCounterMask(); - if ((serverDacIndex == M_VTHRESHOLD || - serverDacIndex == M_VTH1 || serverDacIndex == M_VTH2 || - serverDacIndex == M_VTH3) && - counter_retval != MAX_COUNTER_MSK) { + int isCounterError = 0; + if (serverDacIndex == M_VTHRESHOLD || + serverDacIndex == M_VTH1 || serverDacIndex == M_VTH2 || + serverDacIndex == M_VTH3) { + uint32_t counter_retval = getCounterMask(); + // vthreshold, all counters should have been enabled + if (serverDacIndex == M_VTHRESHOLD) { + if (counter_retval != MAX_COUNTER_MSK) { + isCounterError = 1; + } + } + // corresponding counter should have been enabled + else { + int vthdacs[] = {M_VTH1, M_VTH2, M_VTH3}; + for (int i = 0; i < NCOUNTERS; ++i) { + if ((vthdacs[i] == (int)serverDacIndex) && + (!(counter_retval & (1 << i)))) { + isCounterError = 1; + } + } + } + } + if (isCounterError) { strcpy(mess, "Could not set dac as counter disabled\n"); } else #endif From 3079e41c3bd2c5062e0794c5e82d76a11899e391 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Wed, 26 May 2021 12:59:19 +0200 Subject: [PATCH 11/23] all loading pattern so far takes in logDEBUG5 print level as it is at detector start up. commands to call loadpattern can call logINFO level --- .../slsDetectorFunctionList.c | 5 +- .../slsDetectorServer/include/loadPattern.h | 3 +- .../slsDetectorServer/src/loadPattern.c | 152 +++++++++--------- 3 files changed, 82 insertions(+), 78 deletions(-) diff --git a/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c b/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c index 36d820ebb..1bb6afa20 100644 --- a/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c +++ b/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c @@ -1112,6 +1112,7 @@ int setModule(sls_detector_module myMod, char *mess) { } int setTrimbits(int *trimbits) { + LOG(logINFOBLUE, ("Setting trimbits\n")); // remember previous run clock uint32_t prevRunClk = clkDivider[SYSTEM_C0]; patternParameters *pat = NULL; @@ -1128,7 +1129,7 @@ int setTrimbits(int *trimbits) { pat = setChannelRegisterChip(ichip, channelMask, trimbits); // change here!!! if (pat) { - error |= loadPattern(pat); + error |= loadPattern(logDEBUG5, pat); if (error == 0) startPattern(); free(pat); @@ -2645,7 +2646,7 @@ int setChipStatusRegister(int csr) { pat = setChipStatusRegisterPattern(csr); if (pat) { - error |= loadPattern(pat); + error |= loadPattern(logDEBUG5, pat); if (!error) startPattern(); free(pat); diff --git a/slsDetectorServers/slsDetectorServer/include/loadPattern.h b/slsDetectorServers/slsDetectorServer/include/loadPattern.h index 261c0f148..aa81d9a49 100644 --- a/slsDetectorServers/slsDetectorServer/include/loadPattern.h +++ b/slsDetectorServers/slsDetectorServer/include/loadPattern.h @@ -1,6 +1,7 @@ #ifndef LOADPATTERN_H #define LOADPATTERN_H #include "Pattern.h" +#include "clogger.h" -int loadPattern(patternParameters *pat); +int loadPattern(enum TLogLevel printLevel, patternParameters *pat); #endif diff --git a/slsDetectorServers/slsDetectorServer/src/loadPattern.c b/slsDetectorServers/slsDetectorServer/src/loadPattern.c index 77de0e686..f26a92570 100644 --- a/slsDetectorServers/slsDetectorServer/src/loadPattern.c +++ b/slsDetectorServers/slsDetectorServer/src/loadPattern.c @@ -1,7 +1,7 @@ -#include "readDefaultPattern.h" #include "loadPattern.h" #include "clogger.h" #include "common.h" +#include "readDefaultPattern.h" #include "sls/ansi.h" #include "sls/sls_detector_defs.h" #include "slsDetectorServer_defs.h" @@ -14,6 +14,7 @@ #include extern char initErrorMessage[MAX_STR_LENGTH]; +extern enum TLogLevel trimmingPrint; #ifndef MYTHEN3D extern uint64_t writePatternIOControl(uint64_t word); @@ -24,82 +25,83 @@ extern uint64_t setPatternWaitTime(int level, uint64_t t); extern void setPatternLoop(int level, int *startAddr, int *stopAddr, int *nLoop); -int loadPattern(patternParameters *pat) { +int loadPattern(enum TLogLevel printLevel, patternParameters *pat) { + LOG(logINFOBLUE, ("Loading Pattern\n")); + int ret = OK; + trimmingPrint = printLevel; - int ret=OK; - - for (int i = 0; i < MAX_PATTERN_LENGTH; ++i) { - if ((i % 10 == 0) && pat->word[i] != 0) { - LOG(logINFO, ("Setting Pattern Word (addr:0x%x, word:0x%llx)\n", - i, (long long int)pat->word[i])); - } - writePatternWord(i, pat->word[i]); - } -#ifndef MYTHEN3D - if (ret == OK) { - uint64_t retval64 = writePatternIOControl(pat->ioctrl); - //validate64(pat->ioctrl, retval64, "set pattern IO Control", HEX); - } -#endif - if (ret == OK) { - int numLoops = -1; - int retval0 = pat->limits[0]; - int retval1 = pat->limits[1]; - setPatternLoop(-1, &retval0, &retval1, &numLoops); - //validate(pat->limits[0], retval0, - // "set pattern Limits start address", HEX); - //validate(pat->limits[1], retval1, - // "set pattern Limits start address", HEX); + for (int i = 0; i < MAX_PATTERN_LENGTH; ++i) { + if ((i % 10 == 0) && pat->word[i] != 0) { + LOG(logDEBUG5, ("Setting Pattern Word (addr:0x%x, word:0x%llx)\n", + i, (long long int)pat->word[i])); } - uint64_t retval64; - if (ret == OK) { - for (int i = 0; i <= 2; ++i) { - char msg[128]; - int retval0 = -1, retval1 = -1, numLoops = -1; + writePatternWord(i, pat->word[i]); + } +#ifndef MYTHEN3D + if (ret == OK) { + uint64_t retval64 = writePatternIOControl(pat->ioctrl); + // validate64(pat->ioctrl, retval64, "set pattern IO Control", HEX); + } +#endif + if (ret == OK) { + int numLoops = -1; + int retval0 = pat->limits[0]; + int retval1 = pat->limits[1]; + setPatternLoop(-1, &retval0, &retval1, &numLoops); + // validate(pat->limits[0], retval0, + // "set pattern Limits start address", HEX); + // validate(pat->limits[1], retval1, + // "set pattern Limits start address", HEX); + } + uint64_t retval64; + if (ret == OK) { + for (int i = 0; i <= 2; ++i) { + char msg[128]; + int retval0 = -1, retval1 = -1, numLoops = -1; - // patloop - retval0 = pat->loop[i * 2 + 0]; - retval1 = pat->loop[i * 2 + 1]; - numLoops = pat->nloop[i]; - setPatternLoop(i, &retval0, &retval1, &numLoops); - memset(msg, 0, sizeof(msg)); - sprintf(msg, "set pattern Loop %d start address", i); - //validate(pat->loop[i * 2 + 0], retval0, msg, HEX); - if (ret == FAIL) { - break; - } - memset(msg, 0, sizeof(msg)); - sprintf(msg, "set pattern Loop %d stop address", i); - //validate(pat->loop[i * 2 + 1], retval1, msg, HEX); - if (ret == FAIL) { - break; - } - memset(msg, 0, sizeof(msg)); - sprintf(msg, "set pattern Loop %d num loops", i); - //validate(pat->nloop[i], numLoops, msg, HEX); - if (ret == FAIL) { - break; - } - // patwait - memset(msg, 0, sizeof(msg)); - sprintf(msg, "set pattern Loop %d wait address", i); - retval0 = setPatternWaitAddress(i, pat->wait[i]); - //validate(pat->wait[i], retval0, msg, HEX); - if (ret == FAIL) { - break; - } + // patloop + retval0 = pat->loop[i * 2 + 0]; + retval1 = pat->loop[i * 2 + 1]; + numLoops = pat->nloop[i]; + setPatternLoop(i, &retval0, &retval1, &numLoops); + memset(msg, 0, sizeof(msg)); + sprintf(msg, "set pattern Loop %d start address", i); + // validate(pat->loop[i * 2 + 0], retval0, msg, HEX); + if (ret == FAIL) { + break; + } + memset(msg, 0, sizeof(msg)); + sprintf(msg, "set pattern Loop %d stop address", i); + // validate(pat->loop[i * 2 + 1], retval1, msg, HEX); + if (ret == FAIL) { + break; + } + memset(msg, 0, sizeof(msg)); + sprintf(msg, "set pattern Loop %d num loops", i); + // validate(pat->nloop[i], numLoops, msg, HEX); + if (ret == FAIL) { + break; + } + // patwait + memset(msg, 0, sizeof(msg)); + sprintf(msg, "set pattern Loop %d wait address", i); + retval0 = setPatternWaitAddress(i, pat->wait[i]); + // validate(pat->wait[i], retval0, msg, HEX); + if (ret == FAIL) { + break; + } - // patwaittime - memset(msg, 0, sizeof(msg)); - sprintf(msg, "set pattern Loop %d wait time", i); - retval64 = setPatternWaitTime(i, pat->waittime[i]); - //validate64(pat->waittime[i], retval64, msg, HEX); - if (retval64 == FAIL) { - break; - } - } - } - return ret; + // patwaittime + memset(msg, 0, sizeof(msg)); + sprintf(msg, "set pattern Loop %d wait time", i); + retval64 = setPatternWaitTime(i, pat->waittime[i]); + // validate64(pat->waittime[i], retval64, msg, HEX); + if (retval64 == FAIL) { + break; + } + } + } + trimmingPrint = logINFO; + + return ret; } - - From 47c3d7fc47d9d3c03193c077ae39a44d6f5d6409 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Wed, 26 May 2021 13:00:11 +0200 Subject: [PATCH 12/23] binaries in --- .../bin/mythen3DetectorServer_developer | Bin 242144 -> 242144 bytes slsSupportLib/include/sls/versionAPI.h | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer b/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer index e2cf2430f765c85cb2c347a9b77740c6691612ce..dc1b8ff79ad5cbc8118577b340efd9d56b2fdee9 100755 GIT binary patch delta 52829 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 K?{7BOoBs!b{b(Qn diff --git a/slsSupportLib/include/sls/versionAPI.h b/slsSupportLib/include/sls/versionAPI.h index d820c3ce8..f7dc57ef1 100644 --- a/slsSupportLib/include/sls/versionAPI.h +++ b/slsSupportLib/include/sls/versionAPI.h @@ -9,4 +9,4 @@ #define APILIB 0x210225 #define APIRECEIVER 0x210225 #define APIGUI 0x210225 -#define APIMYTHEN3 0x210525 +#define APIMYTHEN3 0x210526 From 2809d2b83d2d5a321f46f007be65f01dee7446fc Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Wed, 26 May 2021 18:37:34 +0200 Subject: [PATCH 13/23] tests dac depreciated fix for m3 --- .../tests/test-CmdProxy-global.cpp | 4 +- .../tests/test-CmdProxy-mythen3.cpp | 97 ++++++++++--------- 2 files changed, 53 insertions(+), 48 deletions(-) diff --git a/slsDetectorSoftware/tests/test-CmdProxy-global.cpp b/slsDetectorSoftware/tests/test-CmdProxy-global.cpp index 3e149ef78..64289f722 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-global.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-global.cpp @@ -27,9 +27,9 @@ void test_dac(defs::dacIndex index, const std::string &dacname, int dacvalue) { } // other detectors else { - proxy.Call(dacname, {dacstr}, -1, PUT, oss_set); + proxy.Call("dac", {dacname, dacstr}, -1, PUT, oss_set); REQUIRE(oss_set.str() == "dac " + dacname + " " + dacstr + "\n"); - proxy.Call(dacname, {}, -1, GET, oss_get); + proxy.Call("dac", {dacname}, -1, GET, oss_get); REQUIRE(oss_get.str() == "dac " + dacname + " " + dacstr + "\n"); } // Reset all dacs to previous value diff --git a/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp b/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp index c9d853836..dd21fcb6a 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp @@ -49,18 +49,23 @@ TEST_CASE("Setting and reading back MYTHEN3 dacs", "[.cmd][.dacs]") { auto vth1 = det.getDAC(defs::VTH1, false); auto vth2 = det.getDAC(defs::VTH2, false); auto vth3 = det.getDAC(defs::VTH3, false); + auto mask = det.getCounterMask({0}).squash(-1); { std::ostringstream oss; - proxy.Call("vthreshold", {"1234"}, -1, PUT, oss); + proxy.Call("dac", {"vthreshold", "1234"}, -1, PUT, oss); REQUIRE(oss.str() == "dac vthreshold 1234\n"); } { std::ostringstream oss; - proxy.Call("vthreshold", {}, -1, GET, oss); + proxy.Call("dac", {"vthreshold"}, -1, GET, oss); REQUIRE(oss.str() == "dac vthreshold 1234\n"); } + // change vthreshold when counters disabled + // proxy.Call("counters", {"0"}); + // REQUIRE_THROWS(proxy.Call("dac", {}, -1, GET)); + // Reset dacs after test for (int i = 0; i != det.size(); ++i) { det.setDAC(defs::VTH1, vth1[i], false, {i}); @@ -68,50 +73,50 @@ TEST_CASE("Setting and reading back MYTHEN3 dacs", "[.cmd][.dacs]") { det.setDAC(defs::VTH3, vth3[i], false, {i}); } } - REQUIRE_THROWS(proxy.Call("vsvp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vsvn", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vtrim", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vrpreamp", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vrshaper", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vtgstv", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcmp_ll", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcmp_lr", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcal", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcmp_rl", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcmp_rr", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("rxb_rb", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("rxb_lb", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcn", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vishaper", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("iodelay", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_ds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcascn_pb", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcascp_pb", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vout_cm", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcasc_out", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vin_cm", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_comp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("ib_test_c", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_h_adc", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_comp_fe", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_comp_adc", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcom_cds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_rstore", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_opa_1st", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_comp_fe", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcom_adc1", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_prech", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_l_adc", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_cds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_cs", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_opa_fd", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcom_adc2", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_ds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_comp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_pixbuf", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vin_com", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vdd_prot", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vsvp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vsvn"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vtrim"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vrpreamp"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vrshaper"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vtgstv"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcmp_ll"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcmp_lr"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcal"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcmp_rl"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcmp_rr"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"rxb_rb"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"rxb_lb"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcn"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vishaper"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"iodelay"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_ds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcascn_pb"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcascp_pb"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vout_cm"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcasc_out"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vin_cm"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_comp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"ib_test_c"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_h_adc"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_comp_fe"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_comp_adc"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcom_cds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_rstore"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_opa_1st"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_comp_fe"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcom_adc1"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_prech"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_l_adc"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_cds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_cs"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_opa_fd"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcom_adc2"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_ds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_comp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_pixbuf"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vin_com"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vdd_prot"}, -1, GET)); } } From a69e6e7faa1eefe19d537a29b22480ec6a6b392a Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Wed, 26 May 2021 18:51:10 +0200 Subject: [PATCH 14/23] other detectors dac tests --- .../tests/test-CmdProxy-gotthard.cpp | 110 +++++++-------- .../tests/test-CmdProxy-gotthard2.cpp | 100 +++++++------- .../tests/test-CmdProxy-moench.cpp | 126 +++++++++--------- 3 files changed, 168 insertions(+), 168 deletions(-) diff --git a/slsDetectorSoftware/tests/test-CmdProxy-gotthard.cpp b/slsDetectorSoftware/tests/test-CmdProxy-gotthard.cpp index 38f5559bc..84c084766 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-gotthard.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-gotthard.cpp @@ -34,64 +34,64 @@ TEST_CASE("Setting and reading back GOTTHARD dacs", "[.cmd][.dacs]") { SECTION("vref_comp") { test_dac(defs::VREF_COMP, "vref_comp", 350); } SECTION("ib_test_c") { test_dac(defs::IB_TESTC, "ib_test_c", 2001); } // eiger - REQUIRE_THROWS(proxy.Call("vthreshold", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vsvp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vsvn", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vtrim", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vrpreamp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vrshaper", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vtgstv", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcmp_ll", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcmp_lr", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcal", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcmp_rl", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcmp_rr", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("rxb_rb", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("rxb_lb", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcn", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vishaper", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("iodelay", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vthreshold"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vsvp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vsvn"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vtrim"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrpreamp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrshaper"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vtgstv"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcmp_ll"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcmp_lr"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcal"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcmp_rl"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcmp_rr"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"rxb_rb"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"rxb_lb"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcn"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vishaper"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"iodelay"}, -1, GET)); // jungfrau - REQUIRE_THROWS(proxy.Call("vb_comp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vdd_prot", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vin_com", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_prech", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_pixbuf", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_ds", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vref_ds", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vref_comp", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_comp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vdd_prot"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vin_com"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_prech"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_pixbuf"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_ds"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vref_ds"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vref_comp"}, -1, GET)); // mythen3 - REQUIRE_THROWS(proxy.Call("vrpreamp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vrshaper", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vrshaper_n", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vipre", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vishaper", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vdcsh", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vth1", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vth2", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vth3", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcal_n", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcal_p", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vtrim", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcassh", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcas", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vicin", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vipre_out", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrpreamp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrshaper"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrshaper_n"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vipre"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vishaper"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vdcsh"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vth1"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vth2"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vth3"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcal_n"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcal_p"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vtrim"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcassh"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcas"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vicin"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vipre_out"}, -1, GET)); // gotthard2 - REQUIRE_THROWS(proxy.Call("vref_h_adc", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_comp_fe", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_comp_adc", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcom_cds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_rstore", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_opa_1st", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_comp_fe", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcom_adc1", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_l_adc", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_cds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_cs", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_opa_fd", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcom_adc2", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_h_adc"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_comp_fe"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_comp_adc"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcom_cds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_rstore"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_opa_1st"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_comp_fe"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcom_adc1"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_l_adc"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_cds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_cs"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_opa_fd"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcom_adc2"}, -1, GET)); } } diff --git a/slsDetectorSoftware/tests/test-CmdProxy-gotthard2.cpp b/slsDetectorSoftware/tests/test-CmdProxy-gotthard2.cpp index 53cc11120..7ac251826 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-gotthard2.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-gotthard2.cpp @@ -52,59 +52,59 @@ TEST_CASE("Setting and reading back GOTTHARD2 dacs", "[.cmd][.dacs]") { SECTION("vb_opa_fd") { test_dac(defs::VB_OPA_FD, "vb_opa_fd", 0); } SECTION("vcom_adc2") { test_dac(defs::VCOM_ADC2, "vcom_adc2", 1400); } // eiger - REQUIRE_THROWS(proxy.Call("vthreshold", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vsvp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vsvn", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vtrim", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vrpreamp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vrshaper", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vtgstv", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcmp_ll", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcmp_lr", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcal", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcmp_rl", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcmp_rr", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("rxb_rb", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("rxb_lb", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcn", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vishaper", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("iodelay", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vthreshold"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vsvp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vsvn"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vtrim"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrpreamp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrshaper"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vtgstv"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcmp_ll"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcmp_lr"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcal"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcmp_rl"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcmp_rr"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"rxb_rb"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"rxb_lb"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcn"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vishaper"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"iodelay"}, -1, GET)); // gotthard - REQUIRE_THROWS(proxy.Call("vref_ds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcascn_pb", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcascp_pb", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vout_cm", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcasc_out", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vin_cm", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_comp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("ib_test_c", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_ds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcascn_pb"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcascp_pb"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vout_cm"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcasc_out"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vin_cm"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_comp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"ib_test_c"}, -1, GET)); // jungfrau - REQUIRE_THROWS(proxy.Call("vb_comp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vdd_prot", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vin_com", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vref_prech", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_pixbuf", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_ds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_ds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_comp", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_comp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vdd_prot"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vin_com"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vref_prech"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_pixbuf"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_ds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_ds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_comp"}, -1, GET)); // mythen3 - REQUIRE_THROWS(proxy.Call("vrpreamp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vrshaper", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vrshaper_n", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vipre", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vishaper", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vdcsh", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vth1", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vth2", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vth3", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcal_n", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcal_p", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vtrim", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcassh", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcas", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vicin", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vipre_out", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrpreamp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrshaper"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrshaper_n"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vipre"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vishaper"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vdcsh"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vth1"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vth2"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vth3"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcal_n"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcal_p"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vtrim"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcassh"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcas"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vicin"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vipre_out"}, -1, GET)); } } diff --git a/slsDetectorSoftware/tests/test-CmdProxy-moench.cpp b/slsDetectorSoftware/tests/test-CmdProxy-moench.cpp index 0b307c8a3..f8431f7a9 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-moench.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-moench.cpp @@ -37,72 +37,72 @@ TEST_CASE("Setting and reading back MOENCH dacs", "[.cmd][.dacs]") { SECTION("ibias_sfp") { test_dac(defs::IBIAS_SFP, "ibias_sfp", 900); } // eiger - REQUIRE_THROWS(proxy.Call("vthreshold", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vsvp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vsvn", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vtrim", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vrpreamp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vrshaper", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vtgstv", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcmp_ll", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcmp_lr", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcal", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcmp_rl", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcmp_rr", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("rxb_rb", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("rxb_lb", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcn", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vishaper", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("iodelay", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vthreshold"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vsvp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vsvn"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vtrim"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrpreamp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrshaper"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vtgstv"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcmp_ll"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcmp_lr"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcal"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcmp_rl"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcmp_rr"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"rxb_rb"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"rxb_lb"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcn"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vishaper"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"iodelay"}, -1, GET)); // jungfrau - REQUIRE_THROWS(proxy.Call("vb_comp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vdd_prot", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vin_com", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_prech", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_pixbuf", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_ds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_ds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_comp", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_comp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vdd_prot"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vin_com"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_prech"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_pixbuf"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_ds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_ds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_comp"}, -1, GET)); // gotthard - REQUIRE_THROWS(proxy.Call("vref_ds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcascn_pb", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcascp_pb", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vout_cm", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcasc_out", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vin_cm", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_comp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("ib_test_c", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_ds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcascn_pb"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcascp_pb"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vout_cm"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcasc_out"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vin_cm"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_comp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"ib_test_c"}, -1, GET)); // mythen3 - REQUIRE_THROWS(proxy.Call("vrpreamp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vrshaper", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vrshaper_n", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vipre", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vishaper", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vdcsh", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vth1", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vth2", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vth3", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcal_n", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcal_p", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vtrim", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcassh", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcas", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vicin", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vipre_out", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrpreamp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrshaper"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrshaper_n"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vipre"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vishaper"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vdcsh"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vth1"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vth2"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vth3"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcal_n"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcal_p"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vtrim"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcassh"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcas"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vicin"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vipre_out"}, -1, GET)); // gotthard2 - REQUIRE_THROWS(proxy.Call("vref_h_adc", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_comp_fe", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_comp_adc", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcom_cds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_rstore", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_opa_1st", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_comp_fe", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcom_adc1", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_l_adc", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_cds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_cs", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_opa_fd", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcom_adc2", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_h_adc"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_comp_fe"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_comp_adc"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcom_cds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_rstore"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_opa_1st"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_comp_fe"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcom_adc1"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_l_adc"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_cds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_cs"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_opa_fd"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcom_adc2"}, -1, GET)); } } From 0a7b0a6d5ed168eee6e4eac33837c3c508f44193 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Wed, 26 May 2021 18:57:29 +0200 Subject: [PATCH 15/23] ctb tests dac fixed --- .../tests/test-CmdProxy-chiptestboard.cpp | 126 +++++++++--------- 1 file changed, 63 insertions(+), 63 deletions(-) diff --git a/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp b/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp index 3c2ccfe97..be2df1248 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp @@ -30,73 +30,73 @@ TEST_CASE("dac", "[.cmd][.dacs]") { } } // eiger - // REQUIRE_THROWS(proxy.Call("vthreshold", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vsvp", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vsvn", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vtrim", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vrpreamp", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vrshaper", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vtgstv", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vcmp_ll", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vcmp_lr", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vcal", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vcmp_rl", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vcmp_rr", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("rxb_rb", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("rxb_lb", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vcp", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vcn", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("vishaper", {}, -1, GET)); - // REQUIRE_THROWS(proxy.Call("iodelay", {}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vthreshold"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vsvp"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vsvn"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vtrim"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vrpreamp"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vrshaper"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vtgstv"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vcmp_ll"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vcmp_lr"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vcal"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vcmp_rl"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vcmp_rr"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"rxb_rb"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"rxb_lb"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vcp"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vcn"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"vishaper"}, -1, GET)); + // REQUIRE_THROWS(proxy.Call("dac", {"iodelay"}, -1, GET)); // jungfrau - REQUIRE_THROWS(proxy.Call("vb_comp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vdd_prot", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vin_com", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_prech", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_pixbuf", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_ds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_ds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_comp", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_comp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vdd_prot"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vin_com"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_prech"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_pixbuf"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_ds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_ds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_comp"}, -1, GET)); // gotthard - REQUIRE_THROWS(proxy.Call("vref_ds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcascn_pb", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcascp_pb", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vout_cm", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcasc_out", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vin_cm", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_comp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("ib_test_c", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_ds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcascn_pb"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcascp_pb"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vout_cm"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcasc_out"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vin_cm"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_comp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"ib_test_c"}, -1, GET)); // mythen3 - REQUIRE_THROWS(proxy.Call("vrpreamp", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vrshaper", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vrshaper_n", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vipre", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vishaper", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vdcsh", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vth1", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vth2", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vth3", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcal_n", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcal_p", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vtrim", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcassh", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcas", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vicin", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vipre_out", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrpreamp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrshaper"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vrshaper_n"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vipre"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vishaper"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vdcsh"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vth1"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vth2"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vth3"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcal_n"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcal_p"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vtrim"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcassh"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcas"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vicin"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vipre_out"}, -1, GET)); // gotthard2 - REQUIRE_THROWS(proxy.Call("vref_h_adc", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_comp_fe", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_comp_adc", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcom_cds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_rstore", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_opa_1st", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_comp_fe", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcom_adc1", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_l_adc", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vref_cds", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_cs", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vb_opa_fd", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vcom_adc2", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_h_adc"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_comp_fe"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_comp_adc"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcom_cds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_rstore"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_opa_1st"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_comp_fe"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcom_adc1"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_l_adc"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vref_cds"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_cs"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vb_opa_fd"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vcom_adc2"}, -1, GET)); } } From 54c24b3de7aace11b9938881c91f36fd7560628a Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Wed, 26 May 2021 19:55:47 +0200 Subject: [PATCH 16/23] tests m3 for vth and counters --- .../tests/test-CmdProxy-mythen3.cpp | 36 +++++++++++++++++-- 1 file changed, 33 insertions(+), 3 deletions(-) diff --git a/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp b/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp index dd21fcb6a..e1dc2bfd2 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp @@ -49,7 +49,7 @@ TEST_CASE("Setting and reading back MYTHEN3 dacs", "[.cmd][.dacs]") { auto vth1 = det.getDAC(defs::VTH1, false); auto vth2 = det.getDAC(defs::VTH2, false); auto vth3 = det.getDAC(defs::VTH3, false); - auto mask = det.getCounterMask({0}).squash(-1); + auto mask = det.getCounterMask(); { std::ostringstream oss; @@ -63,11 +63,41 @@ TEST_CASE("Setting and reading back MYTHEN3 dacs", "[.cmd][.dacs]") { } // change vthreshold when counters disabled - // proxy.Call("counters", {"0"}); - // REQUIRE_THROWS(proxy.Call("dac", {}, -1, GET)); + proxy.Call("counters", {"0"}, -1, PUT); + REQUIRE_NOTHROW(proxy.Call("dac", {"vth1", "2100"}, -1, PUT)); + REQUIRE_THROWS(proxy.Call("dac", {"vth2", "2100"}, -1, PUT)); + REQUIRE_THROWS(proxy.Call("dac", {"vth3", "2100"}, -1, PUT)); + REQUIRE_THROWS(proxy.Call("dac", {"vthreshold", "2100"}, -1, PUT)); + proxy.Call("counters", {"0", "2"}, -1, PUT); + REQUIRE_NOTHROW(proxy.Call("dac", {"vth1", "2100"}, -1, PUT)); + REQUIRE_THROWS(proxy.Call("dac", {"vth2", "2100"}, -1, PUT)); + REQUIRE_NOTHROW(proxy.Call("dac", {"vth3", "2100"}, -1, PUT)); + REQUIRE_THROWS(proxy.Call("dac", {"vthreshold", "2200"}, -1, PUT)); + proxy.Call("counters", {"0", "1", "2"}, -1, PUT); + // should remember the previous values when counter set + { + std::ostringstream oss; + proxy.Call("dac", {"vth1"}, -1, GET, oss); + REQUIRE(oss.str() == "dac vth1 2200\n"); + } + { + std::ostringstream oss; + proxy.Call("dac", {"vth2"}, -1, GET, oss); + REQUIRE(oss.str() == "dac vth2 2200\n"); + } + { + std::ostringstream oss; + proxy.Call("dac", {"vth3"}, -1, GET, oss); + REQUIRE(oss.str() == "dac vth3 2200\n"); + } + REQUIRE_NOTHROW(proxy.Call("dac", {"vth1", "2100"}, -1, PUT)); + REQUIRE_NOTHROW(proxy.Call("dac", {"vth2", "2100"}, -1, PUT)); + REQUIRE_NOTHROW(proxy.Call("dac", {"vth3", "2100"}, -1, PUT)); + REQUIRE_NOTHROW(proxy.Call("dac", {"vthreshold", "2100"}, -1, PUT)); // Reset dacs after test for (int i = 0; i != det.size(); ++i) { + det.setCounterMask(mask[i], {i}); det.setDAC(defs::VTH1, vth1[i], false, {i}); det.setDAC(defs::VTH2, vth2[i], false, {i}); det.setDAC(defs::VTH3, vth3[i], false, {i}); From daae52ca634ade14eeac234caaa5017e80e9e64d Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Thu, 27 May 2021 17:25:55 +0200 Subject: [PATCH 17/23] m3: vthreshold set/get only enabled counters but remember value, vth always overwrite, disable counter sets vth to 2800, enable counter sets saved values --- .../slsDetectorFunctionList.c | 107 ++++++++++-------- .../include/slsDetectorFunctionList.h | 3 + .../src/slsDetectorServer_funcs.c | 28 ----- .../tests/test-CmdProxy-mythen3.cpp | 64 ++++++----- 4 files changed, 101 insertions(+), 101 deletions(-) diff --git a/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c b/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c index 1bb6afa20..5aa9781fc 100644 --- a/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c +++ b/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c @@ -933,12 +933,17 @@ void setCounterMask(uint32_t arg) { } LOG(logINFO, ("\tUpdating Vth dacs\n")); + enum DACINDEX vthdacs[] = {M_VTH1, M_VTH2, M_VTH3}; for (int i = 0; i < NCOUNTERS; ++i) { // if change in enable if ((arg & (1 << i)) ^ (oldmask & (1 << i))) { - // will disable if counter disabled, else set corresponding vth dac - enum DACINDEX ind[] = {M_VTH1, M_VTH2, M_VTH3}; - setDAC(ind[i], vthEnabledVals[i], 0); + // disable, disable value + int value = DEFAULT_COUNTER_DISABLED_VTH_VAL; + // enable, set saved values + if (arg & (1 << i)) { + value = vthEnabledVals[i]; + } + setGeneralDAC(vthdacs[i], value, 0); } } } @@ -1262,51 +1267,52 @@ void setThresholdEnergy(int counterIndex, int eV) { /* parameters - dac, hv */ void setDAC(enum DACINDEX ind, int val, int mV) { + // invalid value if (val < 0) { return; } - // out of scope, NDAC + 1 for vthreshold if ((int)ind > NDAC + 1) { LOG(logERROR, ("Unknown dac index %d\n", ind)); return; } - if (ind == M_VTHRESHOLD) { - LOG(logINFO, - ("Setting Threshold voltages to %d %s\n", val, (mV ? "mv" : ""))); - setDAC(M_VTH1, val, mV); - setDAC(M_VTH2, val, mV); - setDAC(M_VTH3, val, mV); - return; - } - char *dac_names[] = {DAC_NAMES}; - - // remember vthx values and set 2800 if counter disabled - uint32_t counters = getCounterMask(); - int vthdacs[] = {M_VTH1, M_VTH2, M_VTH3}; - for (int i = 0; i < NCOUNTERS; ++i) { - if (vthdacs[i] == (int)ind) { - // remember enabled values for vthx - if (val != DEFAULT_COUNTER_DISABLED_VTH_VAL) { - int vthval = val; - if (mV) { - if (LTC2620_D_VoltageToDac(val, &vthval) == FAIL) { - return; + // threshold dacs (remember value, vthreshold: skip disabled) + if (ind == M_VTHRESHOLD || ind == M_VTH1 || ind == M_VTH2 || + ind == M_VTH3) { + char *dac_names[] = {DAC_NAMES}; + int vthdacs[] = {M_VTH1, M_VTH2, M_VTH3}; + uint32_t counters = getCounterMask(); + for (int i = 0; i < NCOUNTERS; ++i) { + if ((int)ind == vthdacs[i] || ind == M_VTHRESHOLD) { + int dacval = val; + // if not disabled value, remember value + if (dacval != DEFAULT_COUNTER_DISABLED_VTH_VAL) { + // convert mv to dac + if (mV) { + if (LTC2620_D_VoltageToDac(val, &dacval) == FAIL) { + return; + } } + vthEnabledVals[i] = dacval; + LOG(logINFO, + ("Remembering %s [%d]\n", dac_names[ind], dacval)); } - vthEnabledVals[i] = vthval; - LOG(logINFO, ("Remembering %s [%d]\n", dac_names[ind], vthval)); - } - // set vthx to disable val, if counter disabled - if (!(counters & (1 << i))) { - LOG(logINFO, ("Disabling %s\n", dac_names[ind])); - val = DEFAULT_COUNTER_DISABLED_VTH_VAL; - mV = 0; + // if vthreshold,skip for disabled counters + if ((ind == M_VTHRESHOLD) && (!(counters & (1 << i)))) { + continue; + } + setGeneralDAC(vthdacs[i], val, mV); } } + return; } + setGeneralDAC(ind, val, mV); +} + +void setGeneralDAC(enum DACINDEX ind, int val, int mV) { + char *dac_names[] = {DAC_NAMES}; LOG(logDEBUG1, ("Setting dac[%d - %s]: %d %s \n", (int)ind, dac_names[ind], val, (mV ? "mV" : "dac units"))); int dacval = val; @@ -1334,20 +1340,29 @@ void setDAC(enum DACINDEX ind, int val, int mV) { int getDAC(enum DACINDEX ind, int mV) { if (ind == M_VTHRESHOLD) { - int ret[NCOUNTERS] = {0}; - ret[0] = getDAC(M_VTH1, mV); - ret[1] = getDAC(M_VTH2, mV); - ret[2] = getDAC(M_VTH3, mV); - - if ((ret[0] == ret[1]) && (ret[1] == ret[2])) { - LOG(logINFO, ("\tvthreshold match\n")); - return ret[0]; - } else { - LOG(logERROR, ("\tvthreshold mismatch vth1:%d vth2:%d " - "vth3:%d\n", - ret[0], ret[1], ret[2])); - return -1; + int ret = -1, ret1 = -1; + // get only for enabled counters + uint32_t counters = getCounterMask(); + int vthdacs[] = {M_VTH1, M_VTH2, M_VTH3}; + for (int i = 0; i < NCOUNTERS; ++i) { + if (counters & (1 << i)) { + ret1 = getDAC(vthdacs[i], mV); + // first enabled counter + if (ret == -1) { + ret = ret1; + } + // different values for enabled counters + else if (ret1 != ret) { + return -1; + } + } } + if (ret == -1) { + LOG(logERROR, ("\tvthreshold mismatch (of enabled counters)\n")); + } else { + LOG(logINFO, ("\tvthreshold match %d\n", ret)); + } + return ret; } if (!mV) { diff --git a/slsDetectorServers/slsDetectorServer/include/slsDetectorFunctionList.h b/slsDetectorServers/slsDetectorServer/include/slsDetectorFunctionList.h index 1f18cd371..015edfe82 100644 --- a/slsDetectorServers/slsDetectorServer/include/slsDetectorFunctionList.h +++ b/slsDetectorServers/slsDetectorServer/include/slsDetectorFunctionList.h @@ -317,6 +317,9 @@ int setOnChipDAC(enum ONCHIP_DACINDEX ind, int chipIndex, int val); int getOnChipDAC(enum ONCHIP_DACINDEX ind, int chipIndex); #endif void setDAC(enum DACINDEX ind, int val, int mV); +#ifdef MYTHEN3D +void setGeneralDAC(enum DACINDEX ind, int val, int mV); +#endif int getDAC(enum DACINDEX ind, int mV); int getMaxDacSteps(); #if defined(CHIPTESTBOARDD) || defined(MOENCHD) diff --git a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c index 17a31bf0c..b73621f6b 100644 --- a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c +++ b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c @@ -1238,34 +1238,6 @@ int validateAndSetDac(enum dacIndex ind, int val, int mV) { ret = OK; } else { ret = FAIL; -#ifdef MYTHEN3D - // give a different exception message if counter not enabled - int isCounterError = 0; - if (serverDacIndex == M_VTHRESHOLD || - serverDacIndex == M_VTH1 || serverDacIndex == M_VTH2 || - serverDacIndex == M_VTH3) { - uint32_t counter_retval = getCounterMask(); - // vthreshold, all counters should have been enabled - if (serverDacIndex == M_VTHRESHOLD) { - if (counter_retval != MAX_COUNTER_MSK) { - isCounterError = 1; - } - } - // corresponding counter should have been enabled - else { - int vthdacs[] = {M_VTH1, M_VTH2, M_VTH3}; - for (int i = 0; i < NCOUNTERS; ++i) { - if ((vthdacs[i] == (int)serverDacIndex) && - (!(counter_retval & (1 << i)))) { - isCounterError = 1; - } - } - } - } - if (isCounterError) { - strcpy(mess, "Could not set dac as counter disabled\n"); - } else -#endif sprintf(mess, "Setting dac %d : wrote %d but read %d\n", serverDacIndex, val, retval); LOG(logERROR, (mess)); diff --git a/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp b/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp index e1dc2bfd2..8c3650ee7 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp @@ -25,7 +25,7 @@ TEST_CASE("Setting and reading back MYTHEN3 dacs", "[.cmd][.dacs]") { CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); if (det_type == defs::MYTHEN3) { - SECTION("vcassh") { test_dac(defs::VCASSH, "vcassh", 1200); } + /*SECTION("vcassh") { test_dac(defs::VCASSH, "vcassh", 1200); } SECTION("vth2") { test_dac(defs::VTH2, "vth2", 2800); } SECTION("vrshaper") { test_dac(defs::VRSHAPER, "vrshaper", 1280); } SECTION("vrshaper_n") { @@ -42,7 +42,7 @@ TEST_CASE("Setting and reading back MYTHEN3 dacs", "[.cmd][.dacs]") { SECTION("vishaper") { test_dac(defs::VISHAPER, "vishaper", 1708); } SECTION("vcal_p") { test_dac(defs::VCAL_P, "vcal_p", 1712); } SECTION("vtrim") { test_dac(defs::VTRIM, "vtrim", 2800); } - SECTION("vdcsh") { test_dac(defs::VDCSH, "vdcsh", 800); } + SECTION("vdcsh") { test_dac(defs::VDCSH, "vdcsh", 800); }*/ SECTION("vthreshold") { // Read out individual vcmp to be able to reset after // the test is done @@ -62,39 +62,49 @@ TEST_CASE("Setting and reading back MYTHEN3 dacs", "[.cmd][.dacs]") { REQUIRE(oss.str() == "dac vthreshold 1234\n"); } - // change vthreshold when counters disabled + // disabling counters change vth values proxy.Call("counters", {"0"}, -1, PUT); - REQUIRE_NOTHROW(proxy.Call("dac", {"vth1", "2100"}, -1, PUT)); - REQUIRE_THROWS(proxy.Call("dac", {"vth2", "2100"}, -1, PUT)); - REQUIRE_THROWS(proxy.Call("dac", {"vth3", "2100"}, -1, PUT)); - REQUIRE_THROWS(proxy.Call("dac", {"vthreshold", "2100"}, -1, PUT)); - proxy.Call("counters", {"0", "2"}, -1, PUT); - REQUIRE_NOTHROW(proxy.Call("dac", {"vth1", "2100"}, -1, PUT)); - REQUIRE_THROWS(proxy.Call("dac", {"vth2", "2100"}, -1, PUT)); - REQUIRE_NOTHROW(proxy.Call("dac", {"vth3", "2100"}, -1, PUT)); - REQUIRE_THROWS(proxy.Call("dac", {"vthreshold", "2200"}, -1, PUT)); - proxy.Call("counters", {"0", "1", "2"}, -1, PUT); - // should remember the previous values when counter set { - std::ostringstream oss; - proxy.Call("dac", {"vth1"}, -1, GET, oss); - REQUIRE(oss.str() == "dac vth1 2200\n"); + std::ostringstream oss1, oss2, oss3; + proxy.Call("dac", {"vth1"}, -1, GET, oss1); + REQUIRE(oss1.str() == "dac vth1 1234\n"); + proxy.Call("dac", {"vth2"}, -1, GET, oss2); + REQUIRE(oss2.str() == "dac vth2 2800\n"); + proxy.Call("dac", {"vth3"}, -1, GET, oss3); + REQUIRE(oss3.str() == "dac vth3 2800\n"); } + // vthreshold changes vth for only enabled counters + REQUIRE_NOTHROW(proxy.Call("dac", {"vthreshold", "2100"}, -1, PUT)); { std::ostringstream oss; + proxy.Call("dac", {"vthreshold"}, -1, GET, oss); + REQUIRE(oss.str() == "dac vthreshold 2100\n"); + std::ostringstream oss1, oss2, oss3; + proxy.Call("dac", {"vth1"}, -1, GET, oss1); + REQUIRE(oss1.str() == "dac vth1 2100\n"); + proxy.Call("dac", {"vth2"}, -1, GET, oss2); + REQUIRE(oss2.str() == "dac vth2 2800\n"); + proxy.Call("dac", {"vth3"}, -1, GET, oss3); + REQUIRE(oss3.str() == "dac vth3 2800\n"); + } + // vth overwrite vth even if counter disabled + { + std::ostringstream oss; + proxy.Call("dac", {"vth2", "2200"}, -1, PUT); proxy.Call("dac", {"vth2"}, -1, GET, oss); REQUIRE(oss.str() == "dac vth2 2200\n"); } + // counters enabled, sets remembered values + proxy.Call("counters", {"0", "1", "2"}, -1, PUT); { - std::ostringstream oss; - proxy.Call("dac", {"vth3"}, -1, GET, oss); - REQUIRE(oss.str() == "dac vth3 2200\n"); + std::ostringstream oss1, oss2, oss3; + proxy.Call("dac", {"vth1"}, -1, GET, oss1); + REQUIRE(oss1.str() == "dac vth1 2100\n"); + proxy.Call("dac", {"vth2"}, -1, GET, oss2); + REQUIRE(oss2.str() == "dac vth2 2200\n"); + proxy.Call("dac", {"vth3"}, -1, GET, oss3); + REQUIRE(oss3.str() == "dac vth3 2100\n"); } - REQUIRE_NOTHROW(proxy.Call("dac", {"vth1", "2100"}, -1, PUT)); - REQUIRE_NOTHROW(proxy.Call("dac", {"vth2", "2100"}, -1, PUT)); - REQUIRE_NOTHROW(proxy.Call("dac", {"vth3", "2100"}, -1, PUT)); - REQUIRE_NOTHROW(proxy.Call("dac", {"vthreshold", "2100"}, -1, PUT)); - // Reset dacs after test for (int i = 0; i != det.size(); ++i) { det.setCounterMask(mask[i], {i}); @@ -103,7 +113,7 @@ TEST_CASE("Setting and reading back MYTHEN3 dacs", "[.cmd][.dacs]") { det.setDAC(defs::VTH3, vth3[i], false, {i}); } } - REQUIRE_THROWS(proxy.Call("dac", {"vsvp"}, -1, GET)); + /*REQUIRE_THROWS(proxy.Call("dac", {"vsvp"}, -1, GET)); REQUIRE_THROWS(proxy.Call("dac", {"vsvn"}, -1, GET)); // REQUIRE_THROWS(proxy.Call("dac", {"vtrim"}, -1, GET)); // REQUIRE_THROWS(proxy.Call("dac", {"vrpreamp"}, -1, GET)); @@ -146,7 +156,7 @@ TEST_CASE("Setting and reading back MYTHEN3 dacs", "[.cmd][.dacs]") { REQUIRE_THROWS(proxy.Call("dac", {"vb_comp"}, -1, GET)); REQUIRE_THROWS(proxy.Call("dac", {"vb_pixbuf"}, -1, GET)); REQUIRE_THROWS(proxy.Call("dac", {"vin_com"}, -1, GET)); - REQUIRE_THROWS(proxy.Call("dac", {"vdd_prot"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vdd_prot"}, -1, GET));*/ } } From c5ee7ac958a0edda933cd2efa6dd53415f1f2fbf Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Fri, 28 May 2021 15:37:32 +0200 Subject: [PATCH 18/23] tests updated --- .../tests/test-CmdProxy-mythen3.cpp | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp b/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp index 8c3650ee7..e6d0b63bc 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp @@ -25,7 +25,7 @@ TEST_CASE("Setting and reading back MYTHEN3 dacs", "[.cmd][.dacs]") { CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); if (det_type == defs::MYTHEN3) { - /*SECTION("vcassh") { test_dac(defs::VCASSH, "vcassh", 1200); } + SECTION("vcassh") { test_dac(defs::VCASSH, "vcassh", 1200); } SECTION("vth2") { test_dac(defs::VTH2, "vth2", 2800); } SECTION("vrshaper") { test_dac(defs::VRSHAPER, "vrshaper", 1280); } SECTION("vrshaper_n") { @@ -42,7 +42,7 @@ TEST_CASE("Setting and reading back MYTHEN3 dacs", "[.cmd][.dacs]") { SECTION("vishaper") { test_dac(defs::VISHAPER, "vishaper", 1708); } SECTION("vcal_p") { test_dac(defs::VCAL_P, "vcal_p", 1712); } SECTION("vtrim") { test_dac(defs::VTRIM, "vtrim", 2800); } - SECTION("vdcsh") { test_dac(defs::VDCSH, "vdcsh", 800); }*/ + SECTION("vdcsh") { test_dac(defs::VDCSH, "vdcsh", 800); } SECTION("vthreshold") { // Read out individual vcmp to be able to reset after // the test is done @@ -105,6 +105,17 @@ TEST_CASE("Setting and reading back MYTHEN3 dacs", "[.cmd][.dacs]") { proxy.Call("dac", {"vth3"}, -1, GET, oss3); REQUIRE(oss3.str() == "dac vth3 2100\n"); } + // counters enabled, sets remembered values + proxy.Call("counters", {"0", "1"}, -1, PUT); + { + std::ostringstream oss1, oss2, oss3; + proxy.Call("dac", {"vth1"}, -1, GET, oss1); + REQUIRE(oss1.str() == "dac vth1 2100\n"); + proxy.Call("dac", {"vth2"}, -1, GET, oss2); + REQUIRE(oss2.str() == "dac vth2 2200\n"); + proxy.Call("dac", {"vth3"}, -1, GET, oss3); + REQUIRE(oss3.str() == "dac vth3 2800\n"); + } // Reset dacs after test for (int i = 0; i != det.size(); ++i) { det.setCounterMask(mask[i], {i}); @@ -113,7 +124,7 @@ TEST_CASE("Setting and reading back MYTHEN3 dacs", "[.cmd][.dacs]") { det.setDAC(defs::VTH3, vth3[i], false, {i}); } } - /*REQUIRE_THROWS(proxy.Call("dac", {"vsvp"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dac", {"vsvp"}, -1, GET)); REQUIRE_THROWS(proxy.Call("dac", {"vsvn"}, -1, GET)); // REQUIRE_THROWS(proxy.Call("dac", {"vtrim"}, -1, GET)); // REQUIRE_THROWS(proxy.Call("dac", {"vrpreamp"}, -1, GET)); @@ -156,7 +167,7 @@ TEST_CASE("Setting and reading back MYTHEN3 dacs", "[.cmd][.dacs]") { REQUIRE_THROWS(proxy.Call("dac", {"vb_comp"}, -1, GET)); REQUIRE_THROWS(proxy.Call("dac", {"vb_pixbuf"}, -1, GET)); REQUIRE_THROWS(proxy.Call("dac", {"vin_com"}, -1, GET)); - REQUIRE_THROWS(proxy.Call("dac", {"vdd_prot"}, -1, GET));*/ + REQUIRE_THROWS(proxy.Call("dac", {"vdd_prot"}, -1, GET)); } } From 65b022a946f178999c9ee5f8884ca591053e5c96 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Fri, 28 May 2021 15:39:02 +0200 Subject: [PATCH 19/23] binaries in --- .../bin/mythen3DetectorServer_developer | Bin 242144 -> 242176 bytes slsSupportLib/include/sls/versionAPI.h | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer b/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer index dc1b8ff79ad5cbc8118577b340efd9d56b2fdee9..dc2eceed399404f0e05182250560e2b5e18cecdc 100755 GIT binary patch delta 54339 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

d`$X}Zs|X|j$tW!B=1;JJuznp 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

y;Alu7Fc1cj?PMTj-^87A_^`pzRT@sY_ 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 Date: Tue, 8 Jun 2021 09:47:15 +0200 Subject: [PATCH 20/23] refactor minor --- .../slsDetectorServer/include/slsDetectorFunctionList.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/slsDetectorServers/slsDetectorServer/include/slsDetectorFunctionList.h b/slsDetectorServers/slsDetectorServer/include/slsDetectorFunctionList.h index 015edfe82..ee230f66d 100644 --- a/slsDetectorServers/slsDetectorServer/include/slsDetectorFunctionList.h +++ b/slsDetectorServers/slsDetectorServer/include/slsDetectorFunctionList.h @@ -25,7 +25,7 @@ #include "blackfin.h" #endif -#if defined(MYTHEN3D) +#ifdef MYTHEN3D #include "mythen3.h" #endif From 6e9ad425f809b0bb0ffad3bf55be6ec579a04a22 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Tue, 8 Jun 2021 09:49:10 +0200 Subject: [PATCH 21/23] binaries in --- .../bin/mythen3DetectorServer_developer | Bin 242176 -> 242176 bytes slsSupportLib/include/sls/versionAPI.h | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer b/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer index dc2eceed399404f0e05182250560e2b5e18cecdc..f05d63bc2e6607b28a2bd06dee0ff89f6c98deae 100755 GIT binary patch delta 45 zcmZp8!q@PGZ-b~ZW7A|mW%bFn$^wi{oBfodD;b-bSIuc(HHQ(1nYOQ*!yG0G0ENjB AO#lD@ delta 45 zcmZp8!q@PGZ-b~Zqt|3VW%bFn$^wjDoBfodD;d3-SIuc(HHQ(1nYOQ*!yG0G0Cc$! Ar2qf` diff --git a/slsSupportLib/include/sls/versionAPI.h b/slsSupportLib/include/sls/versionAPI.h index 0e89017dc..b3af5dc52 100644 --- a/slsSupportLib/include/sls/versionAPI.h +++ b/slsSupportLib/include/sls/versionAPI.h @@ -9,4 +9,4 @@ #define APILIB 0x210225 #define APIRECEIVER 0x210225 #define APIGUI 0x210225 -#define APIMYTHEN3 0x210528 +#define APIMYTHEN3 0x210608 From e00c62a7a5a1221dcf8c8afc8b7b8b6e1b5837a1 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Tue, 8 Jun 2021 11:37:11 +0200 Subject: [PATCH 22/23] m3 server: fixed absolute addressing for isMaster --- slsDetectorServers/mythen3DetectorServer/RegisterDefs.h | 3 +++ .../mythen3DetectorServer/slsDetectorFunctionList.c | 5 ++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/slsDetectorServers/mythen3DetectorServer/RegisterDefs.h b/slsDetectorServers/mythen3DetectorServer/RegisterDefs.h index a07a24a50..0a04b7916 100644 --- a/slsDetectorServers/mythen3DetectorServer/RegisterDefs.h +++ b/slsDetectorServers/mythen3DetectorServer/RegisterDefs.h @@ -109,6 +109,9 @@ #define SYSTEM_STATUS_R_PLL_LCKD_MSK (0x00000001 << SYSTEM_STATUS_R_PLL_LCKD_OFST) #define SYSTEM_STATUS_RDO_PLL_LCKD_OFST (2) #define SYSTEM_STATUS_RDO_PLL_LCKD_MSK (0x00000001 << SYSTEM_STATUS_RDO_PLL_LCKD_OFST) +#define SYSTEM_STATUS_SLV_BRD_DTCT_OFST (31) +#define SYSTEM_STATUS_SLV_BRD_DTCT_MSK (0x00000001 << SYSTEM_STATUS_SLV_BRD_DTCT_OFST) + /* Config RW regiseter */ #define CONFIG_REG (0x20 * REG_OFFSET + BASE_CONTROL) diff --git a/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c b/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c index 5aa9781fc..aa7c0b88f 100644 --- a/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c +++ b/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c @@ -1393,7 +1393,10 @@ int setHighVoltage(int val) { return highvoltage; } -int isMaster() { return !(bus_r(0x18) >> 31); } +int isMaster() { + return !((bus_r(SYSTEM_STATUS_REG) & SYSTEM_STATUS_SLV_BRD_DTCT_MSK) >> + SYSTEM_STATUS_SLV_BRD_DTCT_OFST); +} /* parameters - timing */ void setTiming(enum timingMode arg) { From 6f54291a84a7a4ab763486a269c4b45f248d5165 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Tue, 8 Jun 2021 12:14:06 +0200 Subject: [PATCH 23/23] documentation, wip --- python/slsdet/detector.py | 3 ++- slsDetectorSoftware/include/sls/Detector.h | 7 ++++--- slsDetectorSoftware/src/CmdProxy.cpp | 17 +++++++++-------- slsDetectorSoftware/src/HelpDacs.h | 10 ++++++---- 4 files changed, 21 insertions(+), 16 deletions(-) diff --git a/python/slsdet/detector.py b/python/slsdet/detector.py index f03551ce3..061e70193 100755 --- a/python/slsdet/detector.py +++ b/python/slsdet/detector.py @@ -1749,7 +1749,7 @@ class Detector(CppDetectorApi): Note ---- [Eiger] Sets vcmp_ll, vcmp_lr, vcmp_rl, vcmp_rr and vcp to the same value. \n - [Mythen3] Sets vth1, vth2 and vth3 to the same value. + [Mythen3] Sets vth1, vth2 and vth3 to the same value for enabled counters. """ return self.getDAC(dacIndex.VTHRESHOLD) @@ -2381,6 +2381,7 @@ class Detector(CppDetectorApi): Note ----- Each element in list can be 0 - 2 and must be non repetitive. + Enabling counters sets vth dacs to remembered values and disabling sets them to disabled values. Example ----------- diff --git a/slsDetectorSoftware/include/sls/Detector.h b/slsDetectorSoftware/include/sls/Detector.h index ca93b617b..434c391e4 100644 --- a/slsDetectorSoftware/include/sls/Detector.h +++ b/slsDetectorSoftware/include/sls/Detector.h @@ -1273,7 +1273,9 @@ class Detector { /** [Mythen3] */ Result getCounterMask(Positions pos = {}) const; - /** [Mythen3] countermask bit set for each counter index enabled */ + /** [Mythen3] countermask bit set for each counter index enabled. Enabling + * counters sets vth dacs to remembered values and disabling sets them to + * disabled values. Setting vth dacs explicitly overwrites them. */ void setCounterMask(uint32_t countermask, Positions pos = {}); Result getNumberOfGates(Positions pos = {}) const; @@ -1308,8 +1310,7 @@ class Detector { Result getMaster(Positions pos = {}) const; - - //TODO! check if we really want to expose this !!!!! + // TODO! check if we really want to expose this !!!!! Result getChipStatusRegister(Positions pos = {}) const; void setGainCaps(int caps, Positions pos = {}); diff --git a/slsDetectorSoftware/src/CmdProxy.cpp b/slsDetectorSoftware/src/CmdProxy.cpp index 183c94490..629bd4233 100644 --- a/slsDetectorSoftware/src/CmdProxy.cpp +++ b/slsDetectorSoftware/src/CmdProxy.cpp @@ -1867,7 +1867,8 @@ std::string CmdProxy::Counters(int action) { if (action == defs::HELP_ACTION) { os << "[i0] [i1] [i2]... \n\t[Mythen3] List of counters indices " "enabled. Each element in list can be 0 - 2 and must be non " - "repetitive." + "repetitive. Enabling counters sets vth dacs to remembered " + "values and disabling sets them to disabled values." << '\n'; } else if (action == defs::GET_ACTION) { if (!args.empty()) { @@ -1981,12 +1982,12 @@ std::string CmdProxy::GateDelay(int action) { return os.str(); } - -std::string CmdProxy::GainCaps(int action){ +std::string CmdProxy::GainCaps(int action) { std::ostringstream os; os << cmd << ' '; if (action == defs::HELP_ACTION) { - os << "[cap1, cap2, ...]\n\t[Mythen3] gain, options: C10pre, C15sh, C30sh, C50sh, C225ACsh, C15pre" + os << "[cap1, cap2, ...]\n\t[Mythen3] gain, options: C10pre, C15sh, " + "C30sh, C50sh, C225ACsh, C15pre" << '\n'; } else if (action == defs::GET_ACTION) { if (!args.empty()) @@ -1994,22 +1995,22 @@ std::string CmdProxy::GainCaps(int action){ auto tmp = det->getGainCaps(); sls::Result csr; - for (auto val : tmp){ + for (auto val : tmp) { if (val) csr.push_back(static_cast(val)); } - + os << OutString(csr) << '\n'; } else if (action == defs::PUT_ACTION) { if (args.size() < 1) { WrongNumberOfParameters(1); } int caps = 0; - for (const auto& arg:args){ + for (const auto &arg : args) { if (arg != "0") caps |= sls::StringTo(arg); } - + det->setGainCaps(caps); os << OutString(args) << '\n'; } else { diff --git a/slsDetectorSoftware/src/HelpDacs.h b/slsDetectorSoftware/src/HelpDacs.h index 71f2f9c4d..93d2af134 100644 --- a/slsDetectorSoftware/src/HelpDacs.h +++ b/slsDetectorSoftware/src/HelpDacs.h @@ -10,7 +10,8 @@ std::string GetHelpDac(std::string dac) { "[dac or mV value][(optional unit) mV] \n\t[Eiger][Mythen3] " "Detector threshold voltage for single photon counters.\n\t[Eiger] " "Sets vcmp_ll, vcmp_lr, vcmp_rl, vcmp_rr and vcp to the same " - "value. \n\t[Mythen3] Sets vth1, vth2 and vth3 to the same value."); + "value. \n\t[Mythen3] Sets vth1, vth2 and vth3 to the same value " + "for enabled counters."); } if (dac == "vsvp") { return std::string( @@ -134,17 +135,18 @@ std::string GetHelpDac(std::string dac) { if (dac == "vth1") { return std::string( "[dac or mV value][(optional unit) mV] \n\t[Mythen3] Dac for first " - "detector threshold voltage."); + "detector threshold voltage. Overwrites even if counter disabled."); } if (dac == "vth2") { return std::string( "[dac or mV value][(optional unit) mV] \n\t[Mythen3] Dac for " - "second detector threshold voltage."); + "second detector threshold voltage. Overwrites even if counter " + "disabled."); } if (dac == "vth3") { return std::string( "[dac or mV value][(optional unit) mV] \n\t[Mythen3] Dac for third " - "detector threshold voltage."); + "detector threshold voltage. Overwrites even if counter disabled."); } if (dac == "vcal_n") { return std::string(