00001 import FWCore.ParameterSet.Config as cms 00002 00003 # L1 Trigger DQM sequence for offline DQM 00004 # 00005 # used by DQM GUI: DQM/Configuration 00006 # 00007 # 00008 # 00009 # standard RawToDigi sequence and RECO sequence must be run before the L1 Trigger modules, 00010 # labels from the standard sequence are used as default for the L1 Trigger DQM modules 00011 # 00012 # V.M. Ghete - HEPHY Vienna - 2011-01-02 00013 # 00014 00015 00016 # 00017 # DQM L1 Trigger in offline environment 00018 # 00019 00020 import DQMServices.Components.DQMEnvironment_cfi 00021 dqmEnvL1T = DQMServices.Components.DQMEnvironment_cfi.dqmEnv.clone() 00022 dqmEnvL1T.subSystemFolder = 'L1T' 00023 00024 # DQM online L1 Trigger modules, with offline configuration 00025 from DQMOffline.L1Trigger.L1TMonitorOffline_cff import * 00026 from DQMOffline.L1Trigger.L1TMonitorClientOffline_cff import * 00027 00028 00029 # DQM offline L1 Trigger versus Reco modules 00030 00031 import DQMServices.Components.DQMEnvironment_cfi 00032 dqmEnvL1TriggerReco = DQMServices.Components.DQMEnvironment_cfi.dqmEnv.clone() 00033 dqmEnvL1TriggerReco.subSystemFolder = 'L1T/L1TriggerVsReco' 00034 00035 from DQMOffline.L1Trigger.L1TriggerRecoDQM_cff import * 00036 00037 00038 # 00039 # DQM L1 Trigger Emulator in offline environment 00040 # Run also the L1HwVal producers (L1 Trigger emulators) 00041 # 00042 00043 import DQMServices.Components.DQMEnvironment_cfi 00044 dqmEnvL1TEMU = DQMServices.Components.DQMEnvironment_cfi.dqmEnv.clone() 00045 dqmEnvL1TEMU.subSystemFolder = 'L1TEMU' 00046 00047 from DQMOffline.L1Trigger.L1TEmulatorMonitorOffline_cff import * 00048 from DQMOffline.L1Trigger.L1TEmulatorMonitorClientOffline_cff import * 00049 00050 # 00051 # define sequences 00052 # 00053 00054 l1TriggerOnline = cms.Sequence( 00055 l1tMonitorOnline 00056 * dqmEnvL1T 00057 ) 00058 00059 l1TriggerOffline = cms.Sequence( 00060 l1TriggerOnline 00061 * l1TriggerRecoDQM 00062 * dqmEnvL1TriggerReco 00063 ) 00064 00065 # 00066 00067 l1TriggerEmulatorOnline = cms.Sequence( 00068 l1HwValEmulatorMonitor 00069 * dqmEnvL1TEMU 00070 ) 00071 00072 l1TriggerEmulatorOffline = cms.Sequence( 00073 l1TriggerEmulatorOnline 00074 ) 00075 # 00076 00077 l1TriggerDqmOffline = cms.Sequence( 00078 l1TriggerOffline 00079 * l1TriggerEmulatorOffline 00080 ) 00081 00082 00083 # second step in offline environment 00084 00085 l1TriggerDqmOfflineClient = cms.Sequence( 00086 l1tMonitorClient 00087 * l1EmulatorMonitorClient 00088 ) 00089 00090 00091 # 00092 # EMERGENCY removal of modules or full sequences 00093 # ============= 00094 # 00095 # un-comment the module line below to remove the module or the sequence 00096 00097 # 00098 # NOTE: for offline, remove the L1TRate which is reading from cms_orcoff_prod, but also requires 00099 # a hard-coded lxplus path - FIXME check if one can get rid of hard-coded path 00100 # remove also the corresponding client 00101 # 00102 # L1TSync - FIXME - same problems as L1TRate 00103 00104 00105 # DQM first step 00106 # 00107 00108 #l1TriggerDqmOffline.remove(l1TriggerOffline) 00109 #l1TriggerDqmOffline.remove(l1TriggerEmulatorOffline) 00110 00111 # 00112 00113 #l1TriggerOffline.remove(l1TriggerOnline) 00114 #l1TriggerOffline.remove(l1TriggerRecoDQM) 00115 00116 00117 # l1tMonitorOnline sequence, defined in DQM/L1TMonitor/python/L1TMonitor_cff.py 00118 # 00119 #l1TriggerOnline.remove(l1tMonitorOnline) 00120 # 00121 l1tMonitorOnline.remove(bxTiming) 00122 l1tMonitorOnline.remove(l1tLtc) 00123 #l1tMonitorOnline.remove(l1tDttf) 00124 #l1tMonitorOnline.remove(l1tCsctf) 00125 #l1tMonitorOnline.remove(l1tRpctf) 00126 #l1tMonitorOnline.remove(l1tGmt) 00127 #l1tMonitorOnline.remove(l1tGt) 00128 # 00129 #l1ExtraDqmSeq.remove(dqmGctDigis) 00130 #l1ExtraDqmSeq.remove(dqmGtDigis) 00131 #l1ExtraDqmSeq.remove(dqmL1ExtraParticles) 00132 #l1ExtraDqmSeq.remove(l1ExtraDQM) 00133 #l1tMonitorOnline.remove(l1ExtraDqmSeq) 00134 # 00135 l1tMonitorOnline.remove(l1tRate) 00136 #l1tMonitorOnline.remove(l1tRctSeq) 00137 #l1tMonitorOnline.remove(l1tGctSeq) 00138 00139 # 00140 00141 #l1TriggerEmulatorOffline.remove(l1TriggerEmulatorOnline) 00142 00143 # l1HwValEmulatorMonitor sequence, defined in DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py 00144 # 00145 #l1TriggerEmulatorOnline.remove(l1HwValEmulatorMonitor) 00146 00147 # L1HardwareValidation producers 00148 #l1HwValEmulatorMonitor.remove(L1HardwareValidation) 00149 # 00150 #l1HwValEmulatorMonitor.remove(l1EmulatorMonitor) 00151 00152 00153 # DQM second step (harvesting) 00154 # 00155 00156 #l1TriggerDqmOfflineClient.remove(l1tMonitorClient) 00157 #l1TriggerDqmOfflineClient.remove(l1EmulatorMonitorClient) 00158 00159 # l1tMonitorClient sequence, defined in DQM/L1TMonitorClient/python/L1TMonitorClient_cff.py 00160 # 00161 #l1tMonitorClient.remove(l1TriggerQualityTests) 00162 #l1tMonitorClient.remove(l1TriggerClients) 00163 00164 # l1TriggerClients sequence, part of l1tMonitorClient sequence 00165 00166 #l1TriggerClients.remove(l1tGctClient) 00167 #l1TriggerClients.remove(l1tDttfClient) 00168 #l1TriggerClients.remove(l1tCsctfClient) 00169 #l1TriggerClients.remove(l1tRpctfClient) 00170 #l1TriggerClients.remove(l1tGmtClient) 00171 #l1TriggerClients.remove(l1tOccupancyClient) 00172 l1TriggerClients.remove(l1tTestsSummary) 00173 #l1TriggerClients.remove(l1tEventInfoClient) 00174 00175 # l1EmulatorMonitorClient sequence, defined in DQM/L1TMonitorClient/python/L1TEMUMonitorClient_cff.py 00176 # 00177 #l1EmulatorMonitorClient.remove(l1EmulatorQualityTests) 00178 l1EmulatorMonitorClient.remove(l1EmulatorErrorFlagClient) 00179 #l1EmulatorMonitorClient.remove(l1EmulatorEventInfoClient) 00180 00181