mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-19 00:07:13 +02:00
* commands code generation (#803) * commands code generation for only frames command * fix cmake file and add Caller files * working exptime, fully extended commands file and its variants * start adding template commands * add INT_CMD_VEC_ID template * add list command, generate multiple bins, format code * reach 208 commands using the cpp macros * add tests for command parser * start adding tests for commands parser * fix typo to use commands.yaml * add more tests for command_parser * add all template functions (up to 218 commands) * finish template functions and add more CmdProxy.cpp functions (250+) * 257 commands * 300 commands the rest are very special commands * add special commands without generation * separate special functions from generated c++ file * implementing one command for put and get (buggy) * add infer action in a separate file * generate header for special commands from yaml * allow only 0 or 1 for bool inputs * group all commands in gen_commands.py * add help to gen_commands.py * add autocomplete bash script * autocompletion: add support for module levels and help * remove debugging line * add autocompletion, help to commands, change int [0,1] to bool * copy tests for Caller.cpp. Tests pass * update with the new developer branch changes * fix errors after merging (there is problems with tests) * fixed port/stopport in yaml (intput typo), added '_caller' to the test dac and test on chip dac command in global test for cmdcaller * undo previous test simulator debug change * add documentation for the generated code * reducing the comment to be replaced in length so formatting does not split into 2 lines * removed formatting specific style of C++11 in gen_commands.py to keep with the top level clang format of the project * regeneratign code for commands * automation generated * Redirect deprecated commands (#872) * working implementation, need to fix dac * fixed deprecation redirect for dac command * Detector specific autocomplete (#873) * working implementation, need to fix dac * fixed deprecation redirect for dac command * detector specific completion for dac * added autocomplete using detector specific * fixed error when autocompleting partial words * Generate commands/fix commands (#875) * fix vm_a, im_a etc have deg Celsius suffix, also help missing or changed in some places * dac: require det id for all, arg0 to be printed at output, help for onchip dac and dac, onchipdac: spacing * getscan detid and blocking trigger help * udp_Dstlist det_id fixed, but rx_id invalid * cmdApp in line with cmdLineApp (missing version, receiver_id, not creating det object in help action * added set_command to differentiate between check_det_id and require_det_id (mixed up), args: -1 needs to check for at least one argument * reordering * reordering and checked till integer_command_hex * fixed a lot more commands * fix caller tests for eiger * changes to tests after Bechir left * changing .cmd to .cmdcall for the caller commands * fixed tests for caller, still warning for setexptime about cast input * autocomplete ran * add moench test * regenerating autocomplete and commands * fixing other things from merge conflicts (renaming slsDetectorDefs to defs in commands.yaml) * formatting * added code injection to help (#876) * updated 3 commands to have get output that can be put into put (#877) * updated some commands to have get output that can be put into put * fix tests for clkdiv * adding help to free (#878) * removing old commands and renaming them, (also making it work for parameters command as it was still calling cmdproxy) (#879) * More helpful error messages for unsupported actions (#880) * removing old commands and renaming them, (also making it work for parameters command as it was still calling cmdproxy) * Added specific help for unsupported actions * fixed a vetofile get special exception message. more specific warning for special exception message instead of no function warning * added condition checking true in exceptions for special message --------- Co-authored-by: Bechir Brahem <bachbrahem@gmail.com> Co-authored-by: Erik Frojdh <erik.frojdh@gmail.com> Co-authored-by: Dhanya Thattil <dhanya.thattil@psi.ch>
74 lines
1.6 KiB
Bash
74 lines
1.6 KiB
Bash
# GENERATED FILE - DO NOT EDIT
|
|
# ANY CHANGES TO THIS FILE WILL BE OVERWRITTEN
|
|
|
|
_sd() {
|
|
|
|
|
|
# -- THIS LINE WILL BE REPLACED WITH GENERATED CODE --
|
|
|
|
|
|
local FCN_RETURN=""
|
|
local IS_PATH=0
|
|
COMPREPLY=()
|
|
local OPTIONS_NEW=""
|
|
words=("${COMP_WORDS[@]}")
|
|
cword=$COMP_CWORD
|
|
|
|
local cur=${words[cword]}
|
|
# check the action (get or put)
|
|
case "${words[0]}" in
|
|
"sls_detector_get" | "g" | "detg")
|
|
local IS_GET=1
|
|
;;
|
|
*)
|
|
local IS_GET=0
|
|
;;
|
|
esac
|
|
|
|
# if no command is written, autocomplete with the commands
|
|
if [[ ${cword} -eq 1 ]]; then
|
|
|
|
case "$cur" in
|
|
[0-9]*)
|
|
for i in $SLS_COMMANDS; do
|
|
SLS_COMMANDS_NEW="${SLS_COMMANDS_NEW} ${cur%%:*}:$i"
|
|
done
|
|
COMPREPLY=( $( compgen -W "${SLS_COMMANDS_NEW}" -- "$cur" ) );;
|
|
*)
|
|
COMPREPLY=( $( compgen -W "$SLS_COMMANDS -h" -- "$cur" ) );;
|
|
esac
|
|
return 0
|
|
fi
|
|
|
|
if [[ ${cword} -eq 2 ]] && [[ ${words[1]} == "-h" ]]; then
|
|
COMPREPLY=( $( compgen -W "$SLS_COMMANDS" -- "$cur" ) )
|
|
return 0
|
|
fi
|
|
|
|
# if a command is written, autocomplete with the options
|
|
# call the function for the command
|
|
|
|
if [[ "$SLS_COMMANDS" == *"${words[1]##*:}"* ]]; then
|
|
__"${words[1]##*:}"
|
|
fi
|
|
|
|
# if IS_PATH is activated, autocomplete with the path
|
|
if [[ ${IS_PATH} -eq 1 ]]; then
|
|
COMPREPLY=($(compgen -f -- "${cur}"))
|
|
return 0
|
|
fi
|
|
|
|
# autocomplete with the options
|
|
COMPREPLY=($(compgen -W "${FCN_RETURN}" -- "${cur}"))
|
|
|
|
|
|
|
|
}
|
|
|
|
complete -F _sd -o filenames sls_detector_get
|
|
complete -F _sd -o filenames g
|
|
complete -F _sd -o filenames detg
|
|
|
|
complete -F _sd -o filenames sls_detector_put
|
|
complete -F _sd -o filenames p
|
|
complete -F _sd -o filenames detp |