@@ -45,8 +45,8 @@ class HcalIsoTrackAnalyzer : public edm::one::EDAnalyzer<edm::one::WatchRuns, ed
4545 double gainFactor (const HcalDbService* dbserv, const HcalDetId& id);
4646
4747 const double pTrackLow_, pTrackHigh_;
48- const int useRaw_, dataType_, unCorrect_;
49- const bool fillInRange_;
48+ const int useRaw_, dataType_, unCorrect_, runLow_, runHigh_ ;
49+ const bool fillInRange_, fillRunRange_ ;
5050 const edm::InputTag labelIsoTkVar_, labelIsoTkEvt_;
5151 const std::vector<int > debEvents_;
5252 const edm::ESGetToken<HcalTopology, HcalRecNumberingRecord> tok_htopo_;
@@ -89,7 +89,10 @@ HcalIsoTrackAnalyzer::HcalIsoTrackAnalyzer(const edm::ParameterSet& iConfig)
8989 useRaw_(iConfig.getUntrackedParameter<int >(" useRaw" , 0 )),
9090 dataType_(iConfig.getUntrackedParameter<int >(" dataType" , 0 )),
9191 unCorrect_(iConfig.getUntrackedParameter<int >(" unCorrect" , 0 )),
92+ runLow_(iConfig.getUntrackedParameter<int >(" runLow" , 0 )),
93+ runHigh_(iConfig.getUntrackedParameter<int >(" runHigh" , -1 )),
9294 fillInRange_(iConfig.getUntrackedParameter<bool >(" fillInRange" , false )),
95+ fillRunRange_((runLow_ < runHigh_) && (runLow_ > 0 )),
9396 labelIsoTkVar_(iConfig.getParameter<edm::InputTag>(" isoTrackVarLabel" )),
9497 labelIsoTkEvt_(iConfig.getParameter<edm::InputTag>(" isoTrackEvtLabel" )),
9598 debEvents_(iConfig.getParameter<std::vector<int >>(" debugEvents" )),
@@ -112,7 +115,8 @@ HcalIsoTrackAnalyzer::HcalIsoTrackAnalyzer(const edm::ParameterSet& iConfig)
112115 edm::LogVerbatim (" HcalIsoTrack" ) << " Parameters read from config file \n\t momentumLow_ " << pTrackLow_
113116 << " \t momentumHigh_ " << pTrackHigh_ << " \t useRaw_ " << useRaw_
114117 << " \t dataType_ " << dataType_ << " \t unCorrect " << unCorrect_
115- << " \t fillInRange " << fillInRange_ << " \t and " << debEvents_.size ()
118+ << " \t fillInRange " << fillInRange_ << " \t fillRunRange " << fillRunRange_
119+ << " for " << runLow_ << " :" << runHigh_ << " \t and " << debEvents_.size ()
116120 << " events to be debugged" ;
117121}
118122
@@ -264,6 +268,10 @@ void HcalIsoTrackAnalyzer::analyze(edm::Event const& iEvent, edm::EventSetup con
264268 if ((t_p < pTrackLow_) || (t_p > pTrackHigh_))
265269 select = false ;
266270 }
271+ if (select && fillRunRange_) {
272+ if ((t_Run < runLow_) || (t_Run > runHigh_))
273+ select = false ;
274+ }
267275 if (select) {
268276 tree->Fill ();
269277 edm::LogVerbatim (" HcalIsoTrackX" ) << " Run " << t_Run << " Event " << t_Event << " p " << t_p;
@@ -306,7 +314,13 @@ void HcalIsoTrackAnalyzer::analyze(edm::Event const& iEvent, edm::EventSetup con
306314 t_ietaGood = itr->ietaGood_ ;
307315 t_trackType = itr->trackType_ ;
308316 t_hltbits = itr->hltbits_ ;
309- tree2->Fill ();
317+ bool select (true );
318+ if (fillRunRange_) {
319+ if ((t_RunNo < static_cast <unsigned int >(runLow_)) || (t_RunNo > static_cast <unsigned int >(runHigh_)))
320+ select = false ;
321+ }
322+ if (select)
323+ tree2->Fill ();
310324 }
311325 } else {
312326 edm::LogVerbatim (" HcalIsoTrack" ) << " Cannot find HcalIsoTrkEventVariablesCollections" ;
@@ -412,6 +426,8 @@ void HcalIsoTrackAnalyzer::fillDescriptions(edm::ConfigurationDescriptions& desc
412426 desc.addUntracked <int >(" dataType" , 0 );
413427 desc.addUntracked <int >(" unCorrect" , 0 );
414428 desc.addUntracked <bool >(" fillInRange" , false );
429+ desc.addUntracked <int >(" runLow" , 0 );
430+ desc.addUntracked <int >(" runHigh" , -1 );
415431 desc.add <edm::InputTag>(" isoTrackVarLabel" , edm::InputTag (" alcaHcalIsotrkProducer" , " HcalIsoTrack" ));
416432 desc.add <edm::InputTag>(" isoTrackEvtLabel" , edm::InputTag (" alcaHcalIsotrkProducer" , " HcalIsoTrackEvent" ));
417433 std::vector<int > events;
0 commit comments