ATR-26675, ATR-26776: Switch Topo3 to AlfaCtpIn by ConfigFlag

Teng Jian Khoo requested to merge khoo/athena:L1-menu-flags into 23.0

To avoid needing to edit the L1 menu every time we want to switch from Topo3 to AlfaCtpIn, this MR:

  • Implements a switch in the L1 menu classes that propagates the swap to:
    • CTP input connectors
    • CTP monitoring lists
  • Adds a test to verify that all thresholds used in the menu are on a connected CTP input board
  • Adds the Trigger.L1.doAlfaCtpin control this swap
  • Uses the AthConfigFlags argument parser to allow to set ConfigFlags when called on the command line

Verified that the new test works and gives this error if the HI menu is generated without the ALFA swap

RuntimeError: checkItemsHaveInputs: Threshold ALFA3_A7L1L used by L1_ALFA_ANY is not on a board connected to CTP

Conversely, with the flag set to true, the HI menu is generated successfully. For now the flag is not automatically set based on the menu name.

Fixes were needed to the HI menus:

  • L1 CEP triggers are removed from the PhysicsP1_HI_run3_v1 menu because these are on Topo3 and therefore incompatible with the ALFA items that are already included.
  • Legacy group added to the following items due to their depending on J, TE, EM Similarly, in the low-mu pp menu:
  • L1 CEP triggers are removed as they are on Topo3 If these should run in HI or low-mu pp, then they somehow need to be fit on Topo2 instead. For now they can only run in high-mu pp.

Needed some unit test fixes:

  • Pass the flag modification arguments as needed to the generation of the HI and low-mu menus
  • Ditto for the L1Defined test of the low-mu menu
  • Switch to the AthConfigFlags parser for the script to handle flag setting
    • This required capitalising the -d and -l args as they clashed
    • The raw help formatting is dropped as it clashes with what is set by AthConfigFlags.

Incidentally also switches the flag setup in to use initConfigFlags.

@amarzin in case you want to check the monitoring setup @dguest as I had to modify the menu dump script again @lidiaz and @astruebi for menu coord @kciesla @campanel for the CEP changes

Merge request reports