3 from TrigInDetConfig.InnerTrackerTrigSequence
import InnerTrackerTrigSequence
4 from AthenaConfiguration.Enums
import Format
5 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
6 from AthenaConfiguration.ComponentFactory
import CompFactory
7 from AthenaConfiguration.AthConfigFlags
import AthConfigFlags
8 from AthenaCommon.Logging
import logging
13 def __init__(self,flags : AthConfigFlags, signature : str, rois : str, inView : str):
14 super().
__init__(flags, signature,rois,inView)
15 self.
log = logging.getLogger(
"InDetTrigSequence")
16 self.
log.
info(f
"signature: {self.signature} rois: {self.rois} inview: {self.inView}")
24 from InDetConfig.SiSPSeededTrackFinderConfig
import TrigSiSPSeededTrackFinderCfg
26 name =
'EFsiSPSeededTrackFinder'+self.flags.Tracking.ActiveConfig.input_name ))
39 dataObjs = {(
'InDet::PixelClusterContainerCache' , self.flags.Trigger.InDetTracking.PixelClusterCacheKey ),
40 (
'PixelRDO_Cache' , self.flags.Trigger.InDetTracking.PixRDOCacheKey ),
41 (
'InDet::SCT_ClusterContainerCache' , self.flags.Trigger.InDetTracking.SCTClusterCacheKey ),
42 (
'SCT_RDO_Cache' , self.flags.Trigger.InDetTracking.SCTRDOCacheKey ),
43 (
'SpacePointCache' , self.flags.Trigger.InDetTracking.SpacePointCachePix ),
44 (
'SpacePointCache' , self.flags.Trigger.InDetTracking.SpacePointCacheSCT ),
45 (
'IDCInDetBSErrContainer_Cache' , self.flags.Trigger.InDetTracking.PixBSErrCacheKey ),
46 (
'IDCInDetBSErrContainer_Cache' , self.flags.Trigger.InDetTracking.SCTBSErrCacheKey ),
47 (
'xAOD::EventInfo' ,
'StoreGateSvc+EventInfo' ),
48 (
'TagInfo' ,
'DetectorStore+ProcessingTags' )}
50 ViewDataVerifier = CompFactory.AthViews.ViewDataVerifier( name = viewVerifier +
"_" + self.signature,
51 DataObjects = dataObjs)
53 isByteStream = self.flags.Input.Format == Format.BS
55 ViewDataVerifier.DataObjects |= {(
'PixelRDO_Container' ,
'PixelRDOs' ),
56 (
'SCT_RDO_Container' ,
'SCT_RDOs' )}
58 ViewDataVerifier.DataObjects.add((
'TrigRoiDescriptorCollection' ,
'StoreGateSvc+%s' % self.rois ))
60 acc.addEventAlgo(ViewDataVerifier)
71 CompFactory.AthViews.ViewDataVerifier( name = viewVerifier +
"_" + self.signature,
73 (
'InDet::TRT_DriftCircleContainerCache' ,
74 f
'StoreGateSvc+{self.flags.Trigger.InDetTracking.TRT_DriftCircleCacheKey}' ),
79 if self.flags.Input.Format == Format.BS:
80 ViewDataVerifier.DataObjects.add((
'TRT_RDO_Cache' , f
'StoreGateSvc+{self.flags.Trigger.InDetTracking.TRTRDOCacheKey}'))
82 ViewDataVerifier.DataObjects.add((
'TRT_RDO_Container' ,
'StoreGateSvc+TRT_RDOs' ))
84 acc.addEventAlgo(ViewDataVerifier)
94 CompFactory.AthViews.ViewDataVerifier( name = viewVerifier +
"_" + self.signature,
96 (
'SpacePointContainer',
'StoreGateSvc+SCT_TrigSpacePoints' ),
97 (
'SpacePointContainer',
'StoreGateSvc+PixelTrigSpacePoints' ),
98 (
'SpacePointOverlapCollection',
'StoreGateSvc+OverlapSpacePoints' ),
100 (
'InDet::SCT_ClusterContainer',
'StoreGateSvc+SCT_TrigClusters' ),
101 (
'InDet::PixelClusterContainer',
'StoreGateSvc+PixelTrigClusters' ),
105 if self.flags.Input.Format == Format.BS:
106 ViewDataVerifier.DataObjects |= {
107 (
'IDCInDetBSErrContainer' ,
'StoreGateSvc+SCT_ByteStreamErrs' ),
108 (
'IDCInDetBSErrContainer' ,
'StoreGateSvc+PixelByteStreamErrs' ),
111 acc.addEventAlgo(ViewDataVerifier)
122 CompFactory.AthViews.ViewDataVerifier( name = viewVerifier +
"_" + self.signature,
124 (
'InDet::PixelGangedClusterAmbiguities' ,
'TrigPixelClusterAmbiguitiesMap'),
127 if self.flags.Input.Format == Format.BS:
128 ViewDataVerifier.DataObjects |= {
129 (
'IDCInDetBSErrContainer' ,
'StoreGateSvc+PixelByteStreamErrs' ),
130 (
'IDCInDetBSErrContainer' ,
'StoreGateSvc+SCT_ByteStreamErrs' ),
133 acc.addEventAlgo(ViewDataVerifier)
141 signature = self.flags.Tracking.ActiveConfig.input_name
145 self.
log.
info(f
"DataPrep signature: {self.signature} rois: {self.rois} inview: {self.inView}")
147 if self.flags.Input.Format == Format.BS:
148 from PixelRawDataByteStreamCnv.PixelRawDataByteStreamCnvConfig
import TrigPixelRawDataProviderAlgCfg
151 from SCT_RawDataByteStreamCnv.SCT_RawDataByteStreamCnvConfig
import TrigSCTRawDataProviderCfg
153 elif not self.inView:
154 from SGComps.SGInputLoaderConfig
import SGInputLoaderCfg
155 loadRDOs = [(
'PixelRDO_Container' ,
'StoreGateSvc+PixelRDOs' ),
156 (
'SCT_RDO_Container' ,
'StoreGateSvc+SCT_RDOs' ) ]
160 from InDetConfig.InDetPrepRawDataFormationConfig
import TrigPixelClusterizationCfg
163 name=f
"InDetPixelClusterization_{signature}"))
166 from InDetConfig.InDetPrepRawDataFormationConfig
import TrigSCTClusterizationCfg
169 name=f
"InDetSCTClusterization_{signature}"))
182 if self.flags.Input.Format == Format.BS:
183 from TRT_RawDataByteStreamCnv.TRT_RawDataByteStreamCnvConfig
import TrigTRTRawDataProviderCfg
186 elif not self.inView:
187 from SGComps.SGInputLoaderConfig
import SGInputLoaderCfg
188 loadRDOs = [(
'TRT_RDO_Container' ,
'StoreGateSvc+TRT_RDOs' )]
191 from InDetConfig.InDetPrepRawDataFormationConfig
import TrigTRTRIOMakerCfg
192 signature = self.flags.Tracking.ActiveConfig.input_name
195 name=f
"TrigTRTDriftCircleMaker_{signature}"))
206 signature = self.flags.Tracking.ActiveConfig.input_name
209 from InDetConfig.SiSpacePointFormationConfig
import TrigSiTrackerSpacePointFinderCfg
214 extraFlags : AthConfigFlags =
None,
215 inputTracksName : str =
None) -> ComponentAccumulator:
216 acc = self.fastTrackFinderBase(extraFlags, inputTracksName)
217 if not self.flags.Tracking.ActiveConfig.doZFinderOnly:
218 from TrkConfig.TrkParticleCreatorConfig
import InDetTrigParticleCreatorToolFTFCfg
220 acc.addPublicTool(creatorTool)
222 from xAODTrackingCnv.xAODTrackingCnvConfig
import TrigTrackParticleCnvAlgCfg
227 name = prefix+
'xAODParticleCreatorAlg'+self.flags.Tracking.ActiveConfig.input_name+
'_FTF',
228 TrackParticleCreator = creatorTool,
230 xAODTrackParticlesFromTracksContainerName = self.flags.Tracking.ActiveConfig.tracks_FTF,
246 from TrkConfig.TrkAmbiguitySolverConfig
import TrkAmbiguityScore_Trig_Cfg
250 name = f
"{self.ambiPrefix}Score_{self.flags.Tracking.ActiveConfig.input_name}",
252 AmbiguityScoreProcessor =
None
256 from TrkConfig.TrkAmbiguitySolverConfig
import TrkAmbiguitySolver_Trig_Cfg
260 name = f
"{self.ambiPrefix}guitySolver_{self.flags.Tracking.ActiveConfig.input_name}",
264 self.
lastTrkCollection = self.flags.Tracking.ActiveConfig.trkTracks_IDTrig+
"_Amb"
275 from InDetConfig.TRT_TrackExtensionAlgConfig
import Trig_TRT_TrackExtensionAlgCfg
278 from InDetConfig.InDetExtensionProcessorConfig
import TrigInDetExtensionProcessorCfg
291 if self.flags.Tracking.ActiveConfig.doTRT:
296 from xAODTrackingCnv.xAODTrackingCnvConfig
import TrigTrackParticleCnvAlgCfg
301 name = prefix+
'xAODParticleCreatorAlg'+self.flags.Tracking.ActiveConfig.input_name+
'_IDTrig',
303 xAODTrackParticlesFromTracksContainerName = self.flags.Tracking.ActiveConfig.tracks_IDTrig,