6def AddTauAugmentationCfg(flags, **kwargs):
7
8 prefix = kwargs["prefix"]
9 kwargs.setdefault("TauContainerName", "TauJets")
10 kwargs.setdefault("doRNNVeryLoose", False)
11 kwargs.setdefault("doRNNLoose", False)
12 kwargs.setdefault("doRNNMedium", False)
13 kwargs.setdefault("doRNNTight", False)
14 kwargs.setdefault("doGNTauVeryLoose", False)
15 kwargs.setdefault("doGNTauLoose", False)
16 kwargs.setdefault("doGNTauMedium", False)
17 kwargs.setdefault("doGNTauTight", False)
18
19 acc = ComponentAccumulator()
20
21
22 acc.merge(AddTauIDDecorationCfg(flags, TauContainerName=kwargs["TauContainerName"]))
23
24 from DerivationFrameworkTools.DerivationFrameworkToolsConfig import AsgSelectionToolWrapperCfg
25 from TauAnalysisTools.TauAnalysisToolsConfig import TauSelectionToolCfg
26
27 TauAugmentationTools = []
28
29
30 if kwargs["doRNNVeryLoose"]:
31 TauSelectorRNNVeryLoose = acc.popToolsAndMerge(TauSelectionToolCfg(flags,
32 name = 'TauSelectorRNNVeryLoose',
33 ConfigPath = 'TauAnalysisAlgorithms/tau_selection_veryloose_noeleid.conf'))
34 acc.addPublicTool(TauSelectorRNNVeryLoose)
35
36 TauRNNVeryLooseWrapper = acc.getPrimaryAndMerge(AsgSelectionToolWrapperCfg(flags,
37 name = "TauRNNVeryLooseWrapper",
38 AsgSelectionTool = TauSelectorRNNVeryLoose,
39 StoreGateEntryName = "DFTauRNNVeryLoose",
40 ContainerName = kwargs["TauContainerName"]))
41 TauAugmentationTools.append(TauRNNVeryLooseWrapper)
42
43 if kwargs["doRNNLoose"]:
44 TauSelectorRNNLoose = acc.popToolsAndMerge(TauSelectionToolCfg(flags,
45 name = 'TauSelectorRNNLoose',
46 ConfigPath = 'TauAnalysisAlgorithms/tau_selection_loose_noeleid.conf'))
47 acc.addPublicTool(TauSelectorRNNLoose)
48
49 TauRNNLooseWrapper = acc.getPrimaryAndMerge(AsgSelectionToolWrapperCfg(flags,
50 name = "TauRNNLooseWrapper",
51 AsgSelectionTool = TauSelectorRNNLoose,
52 StoreGateEntryName = "DFTauRNNLoose",
53 ContainerName = kwargs["TauContainerName"]))
54 TauAugmentationTools.append(TauRNNLooseWrapper)
55
56 if kwargs["doRNNMedium"]:
57 TauSelectorRNNMedium = acc.popToolsAndMerge(TauSelectionToolCfg(flags,
58 name = 'TauSelectorRNNMedium',
59 ConfigPath = 'TauAnalysisAlgorithms/tau_selection_medium_noeleid.conf'))
60 acc.addPublicTool(TauSelectorRNNMedium)
61
62 TauRNNMediumWrapper = acc.getPrimaryAndMerge(AsgSelectionToolWrapperCfg(flags,
63 name = "TauRNNMediumWrapper",
64 AsgSelectionTool = TauSelectorRNNMedium,
65 StoreGateEntryName = "DFTauRNNMedium",
66 ContainerName = kwargs["TauContainerName"]))
67 TauAugmentationTools.append(TauRNNMediumWrapper)
68
69 if kwargs["doRNNTight"]:
70 TauSelectorRNNTight = acc.popToolsAndMerge(TauSelectionToolCfg(flags,
71 name = 'TauSelectorRNNTight',
72 ConfigPath = 'TauAnalysisAlgorithms/tau_selection_tight_noeleid.conf'))
73 acc.addPublicTool(TauSelectorRNNTight)
74
75 TauRNNTightWrapper = acc.getPrimaryAndMerge(AsgSelectionToolWrapperCfg(flags,
76 name = "TauRNNTightWrapper",
77 AsgSelectionTool = TauSelectorRNNTight,
78 StoreGateEntryName = "DFTauRNNTight",
79 ContainerName = kwargs["TauContainerName"]))
80 TauAugmentationTools.append(TauRNNTightWrapper)
81
82
83 if kwargs["doGNTauVeryLoose"]:
84 TauSelectorGNTauVeryLoose = acc.popToolsAndMerge(TauSelectionToolCfg(flags,
85 name = 'TauSelectorGNTauVeryLoose',
86 ConfigPath = 'TauAnalysisAlgorithms/tau_selection_gntau_veryloose_noeleid.conf'))
87 acc.addPublicTool(TauSelectorGNTauVeryLoose)
88
89 TauGNTauVeryLooseWrapper = acc.getPrimaryAndMerge(AsgSelectionToolWrapperCfg(flags,
90 name = "TauGNTauVeryLooseWrapper",
91 AsgSelectionTool = TauSelectorGNTauVeryLoose,
92 StoreGateEntryName = "DFTauGNTauVeryLoose",
93 ContainerName = kwargs["TauContainerName"]))
94 TauAugmentationTools.append(TauGNTauVeryLooseWrapper)
95
96
97 if kwargs["doGNTauLoose"]:
98 TauSelectorGNTauLoose = acc.popToolsAndMerge(TauSelectionToolCfg(flags,
99 name = 'TauSelectorGNTauLoose',
100 ConfigPath = 'TauAnalysisAlgorithms/tau_selection_gntau_loose_noeleid.conf'))
101 acc.addPublicTool(TauSelectorGNTauLoose)
102
103 TauGNTauLooseWrapper = acc.getPrimaryAndMerge(AsgSelectionToolWrapperCfg(flags,
104 name = "TauGNTauLooseWrapper",
105 AsgSelectionTool = TauSelectorGNTauLoose,
106 StoreGateEntryName = "DFTauGNTauLoose",
107 ContainerName = kwargs["TauContainerName"]))
108 TauAugmentationTools.append(TauGNTauLooseWrapper)
109
110 if kwargs["doGNTauMedium"]:
111 TauSelectorGNTauMedium = acc.popToolsAndMerge(TauSelectionToolCfg(flags,
112 name = 'TauSelectorGNTauMedium',
113 ConfigPath = 'TauAnalysisAlgorithms/tau_selection_gntau_medium_noeleid.conf'))
114 acc.addPublicTool(TauSelectorGNTauMedium)
115
116 TauGNTauMediumWrapper = acc.getPrimaryAndMerge(AsgSelectionToolWrapperCfg(flags,
117 name = "TauGNTauMediumWrapper",
118 AsgSelectionTool = TauSelectorGNTauMedium,
119 StoreGateEntryName = "DFTauGNTauMedium",
120 ContainerName = kwargs["TauContainerName"]))
121 TauAugmentationTools.append(TauGNTauMediumWrapper)
122
123 if kwargs["doGNTauTight"]:
124 TauSelectorGNTauTight = acc.popToolsAndMerge(TauSelectionToolCfg(flags,
125 name = 'TauSelectorGNTauTight',
126 ConfigPath = 'TauAnalysisAlgorithms/tau_selection_gntau_tight_noeleid.conf'))
127 acc.addPublicTool(TauSelectorGNTauTight)
128
129 TauGNTauTightWrapper = acc.getPrimaryAndMerge(AsgSelectionToolWrapperCfg(flags,
130 name = "TauGNTauTightWrapper",
131 AsgSelectionTool = TauSelectorGNTauTight,
132 StoreGateEntryName = "DFTauGNTauTight",
133 ContainerName = kwargs["TauContainerName"]))
134 TauAugmentationTools.append(TauGNTauTightWrapper)
135
136
137 if TauAugmentationTools:
138 CommonAugmentation = CompFactory.DerivationFramework.CommonAugmentation
139 acc.addEventAlgo(CommonAugmentation(f"{prefix}_TauAugmentationKernel", AugmentationTools = TauAugmentationTools))
140
141 return acc
142