4 if len(primRPVLLDESDM.Stopped_triggerFilterFlags.TriggerNames) == 0:
5 if rec.triggerStream() ==
"Egamma":
6 primRPVLLDESDM.Stopped_triggerFilterFlags.TriggerNames = primRPVLLDESDM.Stopped_triggerFilterFlags.EgammaTriggerNames
7 elif rec.triggerStream() ==
"JetTauEtmiss":
8 primRPVLLDESDM.Stopped_triggerFilterFlags.TriggerNames = primRPVLLDESDM.Stopped_triggerFilterFlags.JetTauEtmissTriggerNames
9 elif rec.triggerStream() ==
"Muons":
10 primRPVLLDESDM.Stopped_triggerFilterFlags.TriggerNames = primRPVLLDESDM.Stopped_triggerFilterFlags.MuonsTriggerNames
11 elif rec.triggerStream() ==
"":
12 primRPVLLDESDM.Stopped_triggerFilterFlags.TriggerNames = primRPVLLDESDM.Stopped_triggerFilterFlags.EgammaTriggerNames
13 primRPVLLDESDM.Stopped_triggerFilterFlags.TriggerNames += primRPVLLDESDM.Stopped_triggerFilterFlags.JetTauEtmissTriggerNames
14 primRPVLLDESDM.Stopped_triggerFilterFlags.TriggerNames += primRPVLLDESDM.Stopped_triggerFilterFlags.MuonsTriggerNames
16 primRPVLLDESDM.Stopped_triggerFilterFlags.TriggerNames = [
"dummy"]
19 primRPVLLDESDM.Stopped_triggerFilterFlags.TriggerNames =
list(
set(primRPVLLDESDM.Stopped_triggerFilterFlags.TriggerNames))
23 from PrimaryDPDMaker.TriggerFilter
import TriggerFilter
24 for trigName
in primRPVLLDESDM.Stopped_triggerFilterFlags.TriggerNames:
25 TriggerFilterName =
"Stopped_TriggerFilter_"+trigName
26 topSequence += TriggerFilter( TriggerFilterName,
28 triggerFilterNames.append( TriggerFilterName )
31 combinedTriggerFilterName =
"Stopped_CombinedTriggerFilter"
32 topSequence += LogicalFilterCombiner( combinedTriggerFilterName )
33 triggerFilterCounter = 0
35 for triggerFilterName
in triggerFilterNames :
36 if triggerFilterCounter > 0 :
38 cmdstring += triggerFilterName
39 triggerFilterCounter += 1
40 topSequence.Stopped_CombinedTriggerFilter.cmdstring = cmdstring
41 filtersToBookkeep+=[
"Stopped_CombinedTriggerFilter"]
47 from EventUtils.EventUtilsConf
import CutAlg
50 flags = primRPVLLDESDM.Stopped_jetFilterFlags
51 jetFilterName =
"Stopped_JetFilter"
54 cutString+= flags.jetCollectionName
56 cutString+=
str(flags.cutEtMin)
58 cutString+= flags.jetCollectionName
60 cutString+=
str(flags.cutEtMax)
62 cutString+= flags.jetCollectionName
64 cutString+=
str(flags.cutEtaMax)
66 cutString+= flags.jetCollectionName
68 cutString+=
str(flags.cutEtaMin)
70 topSequence += CutAlg(jetFilterName,
72 filtersToBookkeep+=[jetFilterName]
77 from LongLivedParticleDPDMaker.LongLivedParticleDPDMakerConf
import MuonSegmentFilterAlg
78 segFilterName =
"Stopped_MuonSegmentFilter"
79 segmentFilter = MuonSegmentFilterAlg(segFilterName)
80 flags = primRPVLLDESDM.Stopped_muonSegmentFilterFlags
82 segmentFilter.minNumberSegments = flags.cutNsegMin
83 segmentFilter.maxNumberSegments = flags.cutNsegMax
84 segmentFilter.muonSegmentContainer = flags.muonSegmentCollectionName
85 topSequence += segmentFilter
87 if primRPVLLDESDM.Stopped_muonSegmentFilterFlags.addPrescaledLooseFilter:
88 looseMuSegFilterName =
"Stopped_looseMuSegFilter"
89 looseMuSegFilter = MuonSegmentFilterAlg(looseMuSegFilterName)
90 looseMuSegFilter.maxNumberSegments=flags.cutNsegMaxLoose
91 looseMuSegFilter.minNumberSegments=flags.cutNsegMinLoose
92 looseMuSegFilter.muonSegmentContainer=flags.muonSegmentCollectionName
93 topSequence += looseMuSegFilter
95 from PrimaryDPDMaker.PrimaryDPDMakerConf
import PrimaryDPDPrescaler
96 prescaledMuSegFilterName =
"Stopped_prescaledMuSegFilter"
97 topSequence += PrimaryDPDPrescaler( prescaledMuSegFilterName,
98 Prescale = flags.prescaleFactorForLooseFilter,
99 AcceptAlgs= [looseMuSegFilterName]
104 combinedOfflineFilterName =
"Stopped_CombinedOfflineFilter"
105 topSequence += LogicalFilterCombiner( combinedOfflineFilterName )
107 cmdstring = jetFilterName+
" and "+segFilterName;
108 if primRPVLLDESDM.Stopped_muonSegmentFilterFlags.addPrescaledLooseFilter:
109 cmdstring = jetFilterName+
" and ("+segFilterName+
" or "+prescaledMuSegFilterName+
")"
111 print(
'Josh\'s Stopped_CombinedOfflineFilter: %s' % cmdstring)
112 topSequence.Stopped_CombinedOfflineFilter.cmdstring=cmdstring
113 filtersToBookkeep+=[
"Stopped_CombinedOfflineFilter"]
117 StoppedCombinedFilter = LogicalFilterCombiner(
"StoppedCombinedFilter")
118 topSequence+=StoppedCombinedFilter
120 topSequence.StoppedCombinedFilter.cmdstring=
"Stopped_CombinedTriggerFilter and Stopped_CombinedOfflineFilter"
124 if topCmdString.__len__() > 0:
126 topCmdString+=
"StoppedCombinedFilter"
128 filtersToBookkeep+=[
"StoppedCombinedFilter"]