5 from AthenaConfiguration.AccumulatorCache
import AccumulatorCache
6 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
7 from AthenaConfiguration.ComponentFactory
import CompFactory
8 from AthenaCommon.Logging
import logging
14 InDet__CacheCreator=CompFactory.getComp(
"InDet::CacheCreator")
15 InDetCacheCreatorTrig = InDet__CacheCreator(name =
"InDetCacheCreatorTrig",
16 TRT_DriftCircleKey = flags.Trigger.InDetTracking.TRT_DriftCircleCacheKey,
17 Pixel_ClusterKey = flags.Trigger.InDetTracking.PixelClusterCacheKey,
18 SCT_ClusterKey = flags.Trigger.InDetTracking.SCTClusterCacheKey,
19 SpacePointCachePix = flags.Trigger.InDetTracking.SpacePointCachePix,
20 SpacePointCacheSCT = flags.Trigger.InDetTracking.SpacePointCacheSCT,
21 SCTRDOCacheKey = flags.Trigger.InDetTracking.SCTRDOCacheKey,
22 SCTBSErrCacheKey = flags.Trigger.InDetTracking.SCTBSErrCacheKey,
23 SCTFlaggedCondCacheKey = flags.Trigger.InDetTracking.SCTFlaggedCondCacheKey,
24 PixRDOCacheKey = flags.Trigger.InDetTracking.PixRDOCacheKey,
25 PixBSErrCacheKey = flags.Trigger.InDetTracking.PixBSErrCacheKey,
26 TRTRDOCacheKey = flags.Trigger.InDetTracking.TRTRDOCacheKey)
28 if not flags.Detector.GeometryTRT:
29 InDetCacheCreatorTrig.disableTRT =
True
31 acc.addEventAlgo( InDetCacheCreatorTrig )
38 creator = CompFactory.ActsTrk.Cache.CreatorAlg(name=
"ActsCacheCreatorTrig",
39 PixelClustersCacheKey=
"ActsPixelClusterCache_Back",
40 StripClustersCacheKey=
"ActsStripClusterCache_Back",
41 PixelSpacePointCacheKey=
"ActsPixelSpacePointCache_Back",
42 StripSpacePointCacheKey=
"ActsStripSpacePointCache_Back",
43 StripOverlapSpacePointCacheKey=
"ActsStripOverlapSpacePointCache_Back")
45 acc.addEventAlgo(creator)
53 log = logging.getLogger(
"trigInDetFastTrackingCfg")
54 from TrigInDetConfig.utils
import getFlagsForActiveConfig
57 """ Generates fast tracking config, it is a primary config function """
59 from TrigInDetConfig.InnerTrackingTrigSequence
import InnerTrackingTrigSequence
61 seq = InnerTrackingTrigSequence.create(flags,
62 flags.Tracking.ActiveConfig.input_name,
64 inView =
"VDVInDetFTF" if in_view
else None)
65 acc = seq.sequence(
"FastTrackFinder")
71 def trigInDetLRTCfg(flags, LRTInputCollection, roisKey, in_view, extra_view_inputs=tuple()):
72 from TrigInDetConfig.InnerTrackingTrigSequence
import InnerTrackingTrigSequence
73 viewname =
"VDVInDetLRT" if in_view
else None
74 seq = InnerTrackingTrigSequence.create(flags,
75 flags.Tracking.ActiveConfig.input_name,
80 acc.addEventAlgo( CompFactory.AthViews.ViewDataVerifier(
81 name = viewname +
"_" + flags.Tracking.ActiveConfig.input_name,
83 (
'TrigRoiDescriptorCollection' , f
'StoreGateSvc+{roisKey}' ),
84 (
'TrackCollection' ,
'StoreGateSvc+HLT_IDTrkTrack_FS_FTF' ),
85 (
'SpacePointContainer' ,
'StoreGateSvc+SCT_TrigSpacePoints' ),
86 (
'InDet::PixelClusterContainer' ,
'StoreGateSvc+PixelTrigClusters' ),
87 (
'InDet::SCT_ClusterContainer' ,
'StoreGateSvc+SCT_TrigClusters' ),
88 } |
set(extra_view_inputs)
91 acc.merge(seq.viewDataVerifier(viewname))
92 acc.merge(seq.dataPreparation())
94 acc.merge(seq.fastTrackFinder(inputTracksName = LRTInputCollection))
107 """ Generates precision tracking config, it is a primary config function """
110 log = logging.getLogger(
"trigInDetPrecisionTrackingCfg")
111 from TrigInDetConfig.utils
import getFlagsForActiveConfig
116 verifier = CompFactory.AthViews.ViewDataVerifier( name =
'VDVInDetPrecision'+flags.Tracking.ActiveConfig.input_name,
117 DataObjects= {(
'xAOD::EventInfo',
'StoreGateSvc+EventInfo'),
118 (
'TrigRoiDescriptorCollection', flags.Tracking.ActiveConfig.roi),
119 (
'TagInfo',
'DetectorStore+ProcessingTags' ),
120 ( (
'ActsTrk::TrackContainer' if "Acts" in flags.Tracking.ActiveConfig.trkTracks_FTF
else 'TrackCollection'), flags.Tracking.ActiveConfig.trkTracks_FTF )} )
122 acc.addEventAlgo(verifier)
124 from TrigInDetConfig.InnerTrackingTrigSequence
import InnerTrackingTrigSequence
126 seq = InnerTrackingTrigSequence.create(flags,
127 flags.Tracking.ActiveConfig.input_name,
128 rois = flags.Tracking.ActiveConfig.roi,
129 inView = verifier.getName()
if in_view
else '')
131 acc.merge(seq.sequenceAfterPattern(rois = rois))
139 acc.addEventAlgo( CompFactory.AthViews.ViewDataVerifier(
140 name =
"VtxVDV_" + flags.Tracking.ActiveConfig.input_name,
142 (
'ActsGeometryContext' ,
'StoreGateSvc+ActsAlignment' )
146 from InDetConfig.InDetPriVxFinderConfig
import InDetTrigPriVxFinderCfg
151 if __name__ ==
"__main__":
152 from AthenaConfiguration.AllConfigFlags
import initConfigFlags
153 from AthenaConfiguration.TestDefaults
import defaultTestFiles, defaultGeometryTags
154 ComponentAccumulator.debugMode =
"trackCA trackPublicTool trackEventAlgo trackCondAlgo trackPrivateTool"
156 flags.Input.Files = defaultTestFiles.RAW_RUN2
157 flags.GeoModel.AtlasVersion = defaultGeometryTags.RUN2
161 from AthenaConfiguration.MainServicesConfig
import MainServicesCfg
163 roisKey =
"ElectronRoIs"
165 flags = flags.cloneAndReplace(
"Tracking.ActiveConfig",
"Trigger.InDetTracking.electron")
171 acc.printConfig(withDetails=
True, summariseProps=
True)
172 acc.store(
open(
"test.pkl",
"wb") )