diff --git a/Trigger/TrigAlgorithms/TrigFastTrackFinder/python/TrigFastTrackFinder_Config.py b/Trigger/TrigAlgorithms/TrigFastTrackFinder/python/TrigFastTrackFinder_Config.py index 6c853fd11f90db103ba2f42511190c5b63ca0678..347af0cea78ae12ec2fb9d0c9c2474d4be23e4c7 100755 --- a/Trigger/TrigAlgorithms/TrigFastTrackFinder/python/TrigFastTrackFinder_Config.py +++ b/Trigger/TrigAlgorithms/TrigFastTrackFinder/python/TrigFastTrackFinder_Config.py @@ -313,12 +313,19 @@ class TrigFastTrackFinderBase(TrigFastTrackFinder): self.doZFinder = InDetTrigSliceSettings[('doZFinder',remapped_type)] if (self.doZFinder): from IDScanZFinder.IDScanZFinderConf import TrigZFinder - theTrigZFinder = TrigZFinder() + theTrigZFinder = TrigZFinder( name="TrigZFinder_"+remapped_type ) theTrigZFinder.NumberOfPeaks = 3 theTrigZFinder.LayerNumberTool=numberingTool + if remapped_type == "beamSpot" : + theTrigZFinder.TripletMode = 1 + theTrigZFinder.TripletDZ = 1 + theTrigZFinder.PhiBinSize = 0.1 + theTrigZFinder.UseOnlyPixels = True + theTrigZFinder.MaxLayer = 3 + theTrigZFinder.FullScanMode = True #TODO: know this from the RoI anyway - should set for every event - ToolSvc += theTrigZFinder + self.trigZFinder = theTrigZFinder self.doFastZVertexSeeding = True self.zVertexResolution = 1 diff --git a/Trigger/TrigAlgorithms/TrigFastTrackFinder/src/TrigFastTrackFinder.cxx b/Trigger/TrigAlgorithms/TrigFastTrackFinder/src/TrigFastTrackFinder.cxx index e07d30476da5b6a97adbad60f225c6aef0acb4dd..7f44de310f6e2351f9d7763536f8227cab354186 100644 --- a/Trigger/TrigAlgorithms/TrigFastTrackFinder/src/TrigFastTrackFinder.cxx +++ b/Trigger/TrigAlgorithms/TrigFastTrackFinder/src/TrigFastTrackFinder.cxx @@ -80,7 +80,7 @@ TrigFastTrackFinder::TrigFastTrackFinder(const std::string& name, ISvcLocator* p m_trigL2ResidualCalculator("TrigL2ResidualCalculator"), m_trackMaker("InDet::SiTrackMaker_xk/InDetTrigSiTrackMaker"), m_trigInDetTrackFitter("TrigInDetTrackFitter"), - m_trigZFinder("TrigZFinder"), + m_trigZFinder("TrigZFinder", this ), m_trackSummaryTool("Trk::ITrackSummaryTool/ITrackSummaryTool"), m_doCloneRemoval(true), m_useBeamSpot(true), diff --git a/Trigger/TrigTools/TrigInDetConfig/python/InDetSetup.py b/Trigger/TrigTools/TrigInDetConfig/python/InDetSetup.py index b5b119590b5ac779436e2dbd3e4b653a1a48c5e0..7bcfb78ee64a07e96a353cf2819c428edacb3b6d 100644 --- a/Trigger/TrigTools/TrigInDetConfig/python/InDetSetup.py +++ b/Trigger/TrigTools/TrigInDetConfig/python/InDetSetup.py @@ -30,10 +30,13 @@ def makeInDetAlgsNoView( whichSignature='', separateTrackParticleCreator='', roi def makeInDetAlgs( whichSignature='', separateTrackParticleCreator='', rois = 'EMViewRoIs', doFTF = True, viewVerifier='IDViewDataVerifier' ): #If signature specified add suffix to the algorithms - signature = "_" + whichSignature if whichSignature else '' + signature = whichSignature if whichSignature else '' if signature != "" and separateTrackParticleCreator == "": separateTrackParticleCreator = signature + if signature == "" : + raise ValueError('makeInDetAlgs() No signature specified') + #Global keys/names for Trigger collections from .InDetTrigCollectionKeys import TrigPixelKeys, TrigSCTKeys from InDetRecExample.InDetKeys import InDetKeys @@ -81,11 +84,11 @@ def makeInDetAlgs( whichSignature='', separateTrackParticleCreator='', rois = 'E #Pixel from PixelRawDataByteStreamCnv.PixelRawDataByteStreamCnvConf import PixelRodDecoder - InDetPixelRodDecoder = PixelRodDecoder(name = "InDetPixelRodDecoder" + signature) + InDetPixelRodDecoder = PixelRodDecoder(name = "InDetPixelRodDecoder_" + signature) ToolSvc += InDetPixelRodDecoder from PixelRawDataByteStreamCnv.PixelRawDataByteStreamCnvConf import PixelRawDataProviderTool - InDetPixelRawDataProviderTool = PixelRawDataProviderTool(name = "InDetPixelRawDataProviderTool" + signature, + InDetPixelRawDataProviderTool = PixelRawDataProviderTool(name = "InDetPixelRawDataProviderTool_" + signature, Decoder = InDetPixelRodDecoder, checkLVL1ID = False) ToolSvc += InDetPixelRawDataProviderTool @@ -95,7 +98,7 @@ def makeInDetAlgs( whichSignature='', separateTrackParticleCreator='', rois = 'E # load the PixelRawDataProvider from PixelRawDataByteStreamCnv.PixelRawDataByteStreamCnvConf import PixelRawDataProvider - InDetPixelRawDataProvider = PixelRawDataProvider(name = "InDetPixelRawDataProvider"+ signature, + InDetPixelRawDataProvider = PixelRawDataProvider(name = "InDetPixelRawDataProvider_"+ signature, RDOKey = InDetKeys.PixelRDOs(), ProviderTool = InDetPixelRawDataProviderTool,) InDetPixelRawDataProvider.isRoI_Seeded = True @@ -111,11 +114,11 @@ def makeInDetAlgs( whichSignature='', separateTrackParticleCreator='', rois = 'E #SCT from SCT_RawDataByteStreamCnv.SCT_RawDataByteStreamCnvConf import SCT_RodDecoder - InDetSCTRodDecoder = SCT_RodDecoder(name = "InDetSCTRodDecoder" + signature) + InDetSCTRodDecoder = SCT_RodDecoder(name = "InDetSCTRodDecoder_" + signature) ToolSvc += InDetSCTRodDecoder from SCT_RawDataByteStreamCnv.SCT_RawDataByteStreamCnvConf import SCTRawDataProviderTool - InDetSCTRawDataProviderTool = SCTRawDataProviderTool(name = "InDetSCTRawDataProviderTool" + signature, + InDetSCTRawDataProviderTool = SCTRawDataProviderTool(name = "InDetSCTRawDataProviderTool_" + signature, Decoder = InDetSCTRodDecoder) ToolSvc += InDetSCTRawDataProviderTool if (InDetTrigFlags.doPrintConfigurables()): @@ -124,7 +127,7 @@ def makeInDetAlgs( whichSignature='', separateTrackParticleCreator='', rois = 'E # load the SCTRawDataProvider from SCT_RawDataByteStreamCnv.SCT_RawDataByteStreamCnvConf import SCTRawDataProvider - InDetSCTRawDataProvider = SCTRawDataProvider(name = "InDetSCTRawDataProvider" + signature, + InDetSCTRawDataProvider = SCTRawDataProvider(name = "InDetSCTRawDataProvider_" + signature, RDOKey = InDetKeys.SCT_RDOs(), ProviderTool = InDetSCTRawDataProviderTool) InDetSCTRawDataProvider.isRoI_Seeded = True @@ -136,7 +139,7 @@ def makeInDetAlgs( whichSignature='', separateTrackParticleCreator='', rois = 'E # load the SCTEventFlagWriter from SCT_RawDataByteStreamCnv.SCT_RawDataByteStreamCnvConf import SCTEventFlagWriter - InDetSCTEventFlagWriter = SCTEventFlagWriter(name = "InDetSCTEventFlagWriter"+ signature) + InDetSCTEventFlagWriter = SCTEventFlagWriter(name = "InDetSCTEventFlagWriter_"+ signature) viewAlgs.append(InDetSCTEventFlagWriter) @@ -149,7 +152,7 @@ def makeInDetAlgs( whichSignature='', separateTrackParticleCreator='', rois = 'E PixelConfigCondAlg.UseCalibConditions = False from SiClusterizationTool.SiClusterizationToolConf import InDet__ClusterMakerTool - InDetClusterMakerTool = InDet__ClusterMakerTool(name = "InDetClusterMakerTool" + signature, + InDetClusterMakerTool = InDet__ClusterMakerTool(name = "InDetClusterMakerTool_" + signature, SCTLorentzAngleTool = TrigSCTLorentzAngleTool, PixelLorentzAngleTool = TrigPixelLorentzAngleTool) @@ -157,7 +160,7 @@ def makeInDetAlgs( whichSignature='', separateTrackParticleCreator='', rois = 'E from SiClusterizationTool.SiClusterizationToolConf import InDet__MergedPixelsTool - InDetMergedPixelsTool = InDet__MergedPixelsTool(name = "InDetMergedPixelsTool" + signature, + InDetMergedPixelsTool = InDet__MergedPixelsTool(name = "InDetMergedPixelsTool_" + signature, globalPosAlg = InDetClusterMakerTool, MinimalSplitSize = 0, MaximalSplitSize = 49, @@ -167,11 +170,11 @@ def makeInDetAlgs( whichSignature='', separateTrackParticleCreator='', rois = 'E ToolSvc += InDetMergedPixelsTool from SiClusterizationTool.SiClusterizationToolConf import InDet__PixelGangedAmbiguitiesFinder - InDetPixelGangedAmbiguitiesFinder = InDet__PixelGangedAmbiguitiesFinder(name = "InDetPixelGangedAmbiguitiesFinder" + signature) + InDetPixelGangedAmbiguitiesFinder = InDet__PixelGangedAmbiguitiesFinder(name = "InDetPixelGangedAmbiguitiesFinder_" + signature) ToolSvc += InDetPixelGangedAmbiguitiesFinder from InDetPrepRawDataFormation.InDetPrepRawDataFormationConf import InDet__PixelClusterization - InDetPixelClusterization = InDet__PixelClusterization(name = "InDetPixelClusterization" + signature, + InDetPixelClusterization = InDet__PixelClusterization(name = "InDetPixelClusterization_" + signature, clusteringTool = InDetMergedPixelsTool, gangedAmbiguitiesFinder = InDetPixelGangedAmbiguitiesFinder, DataObjectName = InDetKeys.PixelRDOs(), @@ -186,29 +189,29 @@ def makeInDetAlgs( whichSignature='', separateTrackParticleCreator='', rois = 'E # Create SCT_ConditionsSummaryTool from SCT_ConditionsTools.SCT_ConditionsSummaryToolSetup import SCT_ConditionsSummaryToolSetup - sct_ConditionsSummaryToolSetup = SCT_ConditionsSummaryToolSetup("InDetSCT_ConditionsSummaryTool" + signature) + sct_ConditionsSummaryToolSetup = SCT_ConditionsSummaryToolSetup("InDetSCT_ConditionsSummaryTool_" + signature) sct_ConditionsSummaryToolSetup.setup() InDetSCT_ConditionsSummaryTool = sct_ConditionsSummaryToolSetup.getTool() # noqa: F841 - sct_ConditionsSummaryToolSetupWithoutFlagged = SCT_ConditionsSummaryToolSetup("InDetSCT_ConditionsSummaryToolWithoutFlagged" + signature) + sct_ConditionsSummaryToolSetupWithoutFlagged = SCT_ConditionsSummaryToolSetup("InDetSCT_ConditionsSummaryToolWithoutFlagged_" + signature) sct_ConditionsSummaryToolSetupWithoutFlagged.setup() InDetSCT_ConditionsSummaryToolWithoutFlagged = sct_ConditionsSummaryToolSetupWithoutFlagged.getTool() # Add conditions tools to SCT_ConditionsSummaryTool from SCT_ConditionsTools.SCT_ConfigurationConditionsToolSetup import SCT_ConfigurationConditionsToolSetup sct_ConfigurationConditionsToolSetup = SCT_ConfigurationConditionsToolSetup() - sct_ConfigurationConditionsToolSetup.setToolName("InDetSCT_ConfigurationConditionsTool" + signature) + sct_ConfigurationConditionsToolSetup.setToolName("InDetSCT_ConfigurationConditionsTool_" + signature) sct_ConfigurationConditionsToolSetup.setup() InDetSCT_ConditionsSummaryToolWithoutFlagged.ConditionsTools.append(sct_ConfigurationConditionsToolSetup.getTool().getFullName()) from SCT_ConditionsTools.SCT_ReadCalibDataToolSetup import SCT_ReadCalibDataToolSetup sct_ReadCalibDataToolSetup = SCT_ReadCalibDataToolSetup() - sct_ReadCalibDataToolSetup.setToolName("InDetSCT_ReadCalibDataTool" + signature) + sct_ReadCalibDataToolSetup.setToolName("InDetSCT_ReadCalibDataTool_" + signature) sct_ReadCalibDataToolSetup.setup() InDetSCT_ConditionsSummaryToolWithoutFlagged.ConditionsTools.append(sct_ReadCalibDataToolSetup.getTool().getFullName()) from SCT_ConditionsTools.SCT_ByteStreamErrorsToolSetup import SCT_ByteStreamErrorsToolSetup sct_ByteStreamErrorsToolSetup = SCT_ByteStreamErrorsToolSetup() - sct_ByteStreamErrorsToolSetup.setToolName("InDetSCT_BSErrorTool" + signature) + sct_ByteStreamErrorsToolSetup.setToolName("InDetSCT_BSErrorTool_" + signature) sct_ByteStreamErrorsToolSetup.setConfigTool(sct_ConfigurationConditionsToolSetup.getTool()) sct_ByteStreamErrorsToolSetup.setup() InDetSCT_ConditionsSummaryToolWithoutFlagged.ConditionsTools.append(sct_ByteStreamErrorsToolSetup.getTool().getFullName()) @@ -220,7 +223,7 @@ def makeInDetAlgs( whichSignature='', separateTrackParticleCreator='', rois = 'E # --- SCT_ClusteringTool # from SiClusterizationTool.SiClusterizationToolConf import InDet__SCT_ClusteringTool - InDetSCT_ClusteringTool = InDet__SCT_ClusteringTool(name = "InDetSCT_ClusteringTool" + signature, + InDetSCT_ClusteringTool = InDet__SCT_ClusteringTool(name = "InDetSCT_ClusteringTool_" + signature, globalPosAlg = InDetClusterMakerTool, conditionsTool = InDetSCT_ConditionsSummaryToolWithoutFlagged) if InDetTrigFlags.doSCTIntimeHits(): @@ -234,7 +237,7 @@ def makeInDetAlgs( whichSignature='', separateTrackParticleCreator='', rois = 'E # from InDetPrepRawDataFormation.InDetPrepRawDataFormationConf import InDet__SCT_Clusterization - InDetSCT_Clusterization = InDet__SCT_Clusterization(name = "InDetSCT_Clusterization" + signature, + InDetSCT_Clusterization = InDet__SCT_Clusterization(name = "InDetSCT_Clusterization_" + signature, clusteringTool = InDetSCT_ClusteringTool, # ChannelStatus = InDetSCT_ChannelStatusAlg, DataObjectName = InDetKeys.SCT_RDOs(), @@ -253,12 +256,12 @@ def makeInDetAlgs( whichSignature='', separateTrackParticleCreator='', rois = 'E #Space points and FTF from SiSpacePointTool.SiSpacePointToolConf import InDet__SiSpacePointMakerTool - InDetSiSpacePointMakerTool = InDet__SiSpacePointMakerTool(name = "InDetSiSpacePointMakerTool" + signature) + InDetSiSpacePointMakerTool = InDet__SiSpacePointMakerTool(name = "InDetSiSpacePointMakerTool_" + signature) from AthenaCommon.DetFlags import DetFlags from SiSpacePointFormation.SiSpacePointFormationConf import InDet__SiTrackerSpacePointFinder from SiSpacePointFormation.InDetOnlineMonitor import InDetMonitoringTool - InDetSiTrackerSpacePointFinder = InDet__SiTrackerSpacePointFinder(name = "InDetSiTrackerSpacePointFinder" + signature, + InDetSiTrackerSpacePointFinder = InDet__SiTrackerSpacePointFinder(name = "InDetSiTrackerSpacePointFinder_" + signature, SiSpacePointMakerTool = InDetSiSpacePointMakerTool, PixelsClustersName = TrigPixelKeys.Clusters, SpacePointsPixelName = TrigPixelKeys.SpacePoints, @@ -289,7 +292,7 @@ def makeInDetAlgs( whichSignature='', separateTrackParticleCreator='', rois = 'E from TrigFastTrackFinder.TrigFastTrackFinder_Config import TrigFastTrackFinderBase theFTF = TrigFastTrackFinderBase("TrigFastTrackFinder_" + whichSignature, whichSignature) theFTF.RoIs = rois - theFTF.TracksName = "TrigFastTrackFinder_Tracks" + separateTrackParticleCreator + theFTF.TracksName = "TrigFastTrackFinder_Tracks_" + separateTrackParticleCreator #the following doCloneRemoval modification should be set up in the InDetTrigSliceSettings once legacy trigger not needed if whichSignature=="Electron": @@ -302,13 +305,19 @@ def makeInDetAlgs( whichSignature='', separateTrackParticleCreator='', rois = 'E from TrigEDMConfig.TriggerEDMRun3 import recordable from InDetTrigParticleCreation.InDetTrigParticleCreationConf import InDet__TrigTrackingxAODCnvMT - trackCollection = "HLT_IDTrack" + separateTrackParticleCreator + "_FTF" + trackCollection = "HLT_IDTrack_" + separateTrackParticleCreator + "_FTF" + theTrackParticleCreatorAlg = InDet__TrigTrackingxAODCnvMT(name = "InDetTrigTrackParticleCreatorAlg" + whichSignature, doIBLresidual = False, - TrackName = "TrigFastTrackFinder_Tracks" + separateTrackParticleCreator, - TrackParticlesName = recordable( trackCollection ), + TrackName = "TrigFastTrackFinder_Tracks_" + separateTrackParticleCreator, ParticleCreatorTool = InDetTrigParticleCreatorToolFTF) + + if separateTrackParticleCreator == "BeamSpot" : + theTrackParticleCreatorAlg.TrackParticlesName = trackCollection + else: + theTrackParticleCreatorAlg.TrackParticlesName = recordable( trackCollection ) + theTrackParticleCreatorAlg.roiCollectionName = rois viewAlgs.append(theTrackParticleCreatorAlg) diff --git a/Trigger/TrigValidation/TriggerTest/share/ref_data_v1Dev_build.ref b/Trigger/TrigValidation/TriggerTest/share/ref_data_v1Dev_build.ref index cedc2fd9ca3d894bf5acfa08b20785cd94901094..5c6dd4680bfc7250206b7dce37b07b9e10abb5d6 100644 --- a/Trigger/TrigValidation/TriggerTest/share/ref_data_v1Dev_build.ref +++ b/Trigger/TrigValidation/TriggerTest/share/ref_data_v1Dev_build.ref @@ -70,6 +70,9 @@ TrigSignatureMoniMT INFO -- #1175391812 Features TrigSignatureMoniMT INFO HLT_beamspot_allTE_trkfast_BeamSpotPEB_L1J15 #3989372080 TrigSignatureMoniMT INFO -- #3989372080 Events 20 20 20 20 - - - - 20 TrigSignatureMoniMT INFO -- #3989372080 Features 20 20 - - - - +TrigSignatureMoniMT INFO HLT_beamspot_trkFS_trkfast_BeamSpotPEB_L1J15 #628534730 +TrigSignatureMoniMT INFO -- #628534730 Events 20 20 20 20 - - - - 20 +TrigSignatureMoniMT INFO -- #628534730 Features 20 20 - - - - TrigSignatureMoniMT INFO HLT_costmonitor_CostMonDS_L1All #843341480 TrigSignatureMoniMT INFO -- #843341480 Events 20 20 20 - - - - - 20 TrigSignatureMoniMT INFO -- #843341480 Features 20 - - - - - diff --git a/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py b/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py index e86f0e15ca31a2623af66d0c98a278505f556c6a..37ec0fe83fb2cb75f0b4c7dd10a43e4b52a6606f 100644 --- a/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py +++ b/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py @@ -291,6 +291,12 @@ TriggerHLTListRun3 = [ ('xAOD::TrackParticleContainer#HLT_IDTrack_FS_FTF', 'BS ESD AODFULL', 'Jet'), ('xAOD::TrackParticleAuxContainer#HLT_IDTrack_FS_FTFAux.', 'BS ESD AODFULL', 'Jet'), + # custom BeamSpot tracks - we don't want to write these out in general so this + # is commented, if we want to write them out at some point, then these lines + # should be uncommented and they should get written out + # ('xAOD::TrackParticleContainer#HLT_IDTrack_BeamSpot_FTF', 'BS ESD AODFULL', 'ID', 'inViews:beamspotViewRoIs' ), + # ('xAOD::TrackParticleAuxContainer#HLT_IDTrack_BeamSpot_FTFAux.', 'BS ESD AODFULL', 'ID', 'inViews:beamspotViewRoIs' ), + # MET ('xAOD::TrigMissingETContainer#HLT_MET_cell', 'BS ESD AODFULL AODSLIM AODVERYSLIM', 'MET'), ('xAOD::TrigMissingETAuxContainer#HLT_MET_cellAux.', 'BS ESD AODFULL AODSLIM AODVERYSLIM', 'MET'), diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Bjet/BjetTrackingConfiguration.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Bjet/BjetTrackingConfiguration.py index f8947fd1370c5214cab4c499edb05f2ee73b8829..61881bbd07da948b138df3c4e60a312f76394a06 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Bjet/BjetTrackingConfiguration.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Bjet/BjetTrackingConfiguration.py @@ -8,7 +8,8 @@ def getSecondStageBjetTracking( inputRoI, dataObjects ): # Second stage of Fast tracking (for precision tracking preparation) from TrigInDetConfig.InDetSetup import makeInDetAlgs - viewAlgs, viewVerify = makeInDetAlgs( whichSignature='Jet',separateTrackParticleCreator="_Bjet", rois=inputRoI ) + + viewAlgs, viewVerify = makeInDetAlgs( whichSignature='Jet',separateTrackParticleCreator="Bjet", rois=inputRoI ) viewVerify.DataObjects += dataObjects diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/CalibCosmicMon/BeamspotChainConfiguration.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/CalibCosmicMon/BeamspotChainConfiguration.py index 872b30142a90df6b68230ebbb264a064982b21b4..2154b737f92d7d9d5cdf2005c9244864470ca6da 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/CalibCosmicMon/BeamspotChainConfiguration.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/CalibCosmicMon/BeamspotChainConfiguration.py @@ -13,44 +13,57 @@ from ViewAlgs.ViewAlgsConf import EventViewCreatorAlgorithm, ViewCreatorInitialR #---------------------------------------------------------------- + # fragments generating configuration will be functions in New JO, # so let's make them functions already now #---------------------------------------------------------------- +def trkFS_trkfast_Cfg( flags ): + return allTE_trkfast( signature="FS" ) - def allTE_trkfast_Cfg( flags ): - return allTE_trkfast() + return allTE_trkfast( signature="BeamSpot" ) -def allTE_trkfast(): - inputMakerAlg = EventViewCreatorAlgorithm("IM_beamspot") +def allTE_trkfast( signature="FS" ): + inputMakerAlg = EventViewCreatorAlgorithm("IM_beamspot_"+signature) inputMakerAlg.ViewFallThrough = True inputMakerAlg.RoIsLink = "initialRoI" inputMakerAlg.RoITool = ViewCreatorInitialROITool() - inputMakerAlg.InViewRoIs = "beamspotInputRoIs" - inputMakerAlg.Views = "beamspotViewRoIs" + inputMakerAlg.InViewRoIs = "beamspotViewRoI_"+signature + inputMakerAlg.Views = "beamspotViewRoI_"+signature from TrigInDetConfig.InDetSetup import makeInDetAlgs - viewAlgs, viewVerify = makeInDetAlgs(whichSignature='FS', rois=inputMakerAlg.InViewRoIs) from TrigT2BeamSpot.T2VertexBeamSpotConfig import T2VertexBeamSpot_activeAllTE - T2VertexBeamSpot_activeAllTE.TrackCollections = ["TrigFastTrackFinder_Tracks_FS"] - viewVerify.DataObjects += [( 'TrigRoiDescriptorCollection' , 'StoreGateSvc+beamspotInputRoIs' ), + viewAlgs, viewVerify = makeInDetAlgs( whichSignature=signature, rois=inputMakerAlg.InViewRoIs ) + + vertexAlg = T2VertexBeamSpot_activeAllTE( "vertex_"+signature ) + vertexAlg.TrackCollections = ["TrigFastTrackFinder_Tracks_"+signature] + + viewVerify.DataObjects += [( 'TrigRoiDescriptorCollection' , 'StoreGateSvc+beamspotViewRoI_'+signature ), ( 'xAOD::EventInfo' , 'StoreGateSvc+EventInfo' )] - beamspotSequence = seqAND("beamspotSequence",viewAlgs+[T2VertexBeamSpot_activeAllTE()]) + # Make sure the event info is still available at whole-event level + from AthenaCommon.AlgSequence import AlgSequence + topSequence = AlgSequence() + topSequence.SGInputLoader.Load += [( 'xAOD::EventInfo' , 'StoreGateSvc+EventInfo' )] + + beamspotSequence = seqAND( "beamspotSequence_"+signature, viewAlgs+[vertexAlg] ) inputMakerAlg.ViewNodeName = beamspotSequence.name() + beamspotViewsSequence = seqAND( "beamspotViewsSequence"+signature, [ inputMakerAlg, beamspotSequence ]) + #hypo - beamspotHypoAlg = TrigStreamerHypoAlgMT("BeamspotHypoAlg") + beamspotHypoAlg = TrigStreamerHypoAlgMT("BeamspotHypoAlg_"+signature) beamspotHypoAlg.RuntimeValidation = False #Needed to avoid the ERROR ! Decision has no 'feature' ElementLink beamspotHypoToolGen= StreamerHypoToolMTgenerator - beamspotViewsSequence = seqAND("beamspotViewsSequence", [ inputMakerAlg, beamspotSequence ]) + return MenuSequence( Sequence = beamspotViewsSequence, - Maker = inputMakerAlg, - Hypo = beamspotHypoAlg, - HypoToolGen = beamspotHypoToolGen ) + Maker = inputMakerAlg, + Hypo = beamspotHypoAlg, + HypoToolGen = beamspotHypoToolGen ) + # Class to configure chain #---------------------------------------------------------------- @@ -70,9 +83,9 @@ class BeamspotChainConfiguration(ChainConfigurationBase): # define here the names of the steps and obtain the chainStep configuration # -------------------- stepDictionary = { - "allTE_trkfast":[self.getAllTEStep()] + "allTE_trkfast":[self.getAllTEStep()], #"activeTE_trkfast":[self.activeTE_trkfast()], - #"trkFS_trkfast":[self.trkFS_trkfast()], + "trkFS_trkfast":[self.getTrkFSStep()], } #key = self.chainPart['EFrecoAlg'] @@ -86,7 +99,14 @@ class BeamspotChainConfiguration(ChainConfigurationBase): # -------------------- - # Configuration of costmonitor + # Configuration of costmonitor (costmonitor ?? but isn't this is the actua chain configuration ??) + # -------------------- + def getTrkFSStep(self): + return self.getStep(1,"trkFS_trkfast",[trkFS_trkfast_Cfg]) + + + # -------------------- + # Configuration of costmonitor (costmonitor ?? but isn't this is the actua chain configuration ??) # -------------------- def getAllTEStep(self): return self.getStep(1,"allTE_trkfast",[allTE_trkfast_Cfg]) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/CalibCosmicMon/GenerateBeamspotChainDefs.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/CalibCosmicMon/GenerateBeamspotChainDefs.py index 68859d2c7225a5de0c209b06b128ffb0f8ff28e0..d83b6b1088f7675bb53b6aeaf1ec14e43a671091 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/CalibCosmicMon/GenerateBeamspotChainDefs.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/CalibCosmicMon/GenerateBeamspotChainDefs.py @@ -1,3 +1,5 @@ + + # Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration from TriggerMenuMT.HLTMenuConfig.Menu.ChainDictTools import splitChainDict diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Egamma/ElectronSequenceSetup.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Egamma/ElectronSequenceSetup.py index 1d85c060d838e5e146ab3f6f9fd5d230471f5716..2a673f5d85e01b9585c38c427009d6a8d368bf4d 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Egamma/ElectronSequenceSetup.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Egamma/ElectronSequenceSetup.py @@ -19,12 +19,12 @@ def fastElectronSequence(ConfigFlags): from TrigInDetConfig.InDetSetup import makeInDetAlgs RoIs = "EMIDRoIs" # contract with the fastCalo - viewAlgs, ViewVerify = makeInDetAlgs(whichSignature = "Electron", separateTrackParticleCreator="_Electron", rois = RoIs) + viewAlgs, viewVerify = makeInDetAlgs( whichSignature = "Electron", separateTrackParticleCreator="Electron", rois = RoIs ) # A simple algorithm to confirm that data has been inherited from parent view # Required to satisfy data dependencies from TriggerMenuMT.HLTMenuConfig.CommonSequences.CaloSequenceSetup import CaloMenuDefs - ViewVerify.DataObjects += [( 'xAOD::TrigEMClusterContainer' , 'StoreGateSvc+' + CaloMenuDefs.L2CaloClusters ), + viewVerify.DataObjects += [( 'xAOD::TrigEMClusterContainer' , 'StoreGateSvc+' + CaloMenuDefs.L2CaloClusters ), ( 'TrigRoiDescriptorCollection' , 'StoreGateSvc+EMIDRoIs' )] TrackParticlesName = "" diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Jet/JetTrackingConfig.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Jet/JetTrackingConfig.py index 3af1957034e44d5709fff01e1d49a42ffd598603..62825ec4bbda69578383bc6da9b15a6870631d25 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Jet/JetTrackingConfig.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Jet/JetTrackingConfig.py @@ -17,7 +17,8 @@ def JetTrackingSequence(dummyFlags,trkopt,RoIs): if trkopt=="ftf": from TrigInDetConfig.InDetSetup import makeInDetAlgsNoView # Guess FS rather than making it jet-specific? - jetTrkSeq += makeInDetAlgsNoView( "JetFS", "_FS", rois=RoIs ) + viewAlgs = makeInDetAlgsNoView( "JetFS", "FS", rois=RoIs ) + jetTrkSeq += viewAlgs tracksname = recordable("HLT_IDTrack_FS_FTF") verticesname = recordable("HLT_EFHistoPrmVtx") diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/LS2_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/LS2_v1.py index 2d74307216f001307b980086963e360e06ac918b..fa933865a28432b97e98cf568dab6adbddd85fc0 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/LS2_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/LS2_v1.py @@ -236,9 +236,11 @@ def setupMenu(): ChainProp(name='HLT_e7_lhmedium_mu24_L1MU20',l1SeedThresholds=['EM3','MU20'], stream=[PhysicsStream], groups=MultiElectronGroup), # Test photon-muon chain (isolation is there to have different number of steps) ChainProp(name='HLT_g25_medium_mu24_ivarmedium_L1MU20',l1SeedThresholds=['EM15VH','MU20'], stream=[PhysicsStream], groups=MultiElectronGroup), - ] + ] TriggerFlags.HeavyIonSlice.signatures = TriggerFlags.HeavyIonSlice.signatures() + [] - TriggerFlags.BeamspotSlice.signatures = TriggerFlags.BeamspotSlice.signatures() + [] + TriggerFlags.BeamspotSlice.signatures = TriggerFlags.BeamspotSlice.signatures() + [ + ChainProp(name='HLT_beamspot_allTE_trkfast_BeamSpotPEB_L1J15', l1SeedThresholds=['FSNOSEED'], stream=['BeamSpot'], groups=['RATE:BeamSpot', 'BW:BeamSpot']), + ] TriggerFlags.MinBiasSlice.signatures = TriggerFlags.MinBiasSlice.signatures() + [ ChainProp(name='HLT_mb_sptrk_L1RD0_FILLED', l1SeedThresholds=['FSNOSEED'], stream=[PhysicsStream], groups=MinBiasGroup), # ChainProp(name='HLT_mb_sp400_trk40_hmt_L1RD0_FILLED', l1SeedThresholds=['FSNOSEED'], stream=[PhysicsStream], groups=MinBiasGroup), diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/PhysicsP1_pp_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/PhysicsP1_pp_run3_v1.py index 21cb69bd0cce09415802f59494a56dcb52e7bb83..1485c8ca0c7c7f1a6fe75a98090eb2371e25dbf9 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/PhysicsP1_pp_run3_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/PhysicsP1_pp_run3_v1.py @@ -51,7 +51,7 @@ def addP1Signatures(): ] TriggerFlags.HeavyIonSlice.signatures = TriggerFlags.HeavyIonSlice.signatures() + [] TriggerFlags.BeamspotSlice.signatures = TriggerFlags.BeamspotSlice.signatures() + [ - ChainProp(name='HLT_beamspot_allTE_trkfast_BeamSpotPEB_L1J15', l1SeedThresholds=['FSNOSEED'], stream=['BeamSpot'], groups=['RATE:BeamSpot', 'BW:BeamSpot']), + ChainProp(name='HLT_beamspot_trkFS_trkfast_BeamSpotPEB_L1J15', l1SeedThresholds=['FSNOSEED'], stream=['BeamSpot'], groups=['RATE:BeamSpot', 'BW:BeamSpot']), #ChainProp(name='HLT_beamspot_activeTE_trkfast_L1J15', l1SeedThresholds=['FSNOSEED'], stream=['BeamSpot'], groups=['RATE:BeamSpot', 'BW:BeamSpot']), #ChainProp(name='HLT_beamspot_trkFS_trkfast_L1J15', l1SeedThresholds=['FSNOSEED'], stream=['BeamSpot'], groups=['RATE:BeamSpot', 'BW:BeamSpot']), ] diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauRecoSequences.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauRecoSequences.py index 0b4fdc2fbcaf4055eaaa30c3594d2de23a1bdbc9..024c2966076aa1ecc2a2a2fae2856d654e7d348d 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauRecoSequences.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauRecoSequences.py @@ -195,6 +195,9 @@ def tauIdTrackSequence( RoIs , name): if ("Iso" in name) or ("TrackTwo" in name) or ("EF" in name): signName = 'TauIso' + from TrigInDetConfig.InDetSetup import makeInDetAlgs + viewAlgs, viewVerify = makeInDetAlgs( whichSignature=signName, separateTrackParticleCreator=signName, rois = RoIs ) + tauViewDataVerifierName = "" if "FTFId" in name: tauViewDataVerifierName = "tauViewDataVerifierIdFTF" @@ -208,14 +211,14 @@ def tauIdTrackSequence( RoIs , name): tauViewDataVerifierName = "tauViewDataVerifierEF" from TrigInDetConfig.InDetSetup import makeInDetAlgs - viewAlgs, ViewVerify = makeInDetAlgs( whichSignature=signName, separateTrackParticleCreator = "_" + signName, rois = RoIs, viewVerifier = tauViewDataVerifierName ) + viewAlgs, viewVerify = makeInDetAlgs( whichSignature=signName, separateTrackParticleCreator=signName, rois = RoIs, viewVerifier = tauViewDataVerifierName ) if "FTFIso" in name: - ViewVerify.DataObjects += [( 'xAOD::TauJetContainer' , 'StoreGateSvc+HLT_TrigTauRecMerged_CaloOnlyMVA' )] + viewVerify.DataObjects += [( 'xAOD::TauJetContainer' , 'StoreGateSvc+HLT_TrigTauRecMerged_CaloOnlyMVA' )] else: - ViewVerify.DataObjects += [( 'xAOD::TauJetContainer' , 'StoreGateSvc+HLT_TrigTauRecMerged_CaloOnly')] + viewVerify.DataObjects += [( 'xAOD::TauJetContainer' , 'StoreGateSvc+HLT_TrigTauRecMerged_CaloOnly')] - ViewVerify.DataObjects += [( 'xAOD::TauTrackContainer' , 'StoreGateSvc+HLT_tautrack_dummy' ), + viewVerify.DataObjects += [( 'xAOD::TauTrackContainer' , 'StoreGateSvc+HLT_tautrack_dummy' ), ( 'TrigRoiDescriptorCollection' , 'StoreGateSvc+' + RoIs ), ( 'xAOD::EventInfo' , 'StoreGateSvc+EventInfo' ), ( 'TrigRoiDescriptorCollection' , 'StoreGateSvc+TAUCaloRoIs' ), @@ -230,7 +233,7 @@ def tauIdTrackSequence( RoIs , name): if not conddb.folderRequested( "PixelClustering/PixelClusNNCalib" ): topSequence.SGInputLoader.Load += [( 'TTrainedNetworkCollection' , 'ConditionStore+PixelClusterNN' ), ( 'TTrainedNetworkCollection' , 'ConditionStore+PixelClusterNNWithTrack' )] - ViewVerify.DataObjects += [( 'TTrainedNetworkCollection' , 'ConditionStore+PixelClusterNN' ), + viewVerify.DataObjects += [( 'TTrainedNetworkCollection' , 'ConditionStore+PixelClusterNN' ), ( 'TTrainedNetworkCollection' , 'ConditionStore+PixelClusterNNWithTrack' )] for viewAlg in viewAlgs: @@ -302,13 +305,13 @@ def tauCoreTrackSequence( RoIs, name ): tauCoreTrackSequence = seqAND(name) from TrigInDetConfig.InDetSetup import makeInDetAlgs - viewAlgs, ViewVerify = makeInDetAlgs(whichSignature='TauCore',separateTrackParticleCreator="_TauCore",rois = RoIs) + viewAlgs, viewVerify = makeInDetAlgs( whichSignature='TauCore', separateTrackParticleCreator="TauCore", rois = RoIs ) for viewAlg in viewAlgs: if "InDetTrigTrackParticleCreatorAlg" in viewAlg.name(): TrackCollection = viewAlg.TrackName - ViewVerify.DataObjects += [( 'xAOD::TauJetContainer' , 'StoreGateSvc+HLT_TrigTauRecMerged_CaloOnlyMVA' ), + viewVerify.DataObjects += [( 'xAOD::TauJetContainer' , 'StoreGateSvc+HLT_TrigTauRecMerged_CaloOnlyMVA' ), ( 'TrigRoiDescriptorCollection' , 'StoreGateSvc+' + RoIs ), ( 'IDCInDetBSErrContainer' , 'StoreGateSvc+SCT_ByteStreamErrs' )] #For some reason not picked up properly @@ -320,7 +323,7 @@ def tauCoreTrackSequence( RoIs, name ): if not conddb.folderRequested( "PixelClustering/PixelClusNNCalib" ): topSequence.SGInputLoader.Load += [( 'TTrainedNetworkCollection' , 'ConditionStore+PixelClusterNN' ), ( 'TTrainedNetworkCollection' , 'ConditionStore+PixelClusterNNWithTrack' )] - ViewVerify.DataObjects += [( 'TTrainedNetworkCollection' , 'ConditionStore+PixelClusterNN' ), + viewVerify.DataObjects += [( 'TTrainedNetworkCollection' , 'ConditionStore+PixelClusterNN' ), ( 'TTrainedNetworkCollection' , 'ConditionStore+PixelClusterNNWithTrack' )] tauTrackRoiUpdaterAlg = _algoTauTrackRoiUpdater(inputRoIs = RoIs, tracks = TrackCollection)