1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
|
import FWCore.ParameterSet.Config as cms
# L1 Trigger DQM sequence
#
# used by DQM GUI: DQM/Integration/python/test/l1t_dqm_sourceclient-*_cfg.py
#
# standard RawToDigi sequence must be run before the L1T module, labels
# from the standard sequence are used as default for the L1 DQM modules
# any configuration change in the unpacking must be done in l1t_dqm_sourceclient-*_cfg.py
#
# see CVS for previous authors
#
# V.M. Ghete 2011-05-25 revised version of L1 Trigger DQM
#
#
# DQM modules
#
# Bx Timing DQM module
from DQM.L1TMonitor.BxTiming_cfi import *
# ECAL TPG DQM module
# not run in L1T - do we need it? FIXME
# HCAL TPG DQM module
# not run in L1T - do we need it? FIXME
# RCT DQM module
from DQM.L1TMonitor.L1TRCT_cfi import *
l1tRctRun1 = l1tRct.clone()
l1tRct.rctSource = 'caloStage1Digis'
#l1tRct.gctSource = 'caloStage1Digis'
l1tRctfromRCT = l1tRct.clone(
rctSource = 'rctDigis',
HistFolder = 'L1T/L1TRCT_FromRCT'
)
# RCT PUM DQM
from DQM.L1TMonitor.L1TPUM_cfi import *
# GCT DQM module
from DQM.L1TMonitor.L1TGCT_cfi import *
from DQM.L1TMonitor.L1TStage1Layer2_cfi import *
# DTTPG DQM module
# not run in L1T - do we need it? FIXME
# DTTF DQM module
from DQM.L1TMonitor.L1TDTTF_cfi import *
# CSCTPG DQM module
# not run in L1T - do we need it? FIXME
# CSCTF DQM module
from DQM.L1TMonitor.L1TCSCTF_cfi import *
# RPC DQM module - non-standard name of the module
from DQM.L1TMonitor.L1TRPCTF_cfi import *
# GMT DQM module
from DQM.L1TMonitor.L1TGMT_cfi import *
# GT DQM module
from DQM.L1TMonitor.L1TGT_cfi import *
# L1Extra DQM module
from DQM.L1TMonitor.L1ExtraDQM_cff import *
# L1 rates DQM module
from DQM.L1TMonitor.L1TRate_cfi import *
# L1 BPTX DQM module
from DQM.L1TMonitor.L1TBPTX_cfi import *
#
# other, non pure-L1 stuff
#
# scaler modules (SM and SCAL) - it uses DQM.TrigXMonitor
#
# SCAL scalers
from DQM.TrigXMonitor.L1TScalersSCAL_cfi import *
#
# SM scalers
from DQM.TrigXMonitor.L1Scalers_cfi import *
l1s.l1GtData = cms.InputTag("gtDigis")
l1s.dqmFolder = cms.untracked.string("L1T/L1Scalers_SM")
############################################################
# Stage1 Layer1 unpacker
from EventFilter.RctRawToDigi.l1RctHwDigis_cfi import *
# Stage1 unpacker
from L1Trigger.L1TCommon.l1tRawToDigi_cfi import *
#caloStage1Digis.FedId = cms.int32(809)
# transfer stage1 format digis to legacy format digis
from L1Trigger.L1TCalorimeter.caloStage1LegacyFormatDigis_cfi import *
#caloStage1LegacyFormatDigis.bxMin = cms.int32(-2)
#caloStage1LegacyFormatDigis.bxMax = cms.int32(2)
#################################################################
# GMT digis in parallel running
from EventFilter.L1GlobalTriggerRawToDigi.l1GtUnpack_cfi import *
l1GtUnpack.DaqGtInputTag = 'rawDataCollector'
#############################################################
#
# define sequences
#
l1tRctSeq = cms.Sequence(
l1tRct + l1tRctfromRCT + l1tPUM
)
l1tGctSeq = cms.Sequence(
l1tGct
)
l1tStage1Layer2Seq = cms.Sequence(
l1tStage1Layer2
)
# for L1ExtraDQM, one must run GGT and GMT/GT unpacker and L1Extra producer
# with special configurations
l1ExtraDqmTask = cms.Task(
dqmGctDigis,
dqmGtDigis,
dqmL1ExtraParticles
)
l1ExtraDqmSeq = cms.Sequence(
l1ExtraDQM,
l1ExtraDqmTask
)
l1ExtraStage1DqmTask = cms.Task(
dqmGtDigis,
dqmL1ExtraParticlesStage1
)
l1ExtraStage1DqmSeq = cms.Sequence(
l1ExtraDQMStage1,
l1ExtraStage1DqmTask
)
# L1T monitor sequence
# modules are independent, so the order is irrelevant
l1tMonitorOnlineTask = cms.Task(
l1GtUnpack
)
l1tMonitorOnline = cms.Sequence(
bxTiming +
l1tDttf +
l1tCsctf +
l1tRpctf +
l1tGmt +
l1tGt +
l1ExtraDqmSeq +
l1tBPTX +
l1tRate +
l1tRctRun1 +
l1tGctSeq,
l1tMonitorOnlineTask
)
l1tMonitorStage1OnlineTask = cms.Task(
l1GtUnpack,
rctDigis,
caloStage1Digis,
caloStage1LegacyFormatDigis
)
l1tMonitorStage1Online = cms.Sequence(
bxTiming +
l1tDttf +
l1tCsctf +
l1tRpctf +
l1tGmt +
l1tGt +
l1ExtraStage1DqmSeq +
#l1tBPTX +
#l1tRate +
l1tStage1Layer2Seq +
#l1tRctRun1 +
l1tRctSeq,
l1tMonitorStage1OnlineTask
)
# sequence for L1 Trigger DQM modules on EndPath
# FIXME clarify why needed on EndPath
l1tMonitorEndPathSeq = cms.Sequence(
l1s +
l1tscalers
)
|