ATLAS Offline Software
DESDM_EXOTHIP.py
Go to the documentation of this file.
1 
4 
5 # DESDM_EXOTHIP.py
6 # Component accumulator version
7 
8 #=======================================================================
9 
10 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
11 from AthenaConfiguration.ComponentFactory import CompFactory
12 from AthenaConfiguration.Enums import MetadataCategory
13 
14 
15 # Main algorithm config
16 def DESDM_EXOTHIPKernelCfg(flags, name='DESDM_EXOTHIPKernel', **kwargs):
17  """Configure the derivation framework driving algorithm (kernel) for HIPTrigger"""
18  acc = ComponentAccumulator()
19 
20  #====================================================================
21  # SKIMMING TOOLS
22  #====================================================================
23 
24  skimmingTools = []
25  if not flags.Input.isMC:
26  hip_trigger = '(HLT_g0_hiptrt_L1eEM26M || HLT_g0_hiptrt_L1eEM28M)'
27 
28  from DerivationFrameworkTools.DerivationFrameworkToolsConfig import xAODStringSkimmingToolCfg
29  skimmingTool = acc.getPrimaryAndMerge(xAODStringSkimmingToolCfg(flags,
30  name = "DESDM_EXOTHIP_SkimmingTool",
31  expression = hip_trigger))
32  skimmingTools.append(skimmingTool)
33 
34  EXOTHIPKernel = CompFactory.DerivationFramework.DerivationKernel(name, SkimmingTools = skimmingTools)
35  acc.addEventAlgo( EXOTHIPKernel )
36 
37  return acc
38 
39 # Main config
40 def DESDM_EXOTHIPCfg(flags):
41  """Main config fragment for DESDM_EXOTHIP"""
42  acc = ComponentAccumulator()
43 
44  # Main algorithm (kernel)
45  acc.merge(DESDM_EXOTHIPKernelCfg(flags, name="DESDM_EXOTHIPKernel", StreamName = 'StreamDESDM_EXOTHIP'))
46 
47  # =============================
48  # Define contents of the format
49  # =============================
50  from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
51  from xAODMetaDataCnv.InfileMetaDataConfig import SetupMetaDataForStreamCfg
52 
53  container_items = ['xAOD::EventInfo#*', 'xAOD::EventAuxInfo#*',
54 
55  'xAOD::TrigNavigation#TrigNavigation','xAOD::TrigNavigationAuxInfo#TrigNavigationAux.',
56  'xAOD::TrigDecision#xTrigDecision','xAOD::TrigDecisionAuxInfo#xTrigDecisionAux.',
57  'xAOD::TrigConfKeys#TrigConfKeys',
58  'xAOD::TrigRNNOutputContainer#HLT_TrigTRTHTCounts','xAOD::TrigRNNOutputAuxContainer#HLT_TrigTRTHTCountsAux.',
59  'xAOD::TrigRNNOutputContainer#HLT_TrigRingerNeuralFex','xAOD::TrigRNNOutputAuxContainer#HLT_TrigRingerNeuralFexAux.',
60  'xAOD::CaloClusterContainer#egammaClusters','xAOD::CaloClusterAuxContainer#egammaClustersAux.',
61  'xAOD::CaloClusterContainer#CaloCalTopoClusters','xAOD::CaloClusterAuxContainer#CaloCalTopoClustersAux.',
62  'xAOD::CaloClusterContainer#InDetTrackParticlesAssociatedClusters','xAOD::CaloClusterAuxContainer#InDetTrackParticlesAssociatedClustersAux.',
63  'xAOD::CaloClusterContainer#LArClusterEM','xAOD::CaloClusterAuxContainer#LArClusterEMAux.',
64  'xAOD::CaloClusterContainer#LArClusterEM7_11Nocorr','xAOD::CaloClusterAuxContainer#LArClusterEM7_11NocorrAux.',
65  'xAOD::CaloClusterContainer#egammaTopoSeededClusters','xAOD::CaloClusterAuxContainer#egammaTopoSeededClustersAux.',
66 
67  'CaloCellContainer#AllCalo',
68  'CaloClusterCellLinkContainer#InDetTrackParticlesAssociatedClusters_links',
69  'CaloClusterCellLinkContainer#LArClusterEM7_11Nocorr_links',
70  'CaloClusterCellLinkContainer#LArClusterEM_links',
71  'CaloClusterCellLinkContainer#CaloCalTopoClusters_links',
72  'CaloClusterCellLinkContainer#egammaClusters_links',
73  'CaloClusterCellLinkContainer#egammaTopoSeededClusters_links',
74 
75  'InDet::TRT_DriftCircleContainer#TRT_DriftCircles',
76  'LArDigitContainer#LArDigitContainer_EMClust',
77  'LArDigitContainer#LArDigitContainer_Thinned',
78 
79  'xAOD::VertexContainer#PrimaryVertices','xAOD::VertexAuxContainer#PrimaryVerticesAux.-vxTrackAtVertex.-MvfFitInfo.-isInitialized.-VTAV',
80  'xAOD::PhotonContainer#Photons','xAOD::PhotonAuxContainer#PhotonsAux.'
81  ]
82  if flags.Input.isMC:
83  container_items += ['xAOD::TruthParticleContainer#*','xAOD::TruthParticleAuxContainer#TruthParticlesAux.-caloExtension',
84  'xAOD::TruthVertexContainer#*','xAOD::TruthVertexAuxContainer#*',
85  'xAOD::TruthEventContainer#*','xAOD::TruthEventAuxContainer#*']
86 
87  acc.merge( OutputStreamCfg( flags, 'DESDM_EXOTHIP', ItemList=container_items, AcceptAlgs=["DESDM_EXOTHIPKernel"]) )
88  acc.merge(
90  flags,
91  "DESDM_EXOTHIP",
92  AcceptAlgs=["DESDM_EXOTHIPKernel"],
93  createMetadata=[
94  MetadataCategory.ByteStreamMetaData,
95  MetadataCategory.CutFlowMetaData,
96  MetadataCategory.LumiBlockMetaData,
97  MetadataCategory.TriggerMenuMetaData,
98  ],
99  )
100  )
101 
102  return acc
103 
104 
105 
106 
107 
108 
109 
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
python.OutputStreamConfig.OutputStreamCfg
def OutputStreamCfg(flags, streamName, ItemList=[], MetadataItemList=[], disableEventTag=False, trigNavThinningSvc=None, takeItemsFromInput=False, extendProvenanceRecord=True, AcceptAlgs=[], HelperTools=[])
Definition: OutputStreamConfig.py:12
python.DESDM_EXOTHIP.DESDM_EXOTHIPKernelCfg
def DESDM_EXOTHIPKernelCfg(flags, name='DESDM_EXOTHIPKernel', **kwargs)
Definition: DESDM_EXOTHIP.py:16
python.DerivationFrameworkToolsConfig.xAODStringSkimmingToolCfg
def xAODStringSkimmingToolCfg(ConfigFlags, name, **kwargs)
Definition: DerivationFrameworkToolsConfig.py:29
python.DESDM_EXOTHIP.DESDM_EXOTHIPCfg
def DESDM_EXOTHIPCfg(flags)
Definition: DESDM_EXOTHIP.py:40
InfileMetaDataConfig.SetupMetaDataForStreamCfg
def SetupMetaDataForStreamCfg(flags, streamName="", AcceptAlgs=None, createMetadata=None, propagateMetadataFromInput=True, *args, **kwargs)
Definition: InfileMetaDataConfig.py:219