ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigValidation
TrigInDetValidation
bin
TrigInDetValidation_menu_test.py
Go to the documentation of this file.
1
#!/usr/bin/env python
2
#
3
# Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
4
#
5
import
importlib
6
7
from
TrigInDetValidation.Chains
import
Chains
8
tc = Chains()
9
10
tida_dict = tc.get_menu_dict()
11
12
menu_chains = {}
13
14
for
slice, cfg
in
tida_dict.items():
15
menus = []
16
if
(cfg[
"menu"
] !=
''
):
17
menus.append(cfg[
"menu"
])
18
else
:
19
menus = [
"MC_pp_run3_v1"
,
"Dev_pp_run3_v1"
]
20
21
for
m
in
menus:
22
if
m
not
in
menu_chains:
23
menu_chains[m] = []
24
25
menu_chains[m] += cfg[
"chains"
]
26
27
def
find_slices
(chain_name):
28
output =
set
()
29
30
for
slice, cfg
in
tida_dict.items():
31
if
chain_name
in
cfg[
"chains"
]:
32
output.add(slice)
33
34
return
output
35
36
def
get_menu
(name):
37
# Import menu by name
38
menumodule = importlib.import_module(f
'TriggerMenuMT.HLT.Menu.{menu_name}'
)
39
menu = menumodule.setupMenu()
40
41
output = []
42
43
for
group, chains
in
menu.items():
44
output += [c.name
for
c
in
chains]
45
46
return
output
47
48
has_missing =
False
49
50
for
menu_name, chains
in
menu_chains.items():
51
valid_chains =
get_menu
(menu_name)
52
53
if
(len(valid_chains) < 1):
54
print
(
"Menu {} is empty, skipping"
.format(menu_name))
55
continue
56
57
for
c
in
chains:
58
if
c
not
in
valid_chains:
59
print
(
"!!!! {0} used in slice {1} is not a valid chain in menu {2}"
.format(c,
find_slices
(c), menu_name))
60
has_missing =
True
61
62
63
if
has_missing:
64
print
(
"FAIL: Some chains are defined for TrigInDetValidation tests but are not defined in the menu"
)
65
exit(255)
66
if
if(pathvar)
Definition
SealSharedLib.cxx:168
print
void print(char *figname, TCanvas *c1)
Definition
TRTCalib_StrawStatusPlots.cxx:26
set
STL class.
TrigInDetValidation_menu_test.get_menu
get_menu(name)
Definition
TrigInDetValidation_menu_test.py:36
TrigInDetValidation_menu_test.find_slices
find_slices(chain_name)
Definition
TrigInDetValidation_menu_test.py:27
Generated on
for ATLAS Offline Software by
1.17.0