ATLAS Offline Software
UsedInVertexFitTrackDecoratorConfig.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2 
3 from collections import defaultdict
4 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
5 from AthenaConfiguration.ComponentFactory import CompFactory
6 
7 # Create a dictionnary which auto-generates a number for each unique entry it is given
8 # this is used to generate a unique alg name for different pairs of trk,vtx container names
9 _trkvtxPairCounter = defaultdict()
10 _trkvtxPairCounter.default_factory = lambda : str(len(_trkvtxPairCounter))
11 
12 def idForTrackVtxContainers(trackCont, vtxCont, vtxdeco, wdeco):
13  return "InDetUsedInFitDecorator_"+_trkvtxPairCounter[ (trackCont, vtxCont, vtxdeco, wdeco) ]
14 
15 
17  trackCont = "InDetTrackParticles", vtxCont = "PrimaryVertices",
18  vertexDeco = "TTVA_AMVFVertices_forReco", weightDeco = "TTVA_AMVFWeights_forReco"):
19  """ Create the alg to decorate the used-in-fit information for AMVF """
20 
21  alg = CompFactory.InDet.InDetUsedInVertexFitTrackDecorator(
22  name=idForTrackVtxContainers(trackCont,vtxCont, vertexDeco, weightDeco)+"Alg",
23  UsedInFitDecoratorTool=CompFactory.InDet.InDetUsedInFitTrackDecoratorTool(
24  AMVFVerticesDecoName=vertexDeco,
25  AMVFWeightsDecoName=weightDeco,
26  TrackContainer=trackCont,
27  VertexContainer=vtxCont)
28  )
29 
30  return alg
31 
33  flags, trackCont = 'InDetTrackParticles', vtxCont = 'PrimaryVertices'):
34  """ Create the ComponentAccumulator to decorate the used-in-fit information for AMVF """
35  acc = ComponentAccumulator()
36  acc.addEventAlgo( getUsedInVertexFitTrackDecoratorAlg( trackCont, vtxCont ) )
37  return acc
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
UsedInVertexFitTrackDecoratorConfig.idForTrackVtxContainers
def idForTrackVtxContainers(trackCont, vtxCont, vtxdeco, wdeco)
Definition: UsedInVertexFitTrackDecoratorConfig.py:12
UsedInVertexFitTrackDecoratorConfig.getUsedInVertexFitTrackDecoratorAlg
def getUsedInVertexFitTrackDecoratorAlg(trackCont="InDetTrackParticles", vtxCont="PrimaryVertices", vertexDeco="TTVA_AMVFVertices_forReco", weightDeco="TTVA_AMVFWeights_forReco")
Definition: UsedInVertexFitTrackDecoratorConfig.py:16
UsedInVertexFitTrackDecoratorConfig.UsedInVertexFitTrackDecoratorCfg
def UsedInVertexFitTrackDecoratorCfg(flags, trackCont='InDetTrackParticles', vtxCont='PrimaryVertices')
Definition: UsedInVertexFitTrackDecoratorConfig.py:32
str
Definition: BTagTrackIpAccessor.cxx:11