From b74ce95b245f174f12ff3b5b2a47d2c11c2259de Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Tue, 4 Jun 2019 12:10:26 +0200 Subject: [PATCH] removed colon in commands. affects dac, adc and extsig --- .../bin/gotthardDetectorServer_developer | Bin 0 -> 117040 bytes .../slsDetectorServer_funcs.c | 27 +++++------- .../include/multiSlsDetector.h | 3 +- slsDetectorSoftware/include/slsDetector.h | 3 +- slsDetectorSoftware/src/multiSlsDetector.cpp | 6 +-- slsDetectorSoftware/src/slsDetector.cpp | 10 ++--- .../src/slsDetectorCommand.cpp | 41 +++++++++--------- slsSupportLib/include/versionAPI.h | 2 +- 8 files changed, 42 insertions(+), 50 deletions(-) create mode 100755 slsDetectorServers/gotthardDetectorServer/bin/gotthardDetectorServer_developer diff --git a/slsDetectorServers/gotthardDetectorServer/bin/gotthardDetectorServer_developer b/slsDetectorServers/gotthardDetectorServer/bin/gotthardDetectorServer_developer new file mode 100755 index 0000000000000000000000000000000000000000..fd0648a485d237725a72548828824339b414c1ee GIT binary patch literal 117040 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 0) - modeNotImplemented("Signal index", signalindex); - else { - // set - if ((flag != GET_EXTERNAL_SIGNAL_FLAG) && (Server_VerifyLock() == OK)) { - setExtSignal(flag); - } - // get - retval = getExtSignal(); - validate((int)flag, (int)retval, "set external signal flag", DEC); - FILE_LOG(logDEBUG1, ("External Signal Flag: %d\n", retval)); + // set + if ((flag != GET_EXTERNAL_SIGNAL_FLAG) && (Server_VerifyLock() == OK)) { + setExtSignal(flag); } + // get + retval = getExtSignal(); + validate((int)flag, (int)retval, "set external signal flag", DEC); + FILE_LOG(logDEBUG1, ("External Signal Flag: %d\n", retval)); #endif return Server_SendResult(file_des, INT32, UPDATE, &retval, sizeof(retval)); } diff --git a/slsDetectorSoftware/include/multiSlsDetector.h b/slsDetectorSoftware/include/multiSlsDetector.h index 28a56a08b..a4617cd38 100755 --- a/slsDetectorSoftware/include/multiSlsDetector.h +++ b/slsDetectorSoftware/include/multiSlsDetector.h @@ -821,13 +821,12 @@ class multiSlsDetector : public virtual slsDetectorDefs { * Set/get external signal flags (to specify triggerinrising edge etc) * (Gotthard, Mythen) * @param pol external signal flag (-1 gets) - * @param signalindex singal index (0 - 3) * @param detPos -1 for all detectors in list or specific detector position * @returns current timing mode */ externalSignalFlag setExternalSignalFlags(externalSignalFlag pol = GET_EXTERNAL_SIGNAL_FLAG, - int signalindex = 0, int detPos = -1); + int detPos = -1); /** * Set/get readout flags (Eiger, Mythen) diff --git a/slsDetectorSoftware/include/slsDetector.h b/slsDetectorSoftware/include/slsDetector.h index 99da58602..913d03f14 100755 --- a/slsDetectorSoftware/include/slsDetector.h +++ b/slsDetectorSoftware/include/slsDetector.h @@ -814,10 +814,9 @@ class slsDetector : public virtual slsDetectorDefs{ /** * Set/get external signal flags (to specify triggerinrising edge etc) (Gotthard, Mythen) * @param pol external signal flag (-1 gets) - * @param signalindex singal index (0 - 3) * @returns current timing mode */ - externalSignalFlag setExternalSignalFlags(externalSignalFlag pol = GET_EXTERNAL_SIGNAL_FLAG, int signalindex = 0); + externalSignalFlag setExternalSignalFlags(externalSignalFlag pol = GET_EXTERNAL_SIGNAL_FLAG); /** * Set/get readout flags (Eiger, Mythen) diff --git a/slsDetectorSoftware/src/multiSlsDetector.cpp b/slsDetectorSoftware/src/multiSlsDetector.cpp index ddbb0ab26..1acf99192 100755 --- a/slsDetectorSoftware/src/multiSlsDetector.cpp +++ b/slsDetectorSoftware/src/multiSlsDetector.cpp @@ -1352,14 +1352,14 @@ multiSlsDetector::setExternalCommunicationMode(externalCommunicationMode pol, in } slsDetectorDefs::externalSignalFlag -multiSlsDetector::setExternalSignalFlags(externalSignalFlag pol, int signalindex, int detPos) { +multiSlsDetector::setExternalSignalFlags(externalSignalFlag pol, int detPos) { // single if (detPos >= 0) { - return detectors[detPos]->setExternalSignalFlags(pol, signalindex); + return detectors[detPos]->setExternalSignalFlags(pol); } // multi - auto r = parallelCall(&slsDetector::setExternalSignalFlags, pol, signalindex); + auto r = parallelCall(&slsDetector::setExternalSignalFlags, pol); return sls::minusOneIfDifferent(r); } diff --git a/slsDetectorSoftware/src/slsDetector.cpp b/slsDetectorSoftware/src/slsDetector.cpp index 5e5757c03..0e4924e84 100755 --- a/slsDetectorSoftware/src/slsDetector.cpp +++ b/slsDetectorSoftware/src/slsDetector.cpp @@ -1707,15 +1707,13 @@ slsDetector::setExternalCommunicationMode(externalCommunicationMode pol) { } slsDetectorDefs::externalSignalFlag -slsDetector::setExternalSignalFlags(externalSignalFlag pol, int signalindex) { +slsDetector::setExternalSignalFlags(externalSignalFlag pol) { int fnum = F_SET_EXTERNAL_SIGNAL_FLAG; - int args[]{signalindex, pol}; auto retval = GET_EXTERNAL_SIGNAL_FLAG; - FILE_LOG(logDEBUG1) << "Setting signal " << signalindex << " to flag " - << pol; + FILE_LOG(logDEBUG1) << "Setting signal flag to " << pol; if (shm()->onlineFlag == ONLINE_FLAG) { - sendToDetector(fnum, args, retval); - FILE_LOG(logDEBUG1) << "Ext Signal (" << signalindex << "): " << retval; + sendToDetector(fnum, pol, retval); + FILE_LOG(logDEBUG1) << "Ext Signal: " << retval; } return retval; } diff --git a/slsDetectorSoftware/src/slsDetectorCommand.cpp b/slsDetectorSoftware/src/slsDetectorCommand.cpp index 78193c807..e9ad54992 100755 --- a/slsDetectorSoftware/src/slsDetectorCommand.cpp +++ b/slsDetectorSoftware/src/slsDetectorCommand.cpp @@ -383,7 +383,7 @@ slsDetectorCommand::slsDetectorCommand(multiSlsDetector *det) { ++i; /*! \page config - - extsig:[i] [flag] sets/gets the mode of the external signal i. Options: \c off, \c gate_in_active_high, \c gate_in_active_low, \c trigger_in_rising_edge, \c trigger_in_falling_edge, + - extsig [flag] sets/gets the mode of the external signal. Options: \c off, \c gate_in_active_high, \c gate_in_active_low, \c trigger_in_rising_edge, \c trigger_in_falling_edge, \c ro_trigger_in_rising_edge, \c ro_trigger_in_falling_edge, \c gate_out_active_high, \c gate_out_active_low, \c trigger_out_rising_edge, \c trigger_out_falling_edge, \c ro_trigger_out_rising_edge, \c ro_trigger_out_falling_edge. \n Used in GOTTHARDonly. \c Returns \c (string) */ @@ -3879,11 +3879,14 @@ std::string slsDetectorCommand::cmdDAC(int narg, const char * const args[], int char answer[1000]; int mode = 0; - int idac = -1; - if (sscanf(args[0], "dac:%d", &idac) == 1) { - //printf("chiptestboard!\n"); + if (cmd == "dac") { + int idac = -1; + if (sscanf(args[1], "%d", &idac) != 1) { + return std::string("Could not scan dac index") + std::string(args[1]); + } dac = (dacIndex)idac; - } else if (cmd == "adcvpp") + } + else if (cmd == "adcvpp") dac = ADC_VPP; else if (cmd == "vthreshold") dac = THRESHOLD; @@ -4218,8 +4221,6 @@ std::string slsDetectorCommand::helpDAC(int action) { std::string slsDetectorCommand::cmdADC(int narg, const char * const args[], int action, int detPos) { dacIndex adc; - int idac; - // double val=-1; char answer[1000]; if (action == HELP_ACTION) @@ -4227,13 +4228,18 @@ std::string slsDetectorCommand::cmdADC(int narg, const char * const args[], int else if (action == PUT_ACTION) return std::string("cannot set ") + cmd; - if (sscanf(args[0],"adc:%d",&idac)==1) { - // printf("chiptestboard!\n"); - adc=(dacIndex)(idac+SLOW_ADC0); - if (idac < 0 || idac > SLOW_ADC_TEMP - SLOW_ADC0) + if (cmd == "adc") { + int idac = -1; + if (sscanf(args[1], "%d", &idac) != 1) { + return std::string("Could not scan adc index") + std::string(args[1]); + } + if (idac < 0 || idac > SLOW_ADC_TEMP - SLOW_ADC0) { return (std::string ("cannot set adc, must be between ") + std::to_string(0) + std::string (" and ") + std::to_string(SLOW_ADC_TEMP - SLOW_ADC0)); - } else if (cmd=="temp_adc") + } + adc = (dacIndex)(idac + SLOW_ADC0); + } + else if (cmd=="temp_adc") adc=TEMPERATURE_ADC; else if (cmd=="temp_fpga") adc=TEMPERATURE_FPGA; @@ -4817,11 +4823,6 @@ std::string slsDetectorCommand::cmdAdvanced(int narg, const char * const args[], } else if (cmd == "extsig") { externalSignalFlag flag = GET_EXTERNAL_SIGNAL_FLAG; - int is = -1; - if (sscanf(args[0], "extsig:%d", &is)) - ; - else - return std::string("could not scan signal number ") + std::string(args[0]); if (action == PUT_ACTION) { flag = myDet->externalSignalType(args[1]); @@ -4830,7 +4831,7 @@ std::string slsDetectorCommand::cmdAdvanced(int narg, const char * const args[], } myDet->setOnline(ONLINE_FLAG, detPos); - return myDet->externalSignalType(myDet->setExternalSignalFlags(flag, is, detPos)); + return myDet->externalSignalType(myDet->setExternalSignalFlags(flag, detPos)); } else if (cmd == "programfpga") { if (action == GET_ACTION) @@ -4955,7 +4956,7 @@ std::string slsDetectorCommand::helpAdvanced(int action) { std::ostringstream os; if (action == PUT_ACTION || action == HELP_ACTION) { - os << "extsig:i mode \t sets the mode of the external signal i. can be \n \t \t \t off, \n \t \t \t gate_in_active_high, \n \t \t \t gate_in_active_low, \n \t \t \t trigger_in_rising_edge, \n \t \t \t trigger_in_falling_edge, \n \t \t \t ro_trigger_in_rising_edge, \n \t \t \t ro_trigger_in_falling_edge, \n \t \t \t gate_out_active_high, \n \t \t \t gate_out_active_low, \n \t \t \t trigger_out_rising_edge, \n \t \t \t trigger_out_falling_edge, \n \t \t \t ro_trigger_out_rising_edge, \n \t \t \t ro_trigger_out_falling_edge" << std::endl; + os << "extsig mode \t sets the mode of the external signal. can be \n \t \t \t off, \n \t \t \t gate_in_active_high, \n \t \t \t gate_in_active_low, \n \t \t \t trigger_in_rising_edge, \n \t \t \t trigger_in_falling_edge, \n \t \t \t ro_trigger_in_rising_edge, \n \t \t \t ro_trigger_in_falling_edge, \n \t \t \t gate_out_active_high, \n \t \t \t gate_out_active_low, \n \t \t \t trigger_out_rising_edge, \n \t \t \t trigger_out_falling_edge, \n \t \t \t ro_trigger_out_rising_edge, \n \t \t \t ro_trigger_out_falling_edge" << std::endl; os << "flags mode \t sets the readout flags to mode. can be none, storeinram, tot, continous, parallel, nonparallel, safe, digital, analog_digital, overlow, nooverflow, unknown." << std::endl; os << "programfpga f \t programs the fpga with file f (with .pof extension)." << std::endl; @@ -4970,7 +4971,7 @@ std::string slsDetectorCommand::helpAdvanced(int action) { } if (action == GET_ACTION || action == HELP_ACTION) { - os << "extsig:i \t gets the mode of the external signal i. can be \n \t \t \t off, \n \t \t \t gate_in_active_high, \n \t \t \t gate_in_active_low, \n \t \t \t trigger_in_rising_edge, \n \t \t \t trigger_in_falling_edge, \n \t \t \t ro_trigger_in_rising_edge, \n \t \t \t ro_trigger_in_falling_edge, \n \t \t \t gate_out_active_high, \n \t \t \t gate_out_active_low, \n \t \t \t trigger_out_rising_edge, \n \t \t \t trigger_out_falling_edge, \n \t \t \t ro_trigger_out_rising_edge, \n \t \t \t ro_trigger_out_falling_edge" << std::endl; + os << "extsig \t gets the mode of the external signal. can be \n \t \t \t off, \n \t \t \t gate_in_active_high, \n \t \t \t gate_in_active_low, \n \t \t \t trigger_in_rising_edge, \n \t \t \t trigger_in_falling_edge, \n \t \t \t ro_trigger_in_rising_edge, \n \t \t \t ro_trigger_in_falling_edge, \n \t \t \t gate_out_active_high, \n \t \t \t gate_out_active_low, \n \t \t \t trigger_out_rising_edge, \n \t \t \t trigger_out_falling_edge, \n \t \t \t ro_trigger_out_rising_edge, \n \t \t \t ro_trigger_out_falling_edge" << std::endl; os << "flags \t gets the readout flags. can be none, storeinram, tot, continous, parallel, nonparallel, safe, digital, analog_digital, overflow, nooverflow, unknown" << std::endl; os << "led \t returns led status (0 off, 1 on)" << std::endl; diff --git a/slsSupportLib/include/versionAPI.h b/slsSupportLib/include/versionAPI.h index 8c2a64ecc..0afe8e75b 100644 --- a/slsSupportLib/include/versionAPI.h +++ b/slsSupportLib/include/versionAPI.h @@ -1,6 +1,5 @@ /** API versions */ #define GITBRANCH "refgui" -#define APIGOTTHARD 0x190108 #define APIMOENCH 0x181108 #define APILIB 0x190405 #define APIRECEIVER 0x190405 @@ -8,3 +7,4 @@ #define APIEIGER 0x190531 #define APIJUNGFRAU 0x190531 #define APICTB 0x190603 +#define APIGOTTHARD 0x190604