mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-23 10:07:59 +02:00
Dev/remove gotthard i (#1108)
* slsSupportLib done, at receiver rooting out in implementation * removed from receiver and client * removed everywhere except gui, python and client(commands.yaml and Detector.h) * updated python * fixed autocomplete to print what the issue is if there is one with ToString when running the autocomplete script to generate fixed.json. updated readme.md in generator folder * formatting * removed enums for dacs * udpating autocomplete and generating commands * removed gotthard from docs and release notes * removed dac test * bug from removing g1 * fixed virtual test for xilinx, was minor. so in this PR * gui done * binary in merge fix * formatting and removing enums * updated fixed and dump.json * bash autocomplete * updated doc on command line generation * removing increments in dac enums for backward compatibility. Not required * removed ROI from rxParameters (only in g1), not needed to be backward compatible * removed the phase shift option from det server staruip
This commit is contained in:
@ -78,6 +78,9 @@ def get_literal(ifstmt):
|
||||
stringliteral = implicitCastExpr['inner'][0]['value'][1:-1]
|
||||
|
||||
retstmt = get_object_by_kind(ifstmt['inner'], 'ReturnStmt')
|
||||
if retstmt is None:
|
||||
print(f"Error: No 'ReturnStmt' found in: {ifstmt['inner']}")
|
||||
exit(1)
|
||||
declrefexpt = get_object_by_kind(retstmt['inner'], 'DeclRefExpr')
|
||||
enum_val = declrefexpt["referencedDecl"]["name"]
|
||||
|
||||
|
@ -80,7 +80,7 @@ _sd() {
|
||||
local IS_PATH=0
|
||||
|
||||
|
||||
local SLS_COMMANDS=" acquire activate adcclk adcenable adcenable10g adcindex adcinvert adclist adcname adcphase adcpipeline adcreg adcvpp apulse asamples autocompdisable badchannels blockingtrigger burstmode burstperiod bursts burstsl bustest cdsgain chipversion clearbit clearbusy clearroi clientversion clkdiv clkfreq clkphase collectionmode column compdisabletime confadc config configtransceiver counters currentsource dac dacindex daclist dacname dacvalues datastream dbitclk dbitphase dbitpipeline defaultdac defaultpattern delay delayl detectorserverversion detsize diodelay dpulse dr drlist dsamples execcommand exptime exptime1 exptime2 exptime3 exptimel extrastoragecells extsampling extsamplingsrc extsig fformat filtercells filterresistor findex firmwaretest firmwareversion fliprows flowcontrol10g fmaster fname foverwrite fpath framecounter frames framesl frametime free fwrite gaincaps gainmode gappixels gatedelay gatedelay1 gatedelay2 gatedelay3 gates getbit hardwareversion highvoltage hostname im_a im_b im_c im_d im_io imagetest initialchecks inj_ch interpolation interruptsubframe kernelversion lastclient led lock master maxadcphaseshift maxclkphaseshift maxdbitphaseshift measuredperiod measuredsubperiod moduleid nextframenumber nmod numinterfaces overflow packageversion parallel parameters partialreset patfname patioctrl patlimits patloop patloop0 patloop1 patloop2 patmask patnloop patnloop0 patnloop1 patnloop2 patsetbit pattern patternstart patwait patwait0 patwait1 patwait2 patwaittime patwaittime0 patwaittime1 patwaittime2 patword pedestalmode period periodl polarity port powerchip powerindex powerlist powername powervalues programfpga pulse pulsechip pulsenmove pumpprobe quad ratecorr readnrows readout readoutspeed readoutspeedlist rebootcontroller reg resetdacs resetfpga roi romode row runclk runtime rx_arping rx_clearroi rx_dbitlist rx_dbitoffset rx_discardpolicy rx_fifodepth rx_frameindex rx_framescaught rx_framesperfile rx_hostname rx_jsonaddheader rx_jsonpara rx_lastclient rx_lock rx_missingpackets rx_padding rx_printconfig rx_realudpsocksize rx_roi rx_silent rx_start rx_status rx_stop rx_tcpport rx_threads rx_udpsocksize rx_version rx_zmqfreq rx_zmqhwm rx_zmqip rx_zmqport rx_zmqstartfnum rx_zmqstream samples savepattern scan scanerrmsg selinterface serialnumber setbit settings settingslist settingspath signalindex signallist signalname sleep slowadc slowadcindex slowadclist slowadcname slowadcvalues start status stop stopport storagecell_delay storagecell_start subdeadtime subexptime sync syncclk temp_10ge temp_adc temp_control temp_dcdc temp_event temp_fpga temp_fpgaext temp_fpgafl temp_fpgafr temp_slowadc temp_sodl temp_sodr temp_threshold templist tempvalues tengiga threshold thresholdnotb timing timing_info_decoder timinglist timingsource top transceiverenable trigger triggers triggersl trimbits trimen trimval tsamples txdelay txdelay_frame txdelay_left txdelay_right type udp_cleardst udp_dstip udp_dstip2 udp_dstlist udp_dstmac udp_dstmac2 udp_dstport udp_dstport2 udp_firstdst udp_numdst udp_reconfigure udp_srcip udp_srcip2 udp_srcmac udp_srcmac2 udp_validate update updatedetectorserver updatekernel updatemode user v_a v_b v_c v_chip v_d v_io v_limit vchip_comp_adc vchip_comp_fe vchip_cs vchip_opa_1st vchip_opa_fd vchip_ref_comp_fe versions veto vetoalg vetofile vetophoton vetoref vetostream virtual vm_a vm_b vm_c vm_d vm_io zmqhwm zmqip zmqport "
|
||||
local SLS_COMMANDS=" acquire activate adcclk adcenable adcenable10g adcindex adcinvert adclist adcname adcphase adcpipeline adcreg adcvpp apulse asamples autocompdisable badchannels blockingtrigger burstmode burstperiod bursts burstsl bustest cdsgain chipversion clearbit clearbusy clientversion clkdiv clkfreq clkphase collectionmode column compdisabletime confadc config configtransceiver counters currentsource dac dacindex daclist dacname dacvalues datastream dbitclk dbitphase dbitpipeline defaultdac defaultpattern delay delayl detectorserverversion detsize diodelay dpulse dr drlist dsamples execcommand exptime exptime1 exptime2 exptime3 extrastoragecells extsampling extsamplingsrc extsig fformat filtercells filterresistor findex firmwaretest firmwareversion fliprows flowcontrol10g fmaster fname foverwrite fpath framecounter frames framesl frametime free fwrite gaincaps gainmode gappixels gatedelay gatedelay1 gatedelay2 gatedelay3 gates getbit hardwareversion highvoltage hostname im_a im_b im_c im_d im_io imagetest initialchecks inj_ch interpolation interruptsubframe kernelversion lastclient led lock master maxadcphaseshift maxclkphaseshift maxdbitphaseshift measuredperiod measuredsubperiod moduleid nextframenumber nmod numinterfaces overflow packageversion parallel parameters partialreset patfname patioctrl patlimits patloop patloop0 patloop1 patloop2 patmask patnloop patnloop0 patnloop1 patnloop2 patsetbit pattern patternstart patwait patwait0 patwait1 patwait2 patwaittime patwaittime0 patwaittime1 patwaittime2 patword pedestalmode period periodl polarity port powerchip powerindex powerlist powername powervalues programfpga pulse pulsechip pulsenmove pumpprobe quad ratecorr readnrows readout readoutspeed readoutspeedlist rebootcontroller reg resetdacs resetfpga romode row runclk runtime rx_arping rx_clearroi rx_dbitlist rx_dbitoffset rx_discardpolicy rx_fifodepth rx_frameindex rx_framescaught rx_framesperfile rx_hostname rx_jsonaddheader rx_jsonpara rx_lastclient rx_lock rx_missingpackets rx_padding rx_printconfig rx_realudpsocksize rx_roi rx_silent rx_start rx_status rx_stop rx_tcpport rx_threads rx_udpsocksize rx_version rx_zmqfreq rx_zmqhwm rx_zmqip rx_zmqport rx_zmqstartfnum rx_zmqstream samples savepattern scan scanerrmsg selinterface serialnumber setbit settings settingslist settingspath signalindex signallist signalname sleep slowadc slowadcindex slowadclist slowadcname slowadcvalues start status stop stopport storagecell_delay storagecell_start subdeadtime subexptime sync syncclk temp_10ge temp_adc temp_control temp_dcdc temp_event temp_fpga temp_fpgaext temp_fpgafl temp_fpgafr temp_slowadc temp_sodl temp_sodr temp_threshold templist tempvalues tengiga threshold thresholdnotb timing timing_info_decoder timinglist timingsource top transceiverenable trigger triggers triggersl trimbits trimen trimval tsamples txdelay txdelay_frame txdelay_left txdelay_right type udp_cleardst udp_dstip udp_dstip2 udp_dstlist udp_dstmac udp_dstmac2 udp_dstport udp_dstport2 udp_firstdst udp_numdst udp_reconfigure udp_srcip udp_srcip2 udp_srcmac udp_srcmac2 udp_validate update updatedetectorserver updatekernel updatemode user v_a v_b v_c v_chip v_d v_io v_limit vchip_comp_adc vchip_comp_fe vchip_cs vchip_opa_1st vchip_opa_fd vchip_ref_comp_fe versions veto vetoalg vetofile vetophoton vetoref vetostream virtual vm_a vm_b vm_c vm_d vm_io zmqhwm zmqip zmqport "
|
||||
__acquire() {
|
||||
FCN_RETURN=""
|
||||
return 0
|
||||
@ -351,10 +351,6 @@ fi
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
__clearroi() {
|
||||
FCN_RETURN=""
|
||||
return 0
|
||||
}
|
||||
__clientversion() {
|
||||
FCN_RETURN=""
|
||||
return 0
|
||||
@ -861,20 +857,6 @@ fi
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
__exptimel() {
|
||||
FCN_RETURN=""
|
||||
if [[ ${IS_GET} -eq 1 ]]; then
|
||||
if [[ "${cword}" == "2" ]]; then
|
||||
FCN_RETURN="ms ns s us"
|
||||
fi
|
||||
fi
|
||||
if [[ ${IS_GET} -eq 0 ]]; then
|
||||
if [[ "${cword}" == "2" ]]; then
|
||||
FCN_RETURN="ms ns s us"
|
||||
fi
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
__extrastoragecells() {
|
||||
FCN_RETURN=""
|
||||
if [[ ${IS_GET} -eq 0 ]]; then
|
||||
@ -2034,18 +2016,6 @@ fi
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
__roi() {
|
||||
FCN_RETURN=""
|
||||
if [[ ${IS_GET} -eq 0 ]]; then
|
||||
if [[ "${cword}" == "2" ]]; then
|
||||
FCN_RETURN=""
|
||||
fi
|
||||
if [[ "${cword}" == "3" ]]; then
|
||||
FCN_RETURN=""
|
||||
fi
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
__romode() {
|
||||
FCN_RETURN=""
|
||||
if [[ ${IS_GET} -eq 0 ]]; then
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -4,7 +4,7 @@
|
||||
_sd() {
|
||||
|
||||
|
||||
local SLS_COMMANDS=" acquire activate adcclk adcenable adcenable10g adcindex adcinvert adclist adcname adcphase adcpipeline adcreg adcvpp apulse asamples autocompdisable badchannels blockingtrigger burstmode burstperiod bursts burstsl bustest cdsgain chipversion clearbit clearbusy clearroi clientversion clkdiv clkfreq clkphase collectionmode column compdisabletime confadc config configtransceiver counters currentsource dac dacindex daclist dacname dacvalues datastream dbitclk dbitphase dbitpipeline defaultdac defaultpattern delay delayl detectorserverversion detsize diodelay dpulse dr drlist dsamples execcommand exptime exptime1 exptime2 exptime3 exptimel extrastoragecells extsampling extsamplingsrc extsig fformat filtercells filterresistor findex firmwaretest firmwareversion fliprows flowcontrol10g fmaster fname foverwrite fpath framecounter frames framesl frametime free fwrite gaincaps gainmode gappixels gatedelay gatedelay1 gatedelay2 gatedelay3 gates getbit hardwareversion highvoltage hostname im_a im_b im_c im_d im_io imagetest initialchecks inj_ch interpolation interruptsubframe kernelversion lastclient led lock master maxadcphaseshift maxclkphaseshift maxdbitphaseshift measuredperiod measuredsubperiod moduleid nextframenumber nmod numinterfaces overflow packageversion parallel parameters partialreset patfname patioctrl patlimits patloop patloop0 patloop1 patloop2 patmask patnloop patnloop0 patnloop1 patnloop2 patsetbit pattern patternstart patwait patwait0 patwait1 patwait2 patwaittime patwaittime0 patwaittime1 patwaittime2 patword pedestalmode period periodl polarity port powerchip powerindex powerlist powername powervalues programfpga pulse pulsechip pulsenmove pumpprobe quad ratecorr readnrows readout readoutspeed readoutspeedlist rebootcontroller reg resetdacs resetfpga roi romode row runclk runtime rx_arping rx_clearroi rx_dbitlist rx_dbitoffset rx_discardpolicy rx_fifodepth rx_frameindex rx_framescaught rx_framesperfile rx_hostname rx_jsonaddheader rx_jsonpara rx_lastclient rx_lock rx_missingpackets rx_padding rx_printconfig rx_realudpsocksize rx_roi rx_silent rx_start rx_status rx_stop rx_tcpport rx_threads rx_udpsocksize rx_version rx_zmqfreq rx_zmqhwm rx_zmqip rx_zmqport rx_zmqstartfnum rx_zmqstream samples savepattern scan scanerrmsg selinterface serialnumber setbit settings settingslist settingspath signalindex signallist signalname sleep slowadc slowadcindex slowadclist slowadcname slowadcvalues start status stop stopport storagecell_delay storagecell_start subdeadtime subexptime sync syncclk temp_10ge temp_adc temp_control temp_dcdc temp_event temp_fpga temp_fpgaext temp_fpgafl temp_fpgafr temp_slowadc temp_sodl temp_sodr temp_threshold templist tempvalues tengiga threshold thresholdnotb timing timing_info_decoder timinglist timingsource top transceiverenable trigger triggers triggersl trimbits trimen trimval tsamples txdelay txdelay_frame txdelay_left txdelay_right type udp_cleardst udp_dstip udp_dstip2 udp_dstlist udp_dstmac udp_dstmac2 udp_dstport udp_dstport2 udp_firstdst udp_numdst udp_reconfigure udp_srcip udp_srcip2 udp_srcmac udp_srcmac2 udp_validate update updatedetectorserver updatekernel updatemode user v_a v_b v_c v_chip v_d v_io v_limit vchip_comp_adc vchip_comp_fe vchip_cs vchip_opa_1st vchip_opa_fd vchip_ref_comp_fe versions veto vetoalg vetofile vetophoton vetoref vetostream virtual vm_a vm_b vm_c vm_d vm_io zmqhwm zmqip zmqport "
|
||||
local SLS_COMMANDS=" acquire activate adcclk adcenable adcenable10g adcindex adcinvert adclist adcname adcphase adcpipeline adcreg adcvpp apulse asamples autocompdisable badchannels blockingtrigger burstmode burstperiod bursts burstsl bustest cdsgain chipversion clearbit clearbusy clientversion clkdiv clkfreq clkphase collectionmode column compdisabletime confadc config configtransceiver counters currentsource dac dacindex daclist dacname dacvalues datastream dbitclk dbitphase dbitpipeline defaultdac defaultpattern delay delayl detectorserverversion detsize diodelay dpulse dr drlist dsamples execcommand exptime exptime1 exptime2 exptime3 extrastoragecells extsampling extsamplingsrc extsig fformat filtercells filterresistor findex firmwaretest firmwareversion fliprows flowcontrol10g fmaster fname foverwrite fpath framecounter frames framesl frametime free fwrite gaincaps gainmode gappixels gatedelay gatedelay1 gatedelay2 gatedelay3 gates getbit hardwareversion highvoltage hostname im_a im_b im_c im_d im_io imagetest initialchecks inj_ch interpolation interruptsubframe kernelversion lastclient led lock master maxadcphaseshift maxclkphaseshift maxdbitphaseshift measuredperiod measuredsubperiod moduleid nextframenumber nmod numinterfaces overflow packageversion parallel parameters partialreset patfname patioctrl patlimits patloop patloop0 patloop1 patloop2 patmask patnloop patnloop0 patnloop1 patnloop2 patsetbit pattern patternstart patwait patwait0 patwait1 patwait2 patwaittime patwaittime0 patwaittime1 patwaittime2 patword pedestalmode period periodl polarity port powerchip powerindex powerlist powername powervalues programfpga pulse pulsechip pulsenmove pumpprobe quad ratecorr readnrows readout readoutspeed readoutspeedlist rebootcontroller reg resetdacs resetfpga romode row runclk runtime rx_arping rx_clearroi rx_dbitlist rx_dbitoffset rx_discardpolicy rx_fifodepth rx_frameindex rx_framescaught rx_framesperfile rx_hostname rx_jsonaddheader rx_jsonpara rx_lastclient rx_lock rx_missingpackets rx_padding rx_printconfig rx_realudpsocksize rx_roi rx_silent rx_start rx_status rx_stop rx_tcpport rx_threads rx_udpsocksize rx_version rx_zmqfreq rx_zmqhwm rx_zmqip rx_zmqport rx_zmqstartfnum rx_zmqstream samples savepattern scan scanerrmsg selinterface serialnumber setbit settings settingslist settingspath signalindex signallist signalname sleep slowadc slowadcindex slowadclist slowadcname slowadcvalues start status stop stopport storagecell_delay storagecell_start subdeadtime subexptime sync syncclk temp_10ge temp_adc temp_control temp_dcdc temp_event temp_fpga temp_fpgaext temp_fpgafl temp_fpgafr temp_slowadc temp_sodl temp_sodr temp_threshold templist tempvalues tengiga threshold thresholdnotb timing timing_info_decoder timinglist timingsource top transceiverenable trigger triggers triggersl trimbits trimen trimval tsamples txdelay txdelay_frame txdelay_left txdelay_right type udp_cleardst udp_dstip udp_dstip2 udp_dstlist udp_dstmac udp_dstmac2 udp_dstport udp_dstport2 udp_firstdst udp_numdst udp_reconfigure udp_srcip udp_srcip2 udp_srcmac udp_srcmac2 udp_validate update updatedetectorserver updatekernel updatemode user v_a v_b v_c v_chip v_d v_io v_limit vchip_comp_adc vchip_comp_fe vchip_cs vchip_opa_1st vchip_opa_fd vchip_ref_comp_fe versions veto vetoalg vetofile vetophoton vetoref vetostream virtual vm_a vm_b vm_c vm_d vm_io zmqhwm zmqip zmqport "
|
||||
__acquire() {
|
||||
FCN_RETURN=""
|
||||
return 0
|
||||
@ -275,10 +275,6 @@ fi
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
__clearroi() {
|
||||
FCN_RETURN=""
|
||||
return 0
|
||||
}
|
||||
__clientversion() {
|
||||
FCN_RETURN=""
|
||||
return 0
|
||||
@ -785,20 +781,6 @@ fi
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
__exptimel() {
|
||||
FCN_RETURN=""
|
||||
if [[ ${IS_GET} -eq 1 ]]; then
|
||||
if [[ "${cword}" == "2" ]]; then
|
||||
FCN_RETURN="ms ns s us"
|
||||
fi
|
||||
fi
|
||||
if [[ ${IS_GET} -eq 0 ]]; then
|
||||
if [[ "${cword}" == "2" ]]; then
|
||||
FCN_RETURN="ms ns s us"
|
||||
fi
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
__extrastoragecells() {
|
||||
FCN_RETURN=""
|
||||
if [[ ${IS_GET} -eq 0 ]]; then
|
||||
@ -1958,18 +1940,6 @@ fi
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
__roi() {
|
||||
FCN_RETURN=""
|
||||
if [[ ${IS_GET} -eq 0 ]]; then
|
||||
if [[ "${cword}" == "2" ]]; then
|
||||
FCN_RETURN=""
|
||||
fi
|
||||
if [[ "${cword}" == "3" ]]; then
|
||||
FCN_RETURN=""
|
||||
fi
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
__romode() {
|
||||
FCN_RETURN=""
|
||||
if [[ ${IS_GET} -eq 0 ]]; then
|
||||
|
@ -441,7 +441,7 @@ period:
|
||||
function: setPeriod
|
||||
|
||||
delay:
|
||||
help: "[duration] [(optional unit) ns|us|ms|s]\n\t[Jungfrau][Moench][Gotthard][Mythen3][Gotthard2][Ctb][Moench][Xilinx Ctb] Delay after trigger"
|
||||
help: "[duration] [(optional unit) ns|us|ms|s]\n\t[Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Moench][Xilinx Ctb] Delay after trigger"
|
||||
inherit_actions: TIME_COMMAND
|
||||
actions:
|
||||
GET:
|
||||
@ -496,14 +496,14 @@ burstperiod:
|
||||
|
||||
################# TIME_GET_COMMAND #############
|
||||
delayl:
|
||||
help: "\n\t[Gotthard][Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Xilinx Ctb] Delay Left in Acquisition. \n\t[Gotthard2] only in continuous mode."
|
||||
help: "\n\t[Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Xilinx Ctb] Delay Left in Acquisition. \n\t[Gotthard2] only in continuous mode."
|
||||
inherit_actions: TIME_GET_COMMAND
|
||||
actions:
|
||||
GET:
|
||||
function: getDelayAfterTriggerLeft
|
||||
|
||||
periodl:
|
||||
help: "\n\t[Gotthard][Jungfrau][Moench][Ctb][Mythen3][Gotthard2][Xilinx Ctb] Period left for current frame. \n\t[Gotthard2] only in continuous mode."
|
||||
help: "\n\t[Jungfrau][Moench][Ctb][Mythen3][Gotthard2][Xilinx Ctb] Period left for current frame. \n\t[Gotthard2] only in continuous mode."
|
||||
inherit_actions: TIME_GET_COMMAND
|
||||
actions:
|
||||
GET:
|
||||
@ -523,13 +523,6 @@ measuredsubperiod:
|
||||
GET:
|
||||
function: getMeasuredSubFramePeriod
|
||||
|
||||
exptimel:
|
||||
help: "[(optional unit) ns|us|ms|s]\n\t[Gotthard] Exposure time left for current frame. "
|
||||
inherit_actions: TIME_GET_COMMAND
|
||||
actions:
|
||||
GET:
|
||||
function: getExptimeLeft
|
||||
|
||||
runtime:
|
||||
help: "[(optional unit) ns|us|ms|s]\n\t[Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Xilinx Ctb] Time from detector start up.\n\t[Gotthard2] not in burst and auto mode."
|
||||
inherit_actions: TIME_GET_COMMAND
|
||||
@ -641,7 +634,7 @@ adcinvert:
|
||||
|
||||
################# INTEGER_COMMAND_VEC_ID #################
|
||||
settings:
|
||||
help: "[standard, fast, highgain, dynamicgain, lowgain, mediumgain, veryhighgain, highgain0, fixgain1, fixgain2, forceswitchg1, forceswitchg2, verylowgain, g1_hg, g1_lg, g2_hc_hg, g2_hc_lg, g2_lc_hg, g2_lc_lg, g4_hg, g4_lg, gain0]\n\t Detector Settings\n\t[Jungfrau] - [ gain0 | highgain0]\n\t[Gotthard] - [dynamicgain | highgain | lowgain | mediumgain | veryhighgain]\n\t[Gotthard] Also loads default dacs on to the detector.\n\t[Gotthard2] - [dynamicgain | fixgain1 | fixgain2]\n\t[Mythen3] - [standard | fast | highgain] Also changes vrshaper and vrpreamp. \n\t[Eiger] Use threshold or thresholdnotb. \n\t[Eiger] threshold and settings loaded from file found in settingspath. \n\t[Moench] - [g1_hg | g1_lg | g2_hc_hg | g2_hc_lg | g2_lc_hg | g2_lc_lg | g4_hg | g4_lg]"
|
||||
help: "[standard, fast, highgain, dynamicgain, lowgain, mediumgain, veryhighgain, highgain0, fixgain1, fixgain2, forceswitchg1, forceswitchg2, verylowgain, g1_hg, g1_lg, g2_hc_hg, g2_hc_lg, g2_lc_hg, g2_lc_lg, g4_hg, g4_lg, gain0]\n\t Detector Settings\n\t[Jungfrau] - [ gain0 | highgain0]\n\t[Gotthard2] - [dynamicgain | fixgain1 | fixgain2]\n\t[Mythen3] - [standard | fast | highgain] Also changes vrshaper and vrpreamp. \n\t[Eiger] Use threshold or thresholdnotb. \n\t[Eiger] threshold and settings loaded from file found in settingspath. \n\t[Moench] - [g1_hg | g1_lg | g2_hc_hg | g2_hc_lg | g2_lc_hg | g2_lc_lg | g4_hg | g4_lg]"
|
||||
inherit_actions: INTEGER_COMMAND_VEC_ID
|
||||
actions:
|
||||
GET:
|
||||
@ -688,7 +681,7 @@ column:
|
||||
function: setColumn
|
||||
|
||||
timing:
|
||||
help: "[auto|trigger|gating|burst_trigger|trigger_gating]\n\tTiming Mode of detector.\n\t[Jungfrau][Moench][Gotthard][Ctb][Gotthard2][Xilinx Ctb] [auto|trigger]\n\t[Mythen3] [auto|trigger|gating|trigger_gating]\n\t[Eiger] [auto|trigger|gating|burst_trigger]"
|
||||
help: "[auto|trigger|gating|burst_trigger|trigger_gating]\n\tTiming Mode of detector.\n\t[Jungfrau][Moench][Ctb][Gotthard2][Xilinx Ctb] [auto|trigger]\n\t[Mythen3] [auto|trigger|gating|trigger_gating]\n\t[Eiger] [auto|trigger|gating|burst_trigger]"
|
||||
inherit_actions: INTEGER_COMMAND_VEC_ID
|
||||
actions:
|
||||
GET:
|
||||
@ -698,7 +691,7 @@ timing:
|
||||
input_types: [ defs::timingMode ]
|
||||
|
||||
highvoltage:
|
||||
help: "[n_value]\n\tHigh voltage to the sensor in Voltage. \n\t[Gotthard] [0|90|110|120|150|180|200] \n\t[Eiger][Mythen3][Gotthard2] 0-200 \n\t[Jungfrau][Moench][Ctb] [0|60-200]"
|
||||
help: "[n_value]\n\tHigh voltage to the sensor in Voltage. \n\t[Eiger][Mythen3][Gotthard2] 0-200 \n\t[Jungfrau][Moench][Ctb] [0|60-200]"
|
||||
inherit_actions: INTEGER_COMMAND_VEC_ID
|
||||
actions:
|
||||
GET:
|
||||
@ -717,7 +710,7 @@ powerchip:
|
||||
input_types: [ bool ]
|
||||
|
||||
imagetest:
|
||||
help: "[0, 1]\n\t[Gotthard] 1 adds channel intensity with precalculated values when taking an acquisition. Default is 0.\n\t[Eiger][Jungfrau][Moench] Only for Virtual servers. If 0, each pixel intensity incremented by 1. If 1, all pixels almost saturated."
|
||||
help: "[0, 1]\n\t[Eiger][Jungfrau][Moench] Only for Virtual servers. If 0, each pixel intensity incremented by 1. If 1, all pixels almost saturated."
|
||||
inherit_actions: INTEGER_COMMAND_VEC_ID
|
||||
actions:
|
||||
GET:
|
||||
@ -1423,7 +1416,7 @@ lock:
|
||||
|
||||
master:
|
||||
inherit_actions: INTEGER_COMMAND_VEC_ID_GET
|
||||
help: "[0, 1]\n\t[Eiger][Gotthard2][Jungfrau][Moench] Sets (half) module to master and other(s) to slaves.\n\t[Gotthard][Gotthard2][Mythen3][Eiger][Jungfrau][Moench] Gets if the current (half) module is master."
|
||||
help: "[0, 1]\n\t[Eiger][Gotthard2][Jungfrau][Moench] Sets (half) module to master and other(s) to slaves.\n\t[Gotthard2][Mythen3][Eiger][Jungfrau][Moench] Gets if the current (half) module is master."
|
||||
actions:
|
||||
GET:
|
||||
function: getMaster
|
||||
@ -1514,7 +1507,7 @@ triggers:
|
||||
|
||||
dr:
|
||||
inherit_actions: INTEGER_COMMAND_SET_NOID_GET_ID
|
||||
help: "[value]\n\tDynamic Range or number of bits per pixel in detector.\n\t[Eiger] Options: 4, 8, 12, 16, 32. If set to 32, also sets clkdivider to 2, else to 0.\n\t[Mythen3] Options: 8, 16, 32\n\t[Jungfrau][Moench][Gotthard][Ctb][Mythen3][Gotthard2][Xilinx Ctb] 16"
|
||||
help: "[value]\n\tDynamic Range or number of bits per pixel in detector.\n\t[Eiger] Options: 4, 8, 12, 16, 32. If set to 32, also sets clkdivider to 2, else to 0.\n\t[Mythen3] Options: 8, 16, 32\n\t[Jungfrau][Moench][Ctb][Mythen3][Gotthard2][Xilinx Ctb] 16"
|
||||
actions:
|
||||
GET:
|
||||
function: getDynamicRange
|
||||
@ -1777,13 +1770,6 @@ udp_validate:
|
||||
PUT:
|
||||
function: validateUDPConfiguration
|
||||
|
||||
clearroi:
|
||||
inherit_actions: EXECUTE_SET_COMMAND
|
||||
help: "\n\t[Gotthard] Resets Region of interest in detector. All channels enabled. Default is all channels enabled."
|
||||
actions:
|
||||
PUT:
|
||||
function: clearROI
|
||||
|
||||
defaultpattern:
|
||||
inherit_actions: EXECUTE_SET_COMMAND
|
||||
help: "\n\t[Mythen3] Loads and runs default pattern in pattern generator. It is to go back to initial settings."
|
||||
@ -1807,21 +1793,21 @@ resetfpga:
|
||||
|
||||
rebootcontroller:
|
||||
inherit_actions: EXECUTE_SET_COMMAND
|
||||
help: "\n\t[Jungfrau][Moench][Ctb][Gotthard][Mythen3][Gotthard2][Xilinx Ctb] Reboot controller of detector."
|
||||
help: "\n\t[Jungfrau][Moench][Ctb][Mythen3][Gotthard2][Xilinx Ctb] Reboot controller of detector."
|
||||
actions:
|
||||
PUT:
|
||||
function: rebootController
|
||||
|
||||
firmwaretest:
|
||||
inherit_actions: EXECUTE_SET_COMMAND
|
||||
help: "\n\t[Jungfrau][Moench][Gotthard][Mythen3][Gotthard2][Ctb][Xilinx Ctb] Firmware test, ie. reads a read fixed pattern from a register."
|
||||
help: "\n\t[Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Xilinx Ctb] Firmware test, ie. reads a read fixed pattern from a register."
|
||||
actions:
|
||||
PUT:
|
||||
function: executeFirmwareTest
|
||||
|
||||
bustest:
|
||||
inherit_actions: EXECUTE_SET_COMMAND
|
||||
help: "\n\t[Jungfrau][Moench][Gotthard][Mythen3][Gotthard2][Ctb] Bus test, ie. Writes different values in a R/W register and confirms the writes to check bus.\n\tAdvanced User function!"
|
||||
help: "\n\t[Jungfrau][Moench][Mythen3][Gotthard2][Ctb] Bus test, ie. Writes different values in a R/W register and confirms the writes to check bus.\n\tAdvanced User function!"
|
||||
actions:
|
||||
PUT:
|
||||
function: executeBusTest
|
||||
@ -1893,21 +1879,21 @@ moduleid:
|
||||
|
||||
type:
|
||||
inherit_actions: GET_COMMAND
|
||||
help: "\n\tReturns detector type. Can be Eiger, Jungfrau, Gotthard, Moench, Mythen3, Gotthard2, ChipTestBoard, Xilinx_ChipTestBoard"
|
||||
help: "\n\tReturns detector type. Can be Eiger, Jungfrau, Moench, Mythen3, Gotthard2, ChipTestBoard, Xilinx_ChipTestBoard"
|
||||
actions:
|
||||
GET:
|
||||
function: getDetectorType
|
||||
|
||||
framesl:
|
||||
inherit_actions: GET_COMMAND
|
||||
help: "\n\t[Gotthard][Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Xilinx Ctb] Number of frames left in acquisition. \n\t[Gotthard2] only in continuous auto mode."
|
||||
help: "\n\t[Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Xilinx Ctb] Number of frames left in acquisition. \n\t[Gotthard2] only in continuous auto mode."
|
||||
actions:
|
||||
GET:
|
||||
function: getNumberOfFramesLeft
|
||||
|
||||
triggersl:
|
||||
inherit_actions: GET_COMMAND
|
||||
help: "\n\t[Gotthard][Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Xilinx Ctb] Number of triggers left in acquisition. Only when external trigger used."
|
||||
help: "\n\t[Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Xilinx Ctb] Number of triggers left in acquisition. Only when external trigger used."
|
||||
actions:
|
||||
GET:
|
||||
function: getNumberOfTriggersLeft
|
||||
@ -2034,7 +2020,7 @@ framecounter:
|
||||
################# GET_COMMAND_HEX ############################
|
||||
serialnumber:
|
||||
inherit_actions: GET_COMMAND
|
||||
help: "\n\t[Jungfrau][Moench][Gotthard][Mythen3][Gotthard2][Ctb]\n\tSerial number of detector."
|
||||
help: "\n\t[Jungfrau][Moench][Mythen3][Gotthard2][Ctb]\n\tSerial number of detector."
|
||||
actions:
|
||||
GET:
|
||||
function: getSerialNumber
|
||||
@ -2086,7 +2072,7 @@ templist:
|
||||
################# GET_IND_COMMAND ############################
|
||||
temp_adc:
|
||||
inherit_actions: GET_IND_COMMAND
|
||||
help: "[n_value]\n\t[Jungfrau][Moench][Gotthard] ADC Temperature"
|
||||
help: "[n_value]\n\t[Jungfrau][Moench] ADC Temperature"
|
||||
actions:
|
||||
GET:
|
||||
function: getTemperature
|
||||
@ -2095,7 +2081,7 @@ temp_adc:
|
||||
|
||||
temp_fpga:
|
||||
inherit_actions: GET_IND_COMMAND
|
||||
help: "[n_value]\n\t[Eiger][Jungfrau][Moench][Gotthard][Mythen3][Gotthard2][Xilinx CTB] FPGA Temperature"
|
||||
help: "[n_value]\n\t[Eiger][Jungfrau][Moench][Mythen3][Gotthard2][Xilinx CTB] FPGA Temperature"
|
||||
actions:
|
||||
GET:
|
||||
function: getTemperature
|
||||
@ -2890,7 +2876,7 @@ Exptime:
|
||||
|
||||
exptime:
|
||||
inherit_actions: Exptime
|
||||
help: "[duration] [(optional unit) ns|us|ms|s]\n\t[Eiger][Jungfrau][Moench][Gotthard][Gotthard2][Ctb][Xilinx Ctb] Exposure time\n\t[Mythen3] Exposure time of all gate signals in auto and trigger mode (internal gating). To specify gate index, use exptime1, exptime2, exptime3."
|
||||
help: "[duration] [(optional unit) ns|us|ms|s]\n\t[Eiger][Jungfrau][Moench][Gotthard2][Ctb][Xilinx Ctb] Exposure time\n\t[Mythen3] Exposure time of all gate signals in auto and trigger mode (internal gating). To specify gate index, use exptime1, exptime2, exptime3."
|
||||
actions:
|
||||
GET:
|
||||
function: getExptime
|
||||
@ -2984,7 +2970,7 @@ readoutspeed:
|
||||
|
||||
adcphase:
|
||||
infer_action: true
|
||||
help: "[n_value] [(optional)deg]\n\t[Jungfrau][Moench][Ctb][Gotthard] Phase shift of ADC clock. \n\t[Jungfrau][Moench] Absolute phase shift. If deg used, then shift in degrees. Changing Speed also resets adcphase to recommended defaults.\n\t[Ctb] Absolute phase shift. If deg used, then shift in degrees. Changing adcclk also resets adcphase and sets it to previous values.\n\t[Gotthard] Relative phase shift. Cannot get"
|
||||
help: "[n_value] [(optional)deg]\n\t[Jungfrau][Moench][Ctb] Phase shift of ADC clock. \n\t[Jungfrau][Moench] Absolute phase shift. If deg used, then shift in degrees. Changing Speed also resets adcphase to recommended defaults.\n\t[Ctb] Absolute phase shift. If deg used, then shift in degrees. Changing adcclk also resets adcphase and sets it to previous values."
|
||||
actions:
|
||||
GET:
|
||||
require_det_id: true
|
||||
@ -3220,7 +3206,7 @@ clkdiv:
|
||||
output: [ 'args[0]', "' '", 'args[1]' ]
|
||||
|
||||
extsig:
|
||||
help: "[n_signal] [signal_type]\n\t[Gotthard][Mythen3] External signal mode for trigger timing mode.\n\t[Gotthard] [0] [trigger_in_rising_edge|trigger_in_falling_edge]\n\t[Mythen3] [0-7] [trigger_in_rising_edge|trigger_in_falling_edge|inversion_on|inversion_off]\n\t where 0 is master input trigger signal, 1-3 is master input gate signals, 4 is busy out signal and 5-7 is master output gate signals."
|
||||
help: "[n_signal] [signal_type]\n\t[Mythen3] External signal mode for trigger timing mode.\n\t[Mythen3] [0-7] [trigger_in_rising_edge|trigger_in_falling_edge|inversion_on|inversion_off]\n\t where 0 is master input trigger signal, 1-3 is master input gate signals, 4 is busy out signal and 5-7 is master output gate signals."
|
||||
actions:
|
||||
GET:
|
||||
argc: 1
|
||||
@ -3291,7 +3277,7 @@ dac:
|
||||
output: [ "args[0]", "' '", "args[1]", '" mV"' ]
|
||||
|
||||
resetdacs:
|
||||
help: "[(optional) hard] \n\t[Eiger][Jungfrau][Moench][Gotthard][Gotthard2][Mythen3]Reset dac values to the defaults. A 'hard' optional reset will reset the dacs to the hardcoded defaults in on-board detector server."
|
||||
help: "[(optional) hard] \n\t[Eiger][Jungfrau][Moench][Gotthard2][Mythen3]Reset dac values to the defaults. A 'hard' optional reset will reset the dacs to the hardcoded defaults in on-board detector server."
|
||||
actions:
|
||||
PUT:
|
||||
function: resetToDefaultDacs
|
||||
@ -3621,30 +3607,6 @@ pedestalmode:
|
||||
input_types: [ defs::pedestalParameters ]
|
||||
input: [ 'defs::pedestalParameters(StringTo<uint8_t>(args[0]), StringTo<uint16_t>(args[1]))' ]
|
||||
|
||||
roi:
|
||||
help: "[xmin] [xmax] \n\t[Gotthard] Region of interest in detector.\n\tOptions: Only a single ROI per module. \n\tEither all channels or a single adc or 2 chips (256 channels). Default is all channels enabled (-1 -1). "
|
||||
actions:
|
||||
GET:
|
||||
argc: 0
|
||||
require_det_id: true
|
||||
function: getROI
|
||||
output: [ t ]
|
||||
PUT:
|
||||
argc: 2
|
||||
exceptions:
|
||||
- condition: 'det_id == -1 && det->size() > 1'
|
||||
message: '"Cannot execute ROI at multi module level"'
|
||||
require_det_id: true
|
||||
convert_det_id: false
|
||||
function: setROI
|
||||
arg_types: [ int, int ]
|
||||
extra_variables:
|
||||
- name: t
|
||||
type: defs::ROI
|
||||
value: defs::ROI(StringTo<int>(args[0]), StringTo<int>(args[1]))
|
||||
input: [ t ]
|
||||
input_types: [ defs::ROI ]
|
||||
output: [ 't' ]
|
||||
|
||||
inj_ch:
|
||||
help: "[offset] [increment]\n\t[Gotthard2] Inject channels with current source for calibration. Offset is starting channel that is injected, increment determines succeeding channels to be injected."
|
||||
@ -4179,7 +4141,7 @@ updatekernel:
|
||||
output: [ '"successful"' ]
|
||||
|
||||
update:
|
||||
help: "\n\tWithout tftp: [server_name (incl fullpath)] [fname.pof (incl full path)] This does not use tftp.\n\t\t[Jungfrau][Moench][Gotthard][Ctb] Updates the firmware, detector server, deletes old server, creates the symbolic link and then reboots detector controller. \n\t\t[Mythen3][Gotthard2] will require a script to start up the shorter named server link at start up. \n\t\tserver_name is full path name of detector server binary\n\t\tfname is full path of programming file"
|
||||
help: "\n\tWithout tftp: [server_name (incl fullpath)] [fname.pof (incl full path)] This does not use tftp.\n\t\t[Jungfrau][Moench][Ctb] Updates the firmware, detector server, deletes old server, creates the symbolic link and then reboots detector controller. \n\t\t[Mythen3][Gotthard2] will require a script to start up the shorter named server link at start up. \n\t\tserver_name is full path name of detector server binary\n\t\tfname is full path of programming file"
|
||||
actions:
|
||||
PUT:
|
||||
argc: 2
|
||||
@ -4224,7 +4186,7 @@ reg:
|
||||
cast_input: [ true, true, true ]
|
||||
|
||||
adcreg:
|
||||
help: "[address] [value]\n\t[Jungfrau][Moench][Ctb][Gotthard] Writes to an adc register in hex. Advanced user Function!"
|
||||
help: "[address] [value]\n\t[Jungfrau][Moench][Ctb] Writes to an adc register in hex. Advanced user Function!"
|
||||
actions:
|
||||
PUT:
|
||||
argc: 2
|
||||
|
@ -54,13 +54,9 @@ vcn: dac
|
||||
vishaper: dac
|
||||
iodelay: dac
|
||||
vref_ds: dac
|
||||
vcascn_pb: dac
|
||||
vcascp_pb: dac
|
||||
vout_cm: dac
|
||||
vcasc_out: dac
|
||||
vin_cm: dac
|
||||
vref_comp: dac
|
||||
ib_test_c: dac
|
||||
vrshaper_n: dac
|
||||
vipre: dac
|
||||
vdcsh: dac
|
||||
@ -151,7 +147,6 @@ storagecells: extrastoragecells
|
||||
auto_comp_disable: autocompdisable
|
||||
comp_disable_time: compdisabletime
|
||||
|
||||
#Gotthard Specific
|
||||
#Gotthard2 Specific
|
||||
#Mythen3 Specific
|
||||
#CTB Specific
|
||||
|
@ -480,12 +480,11 @@ adcphase:
|
||||
store_result_in_t: false
|
||||
command_name: adcphase
|
||||
function_alias: adcphase
|
||||
help: "[n_value] [(optional)deg]\n\t[Jungfrau][Moench][Ctb][Gotthard] Phase shift\
|
||||
\ of ADC clock. \n\t[Jungfrau][Moench] Absolute phase shift. If deg used, then\
|
||||
\ shift in degrees. Changing Speed also resets adcphase to recommended defaults.\n\
|
||||
\t[Ctb] Absolute phase shift. If deg used, then shift in degrees. Changing adcclk\
|
||||
\ also resets adcphase and sets it to previous values.\n\t[Gotthard] Relative\
|
||||
\ phase shift. Cannot get"
|
||||
help: "[n_value] [(optional)deg]\n\t[Jungfrau][Moench][Ctb] Phase shift of ADC clock.\
|
||||
\ \n\t[Jungfrau][Moench] Absolute phase shift. If deg used, then shift in degrees.\
|
||||
\ Changing Speed also resets adcphase to recommended defaults.\n\t[Ctb] Absolute\
|
||||
\ phase shift. If deg used, then shift in degrees. Changing adcclk also resets\
|
||||
\ adcphase and sets it to previous values."
|
||||
infer_action: true
|
||||
adcpipeline:
|
||||
actions:
|
||||
@ -552,8 +551,8 @@ adcreg:
|
||||
store_result_in_t: false
|
||||
command_name: adcreg
|
||||
function_alias: adcreg
|
||||
help: "[address] [value]\n\t[Jungfrau][Moench][Ctb][Gotthard] Writes to an adc register\
|
||||
\ in hex. Advanced user Function!"
|
||||
help: "[address] [value]\n\t[Jungfrau][Moench][Ctb] Writes to an adc register in\
|
||||
\ hex. Advanced user Function!"
|
||||
infer_action: true
|
||||
adcvpp:
|
||||
actions:
|
||||
@ -1026,9 +1025,9 @@ bustest:
|
||||
store_result_in_t: false
|
||||
command_name: bustest
|
||||
function_alias: bustest
|
||||
help: "\n\t[Jungfrau][Moench][Gotthard][Mythen3][Gotthard2][Ctb] Bus test, ie. Writes\
|
||||
\ different values in a R/W register and confirms the writes to check bus.\n\t\
|
||||
Advanced User function!"
|
||||
help: "\n\t[Jungfrau][Moench][Mythen3][Gotthard2][Ctb] Bus test, ie. Writes different\
|
||||
\ values in a R/W register and confirms the writes to check bus.\n\tAdvanced User\
|
||||
\ function!"
|
||||
infer_action: true
|
||||
template: true
|
||||
cdsgain:
|
||||
@ -1186,28 +1185,6 @@ clearbusy:
|
||||
\ flag in shared memory before starting next acquisition"
|
||||
infer_action: true
|
||||
template: true
|
||||
clearroi:
|
||||
actions:
|
||||
PUT:
|
||||
args:
|
||||
- arg_types: []
|
||||
argc: 0
|
||||
cast_input: []
|
||||
check_det_id: false
|
||||
convert_det_id: true
|
||||
function: clearROI
|
||||
input: []
|
||||
input_types: []
|
||||
output:
|
||||
- '"successful"'
|
||||
require_det_id: true
|
||||
store_result_in_t: false
|
||||
command_name: clearroi
|
||||
function_alias: clearroi
|
||||
help: "\n\t[Gotthard] Resets Region of interest in detector. All channels enabled.\
|
||||
\ Default is all channels enabled."
|
||||
infer_action: true
|
||||
template: true
|
||||
clientversion:
|
||||
actions:
|
||||
GET:
|
||||
@ -2598,7 +2575,7 @@ delay:
|
||||
store_result_in_t: false
|
||||
command_name: delay
|
||||
function_alias: delay
|
||||
help: "[duration] [(optional unit) ns|us|ms|s]\n\t[Jungfrau][Moench][Gotthard][Mythen3][Gotthard2][Ctb][Moench][Xilinx\
|
||||
help: "[duration] [(optional unit) ns|us|ms|s]\n\t[Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Moench][Xilinx\
|
||||
\ Ctb] Delay after trigger"
|
||||
infer_action: true
|
||||
template: true
|
||||
@ -2633,8 +2610,8 @@ delayl:
|
||||
store_result_in_t: true
|
||||
command_name: delayl
|
||||
function_alias: delayl
|
||||
help: "\n\t[Gotthard][Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Xilinx Ctb] Delay\
|
||||
\ Left in Acquisition. \n\t[Gotthard2] only in continuous mode."
|
||||
help: "\n\t[Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Xilinx Ctb] Delay Left in\
|
||||
\ Acquisition. \n\t[Gotthard2] only in continuous mode."
|
||||
infer_action: true
|
||||
template: true
|
||||
detectorserverversion:
|
||||
@ -2806,7 +2783,7 @@ dr:
|
||||
function_alias: dr
|
||||
help: "[value]\n\tDynamic Range or number of bits per pixel in detector.\n\t[Eiger]\
|
||||
\ Options: 4, 8, 12, 16, 32. If set to 32, also sets clkdivider to 2, else to\
|
||||
\ 0.\n\t[Mythen3] Options: 8, 16, 32\n\t[Jungfrau][Moench][Gotthard][Ctb][Mythen3][Gotthard2][Xilinx\
|
||||
\ 0.\n\t[Mythen3] Options: 8, 16, 32\n\t[Jungfrau][Moench][Ctb][Mythen3][Gotthard2][Xilinx\
|
||||
\ Ctb] 16"
|
||||
infer_action: true
|
||||
template: true
|
||||
@ -2994,7 +2971,7 @@ exptime:
|
||||
store_result_in_t: false
|
||||
command_name: exptime
|
||||
function_alias: exptime
|
||||
help: "[duration] [(optional unit) ns|us|ms|s]\n\t[Eiger][Jungfrau][Moench][Gotthard][Gotthard2][Ctb][Xilinx\
|
||||
help: "[duration] [(optional unit) ns|us|ms|s]\n\t[Eiger][Jungfrau][Moench][Gotthard2][Ctb][Xilinx\
|
||||
\ Ctb] Exposure time\n\t[Mythen3] Exposure time of all gate signals in auto and\
|
||||
\ trigger mode (internal gating). To specify gate index, use exptime1, exptime2,\
|
||||
\ exptime3."
|
||||
@ -3327,41 +3304,6 @@ exptime3:
|
||||
\ mode (internal gating)."
|
||||
infer_action: true
|
||||
template: true
|
||||
exptimel:
|
||||
actions:
|
||||
GET:
|
||||
args:
|
||||
- arg_types: []
|
||||
argc: 0
|
||||
cast_input: []
|
||||
check_det_id: false
|
||||
convert_det_id: true
|
||||
function: getExptimeLeft
|
||||
input: []
|
||||
input_types: []
|
||||
output:
|
||||
- OutString(t)
|
||||
require_det_id: true
|
||||
store_result_in_t: true
|
||||
- arg_types:
|
||||
- special::time_unit
|
||||
argc: 1
|
||||
cast_input: []
|
||||
check_det_id: false
|
||||
convert_det_id: true
|
||||
function: getExptimeLeft
|
||||
input: []
|
||||
input_types: []
|
||||
output:
|
||||
- OutString(t , args[0])
|
||||
require_det_id: true
|
||||
store_result_in_t: true
|
||||
command_name: exptimel
|
||||
function_alias: exptimel
|
||||
help: "[(optional unit) ns|us|ms|s]\n\t[Gotthard] Exposure time left for current\
|
||||
\ frame. "
|
||||
infer_action: true
|
||||
template: true
|
||||
extrastoragecells:
|
||||
actions:
|
||||
GET:
|
||||
@ -3531,9 +3473,8 @@ extsig:
|
||||
store_result_in_t: false
|
||||
command_name: extsig
|
||||
function_alias: extsig
|
||||
help: "[n_signal] [signal_type]\n\t[Gotthard][Mythen3] External signal mode for\
|
||||
\ trigger timing mode.\n\t[Gotthard] [0] [trigger_in_rising_edge|trigger_in_falling_edge]\n\
|
||||
\t[Mythen3] [0-7] [trigger_in_rising_edge|trigger_in_falling_edge|inversion_on|inversion_off]\n\
|
||||
help: "[n_signal] [signal_type]\n\t[Mythen3] External signal mode for trigger timing\
|
||||
\ mode.\n\t[Mythen3] [0-7] [trigger_in_rising_edge|trigger_in_falling_edge|inversion_on|inversion_off]\n\
|
||||
\t where 0 is master input trigger signal, 1-3 is master input gate signals, 4\
|
||||
\ is busy out signal and 5-7 is master output gate signals."
|
||||
infer_action: true
|
||||
@ -3714,8 +3655,8 @@ firmwaretest:
|
||||
store_result_in_t: false
|
||||
command_name: firmwaretest
|
||||
function_alias: firmwaretest
|
||||
help: "\n\t[Jungfrau][Moench][Gotthard][Mythen3][Gotthard2][Ctb][Xilinx Ctb] Firmware\
|
||||
\ test, ie. reads a read fixed pattern from a register."
|
||||
help: "\n\t[Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Xilinx Ctb] Firmware test,\
|
||||
\ ie. reads a read fixed pattern from a register."
|
||||
infer_action: true
|
||||
template: true
|
||||
firmwareversion:
|
||||
@ -4075,8 +4016,8 @@ framesl:
|
||||
store_result_in_t: true
|
||||
command_name: framesl
|
||||
function_alias: framesl
|
||||
help: "\n\t[Gotthard][Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Xilinx Ctb] Number\
|
||||
\ of frames left in acquisition. \n\t[Gotthard2] only in continuous auto mode."
|
||||
help: "\n\t[Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Xilinx Ctb] Number of frames\
|
||||
\ left in acquisition. \n\t[Gotthard2] only in continuous auto mode."
|
||||
infer_action: true
|
||||
template: true
|
||||
frametime:
|
||||
@ -4847,8 +4788,8 @@ highvoltage:
|
||||
store_result_in_t: false
|
||||
command_name: highvoltage
|
||||
function_alias: highvoltage
|
||||
help: "[n_value]\n\tHigh voltage to the sensor in Voltage. \n\t[Gotthard] [0|90|110|120|150|180|200]\
|
||||
\ \n\t[Eiger][Mythen3][Gotthard2] 0-200 \n\t[Jungfrau][Moench][Ctb] [0|60-200]"
|
||||
help: "[n_value]\n\tHigh voltage to the sensor in Voltage. \n\t[Eiger][Mythen3][Gotthard2]\
|
||||
\ 0-200 \n\t[Jungfrau][Moench][Ctb] [0|60-200]"
|
||||
infer_action: true
|
||||
template: true
|
||||
hostname:
|
||||
@ -5041,10 +4982,8 @@ imagetest:
|
||||
store_result_in_t: false
|
||||
command_name: imagetest
|
||||
function_alias: imagetest
|
||||
help: "[0, 1]\n\t[Gotthard] 1 adds channel intensity with precalculated values when\
|
||||
\ taking an acquisition. Default is 0.\n\t[Eiger][Jungfrau][Moench] Only for Virtual\
|
||||
\ servers. If 0, each pixel intensity incremented by 1. If 1, all pixels almost\
|
||||
\ saturated."
|
||||
help: "[0, 1]\n\t[Eiger][Jungfrau][Moench] Only for Virtual servers. If 0, each\
|
||||
\ pixel intensity incremented by 1. If 1, all pixels almost saturated."
|
||||
infer_action: true
|
||||
template: true
|
||||
initialchecks:
|
||||
@ -5370,8 +5309,8 @@ master:
|
||||
command_name: master
|
||||
function_alias: master
|
||||
help: "[0, 1]\n\t[Eiger][Gotthard2][Jungfrau][Moench] Sets (half) module to master\
|
||||
\ and other(s) to slaves.\n\t[Gotthard][Gotthard2][Mythen3][Eiger][Jungfrau][Moench]\
|
||||
\ Gets if the current (half) module is master."
|
||||
\ and other(s) to slaves.\n\t[Gotthard2][Mythen3][Eiger][Jungfrau][Moench] Gets\
|
||||
\ if the current (half) module is master."
|
||||
infer_action: true
|
||||
template: true
|
||||
maxadcphaseshift:
|
||||
@ -7183,8 +7122,8 @@ periodl:
|
||||
store_result_in_t: true
|
||||
command_name: periodl
|
||||
function_alias: periodl
|
||||
help: "\n\t[Gotthard][Jungfrau][Moench][Ctb][Mythen3][Gotthard2][Xilinx Ctb] Period\
|
||||
\ left for current frame. \n\t[Gotthard2] only in continuous mode."
|
||||
help: "\n\t[Jungfrau][Moench][Ctb][Mythen3][Gotthard2][Xilinx Ctb] Period left for\
|
||||
\ current frame. \n\t[Gotthard2] only in continuous mode."
|
||||
infer_action: true
|
||||
template: true
|
||||
polarity:
|
||||
@ -7920,8 +7859,8 @@ rebootcontroller:
|
||||
store_result_in_t: false
|
||||
command_name: rebootcontroller
|
||||
function_alias: rebootcontroller
|
||||
help: "\n\t[Jungfrau][Moench][Ctb][Gotthard][Mythen3][Gotthard2][Xilinx Ctb] Reboot\
|
||||
\ controller of detector."
|
||||
help: "\n\t[Jungfrau][Moench][Ctb][Mythen3][Gotthard2][Xilinx Ctb] Reboot controller\
|
||||
\ of detector."
|
||||
infer_action: true
|
||||
template: true
|
||||
reg:
|
||||
@ -8052,7 +7991,7 @@ resetdacs:
|
||||
store_result_in_t: false
|
||||
command_name: resetdacs
|
||||
function_alias: resetdacs
|
||||
help: "[(optional) hard] \n\t[Eiger][Jungfrau][Moench][Gotthard][Gotthard2][Mythen3]Reset\
|
||||
help: "[(optional) hard] \n\t[Eiger][Jungfrau][Moench][Gotthard2][Mythen3]Reset\
|
||||
\ dac values to the defaults. A 'hard' optional reset will reset the dacs to the\
|
||||
\ hardcoded defaults in on-board detector server."
|
||||
infer_action: true
|
||||
@ -8077,54 +8016,6 @@ resetfpga:
|
||||
help: "\n\t[Jungfrau][Moench][Ctb][Xilinx Ctb] Reset FPGA."
|
||||
infer_action: true
|
||||
template: true
|
||||
roi:
|
||||
actions:
|
||||
GET:
|
||||
args:
|
||||
- arg_types: []
|
||||
argc: 0
|
||||
cast_input: []
|
||||
check_det_id: false
|
||||
convert_det_id: true
|
||||
function: getROI
|
||||
input: []
|
||||
input_types: []
|
||||
output:
|
||||
- t
|
||||
require_det_id: true
|
||||
store_result_in_t: true
|
||||
PUT:
|
||||
args:
|
||||
- arg_types:
|
||||
- int
|
||||
- int
|
||||
argc: 2
|
||||
cast_input:
|
||||
- false
|
||||
check_det_id: false
|
||||
convert_det_id: false
|
||||
exceptions:
|
||||
- condition: det_id == -1 && det->size() > 1
|
||||
message: '"Cannot execute ROI at multi module level"'
|
||||
extra_variables:
|
||||
- name: t
|
||||
type: defs::ROI
|
||||
value: defs::ROI(StringTo<int>(args[0]), StringTo<int>(args[1]))
|
||||
function: setROI
|
||||
input:
|
||||
- t
|
||||
input_types:
|
||||
- defs::ROI
|
||||
output:
|
||||
- t
|
||||
require_det_id: true
|
||||
store_result_in_t: false
|
||||
command_name: roi
|
||||
function_alias: roi
|
||||
help: "[xmin] [xmax] \n\t[Gotthard] Region of interest in detector.\n\tOptions:\
|
||||
\ Only a single ROI per module. \n\tEither all channels or a single adc or 2 chips\
|
||||
\ (256 channels). Default is all channels enabled (-1 -1). "
|
||||
infer_action: true
|
||||
romode:
|
||||
actions:
|
||||
GET:
|
||||
@ -9651,8 +9542,7 @@ serialnumber:
|
||||
store_result_in_t: true
|
||||
command_name: serialnumber
|
||||
function_alias: serialnumber
|
||||
help: "\n\t[Jungfrau][Moench][Gotthard][Mythen3][Gotthard2][Ctb]\n\tSerial number\
|
||||
\ of detector."
|
||||
help: "\n\t[Jungfrau][Moench][Mythen3][Gotthard2][Ctb]\n\tSerial number of detector."
|
||||
infer_action: true
|
||||
template: true
|
||||
setbit:
|
||||
@ -9767,13 +9657,11 @@ settings:
|
||||
help: "[standard, fast, highgain, dynamicgain, lowgain, mediumgain, veryhighgain,\
|
||||
\ highgain0, fixgain1, fixgain2, forceswitchg1, forceswitchg2, verylowgain, g1_hg,\
|
||||
\ g1_lg, g2_hc_hg, g2_hc_lg, g2_lc_hg, g2_lc_lg, g4_hg, g4_lg, gain0]\n\t Detector\
|
||||
\ Settings\n\t[Jungfrau] - [ gain0 | highgain0]\n\t[Gotthard] - [dynamicgain |\
|
||||
\ highgain | lowgain | mediumgain | veryhighgain]\n\t[Gotthard] Also loads default\
|
||||
\ dacs on to the detector.\n\t[Gotthard2] - [dynamicgain | fixgain1 | fixgain2]\n\
|
||||
\t[Mythen3] - [standard | fast | highgain] Also changes vrshaper and vrpreamp.\
|
||||
\ \n\t[Eiger] Use threshold or thresholdnotb. \n\t[Eiger] threshold and settings\
|
||||
\ loaded from file found in settingspath. \n\t[Moench] - [g1_hg | g1_lg | g2_hc_hg\
|
||||
\ | g2_hc_lg | g2_lc_hg | g2_lc_lg | g4_hg | g4_lg]"
|
||||
\ Settings\n\t[Jungfrau] - [ gain0 | highgain0]\n\t[Gotthard2] - [dynamicgain\
|
||||
\ | fixgain1 | fixgain2]\n\t[Mythen3] - [standard | fast | highgain] Also changes\
|
||||
\ vrshaper and vrpreamp. \n\t[Eiger] Use threshold or thresholdnotb. \n\t[Eiger]\
|
||||
\ threshold and settings loaded from file found in settingspath. \n\t[Moench]\
|
||||
\ - [g1_hg | g1_lg | g2_hc_hg | g2_hc_lg | g2_lc_hg | g2_lc_lg | g4_hg | g4_lg]"
|
||||
infer_action: true
|
||||
template: true
|
||||
settingslist:
|
||||
@ -10736,7 +10624,7 @@ temp_adc:
|
||||
store_result_in_t: true
|
||||
command_name: temp_adc
|
||||
function_alias: temp_adc
|
||||
help: "[n_value]\n\t[Jungfrau][Moench][Gotthard] ADC Temperature"
|
||||
help: "[n_value]\n\t[Jungfrau][Moench] ADC Temperature"
|
||||
infer_action: true
|
||||
template: true
|
||||
temp_control:
|
||||
@ -10872,8 +10760,8 @@ temp_fpga:
|
||||
store_result_in_t: true
|
||||
command_name: temp_fpga
|
||||
function_alias: temp_fpga
|
||||
help: "[n_value]\n\t[Eiger][Jungfrau][Moench][Gotthard][Mythen3][Gotthard2][Xilinx\
|
||||
\ CTB] FPGA Temperature"
|
||||
help: "[n_value]\n\t[Eiger][Jungfrau][Moench][Mythen3][Gotthard2][Xilinx CTB] FPGA\
|
||||
\ Temperature"
|
||||
infer_action: true
|
||||
template: true
|
||||
temp_fpgaext:
|
||||
@ -11344,8 +11232,8 @@ timing:
|
||||
command_name: timing
|
||||
function_alias: timing
|
||||
help: "[auto|trigger|gating|burst_trigger|trigger_gating]\n\tTiming Mode of detector.\n\
|
||||
\t[Jungfrau][Moench][Gotthard][Ctb][Gotthard2][Xilinx Ctb] [auto|trigger]\n\t\
|
||||
[Mythen3] [auto|trigger|gating|trigger_gating]\n\t[Eiger] [auto|trigger|gating|burst_trigger]"
|
||||
\t[Jungfrau][Moench][Ctb][Gotthard2][Xilinx Ctb] [auto|trigger]\n\t[Mythen3] [auto|trigger|gating|trigger_gating]\n\
|
||||
\t[Eiger] [auto|trigger|gating|burst_trigger]"
|
||||
infer_action: true
|
||||
template: true
|
||||
timing_info_decoder:
|
||||
@ -11614,8 +11502,8 @@ triggersl:
|
||||
store_result_in_t: true
|
||||
command_name: triggersl
|
||||
function_alias: triggersl
|
||||
help: "\n\t[Gotthard][Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Xilinx Ctb] Number\
|
||||
\ of triggers left in acquisition. Only when external trigger used."
|
||||
help: "\n\t[Jungfrau][Moench][Mythen3][Gotthard2][Ctb][Xilinx Ctb] Number of triggers\
|
||||
\ left in acquisition. Only when external trigger used."
|
||||
infer_action: true
|
||||
template: true
|
||||
trimbits:
|
||||
@ -11960,8 +11848,8 @@ type:
|
||||
store_result_in_t: true
|
||||
command_name: type
|
||||
function_alias: type
|
||||
help: "\n\tReturns detector type. Can be Eiger, Jungfrau, Gotthard, Moench, Mythen3,\
|
||||
\ Gotthard2, ChipTestBoard, Xilinx_ChipTestBoard"
|
||||
help: "\n\tReturns detector type. Can be Eiger, Jungfrau, Moench, Mythen3, Gotthard2,\
|
||||
\ ChipTestBoard, Xilinx_ChipTestBoard"
|
||||
infer_action: true
|
||||
template: true
|
||||
udp_cleardst:
|
||||
@ -12569,11 +12457,11 @@ update:
|
||||
command_name: update
|
||||
function_alias: update
|
||||
help: "\n\tWithout tftp: [server_name (incl fullpath)] [fname.pof (incl full path)]\
|
||||
\ This does not use tftp.\n\t\t[Jungfrau][Moench][Gotthard][Ctb] Updates the firmware,\
|
||||
\ detector server, deletes old server, creates the symbolic link and then reboots\
|
||||
\ detector controller. \n\t\t[Mythen3][Gotthard2] will require a script to start\
|
||||
\ up the shorter named server link at start up. \n\t\tserver_name is full path\
|
||||
\ name of detector server binary\n\t\tfname is full path of programming file"
|
||||
\ This does not use tftp.\n\t\t[Jungfrau][Moench][Ctb] Updates the firmware, detector\
|
||||
\ server, deletes old server, creates the symbolic link and then reboots detector\
|
||||
\ controller. \n\t\t[Mythen3][Gotthard2] will require a script to start up the\
|
||||
\ shorter named server link at start up. \n\t\tserver_name is full path name of\
|
||||
\ detector server binary\n\t\tfname is full path of programming file"
|
||||
infer_action: true
|
||||
updatedetectorserver:
|
||||
actions:
|
||||
|
@ -4,10 +4,36 @@ used to generate C++ cli commands. and bash autocompletion scripts.
|
||||
|
||||
### Overview
|
||||
|
||||
|
||||
If any changes to enums in slsDetectorDefs
|
||||
```sh
|
||||
# to generate the dump.json file
|
||||
cd slsSupportLib/src
|
||||
clang++ -Xclang -ast-dump=json -Xclang -ast-dump-filter -Xclang StringTo -c ToString.cpp -I ../include/ -std=gnu++11 > ../../slsDetectorSoftware/generator/autocomplete/dump.json
|
||||
cd ../../slsDetectorSoftware/generator/autocomplete
|
||||
python autocomplete.py -f
|
||||
```
|
||||
To Generate command line commands
|
||||
```sh
|
||||
python gen_commands.py -pgf
|
||||
```
|
||||
To generate autocomplete
|
||||
```sh
|
||||
python gen_commands.py -agf
|
||||
source bash_autocomplete.sh
|
||||
```
|
||||
Always clang-format at the end
|
||||
```sh
|
||||
cd slsDetectorPackage/build
|
||||
make format
|
||||
```
|
||||
|
||||
### Details
|
||||
Looks through the `dump.json` file for the different values of an enum and stores them in the dictionary `type_values`.
|
||||
```sh
|
||||
# To print the different values for enums
|
||||
python gen_commands.py -a
|
||||
|
||||
```
|
||||
|
||||
also the autocomplete.py generates shell autocompletion scripts for both bash and zsh. It uses the template file `bash_autocomplete.in.sh` and adds the necessary code in an output file `bash_autocomplete.sh` (same for zsh).
|
||||
@ -29,6 +55,8 @@ The dump.json is the AST of the file `slsDetectorPackage/slsSupportLib/src/ToStr
|
||||
# to generate the dump.json file
|
||||
cd slsSupportLib/src
|
||||
clang++ -Xclang -ast-dump=json -Xclang -ast-dump-filter -Xclang StringTo -c ToString.cpp -I ../include/ -std=gnu++11 > ../../slsDetectorSoftware/generator/autocomplete/dump.json
|
||||
cd ../../slsDetectorSoftware/generator/autocomplete
|
||||
python autocomplete.py -f
|
||||
# clang version used: 14.0.0-1ubuntu1.1
|
||||
```
|
||||
|
||||
|
Reference in New Issue
Block a user