Skiming.
11def HION12SkimmingToolCfg(flags):
12 """Configure the example skimming tool"""
13 from TrigDecisionTool.TrigDecisionToolConfig import TrigDecisionToolCfg
14 acc = ComponentAccumulator()
15
16 ExtraData = []
17 ExtraData += ['xAOD::VertexContainer/PrimaryVertices']
18 ExtraData += ['xAOD::JetContainer/AntiKt4EMTopoJets']
19 ExtraData += ['xAOD::JetContainer/AntiKt4LCTopoJets']
20 ExtraData += ['xAOD::JetContainer/AntiKt4EMPFlowJets']
21 ExtraData += ['xAOD::JetContainer/AntiKt4HIJets']
22 ExtraData += ['xAOD::JetContainer/AntiKt4HITrackJets']
23 ExtraData += ['xAOD::JetContainer/AntiKt10LCTopoJets']
24
25 acc.addSequence( seqAND("HION12Sequence") )
26 acc.getSequence("HION12Sequence").ExtraDataForDynamicConsumers = ExtraData
27 acc.getSequence("HION12Sequence").ProcessDynamicDataDependencies = True
28
29
30 from DerivationFrameworkHI import ListTriggers
31
32 objectSelection = '(count(PrimaryVertices.z < 1000) < 10)'
33 nJetCuts = ListTriggers.HION12nJetCuts2018()
34 MB_triggers = ListTriggers.HION12MBtriggers2018()
35 triggers = ListTriggers.HION12triggers2018()
36
37 expression = '( (' + ' || '.join(triggers+MB_triggers) + ') && '+objectSelection+ ' && ' + '(' + ' || '.join(nJetCuts) + ')' + ')'
38
39 tdt = acc.getPrimaryAndMerge(TrigDecisionToolCfg(flags))
40 acc.addPublicTool(CompFactory.DerivationFramework.xAODStringSkimmingTool(name = "HION12StringSkimmingTool",
41 expression = expression,
42 TrigDecisionTool=tdt),
43 primary = True)
44 return(acc)
45
46