CMS 3D CMS Logo

L1TStage2OMTF.cc
Go to the documentation of this file.
1 /*
2  * \L1TStage2OMTF.cc
3  * \author Esmaeel Eskandari Tadavani
4  * \November 2015
5 */
6 
8 
10  monitorDir(ps.getUntrackedParameter<std::string>("monitorDir","")),
11  omtfSource(ps.getParameter<edm::InputTag>("omtfSource")),
12  verbose(ps.getUntrackedParameter<bool>("verbose", false)),
13  global_phi(-1000)
14 {
15  omtfToken=consumes<l1t::RegionalMuonCandBxCollection>(ps.getParameter<edm::InputTag>("omtfSource"));
16 }
17 
19 {
20 }
21 
22 void L1TStage2OMTF::dqmBeginRun(const edm::Run& iRrun, const edm::EventSetup& eveSetup)
23 {
24 }
25 
26 
27 void L1TStage2OMTF::bookHistograms(DQMStore::IBooker &ibooker, const edm::Run& iRun, const edm::EventSetup& eveSetup)
28 {
30 
31  omtf_hwEta = ibooker.book1D("omtf_hwEta", "HW #eta", 447, -223.5, 223.5);
32  omtf_hwLocalPhi = ibooker.book1D("omtf_hwLocalPhi", "HW Local #phi", 201, -100.5, 100.5);
33  omtf_hwPt = ibooker.book1D("omtf_hwPt", "HW p_{T}", 511, -0.5, 510.5);
34  omtf_hwQual= ibooker.book1D("omtf_hwQual" , "HW Quality", 20, -0.5, 19.5);
35  omtf_bx = ibooker.book1D("omtf_bx","BX", 5, -2.5, 2.5);
36 
37  omtf_hwEta_hwLocalPhi = ibooker.book2D("omtf_hwEta_hwLocalPhi", "HW #eta vs HW Local #phi" , 447, -223.5, 223.5, 201, -100.5, 100.5);
38  omtf_hwEta_hwLocalPhi->setTitle(";HW #eta; HW Local #phi");
39 
40  omtf_hwPt_hwEta = ibooker.book2D("omtf_hwPt_hwEta" , "HW p_{T} vs HW #eta", 511, -0.5, 510.5, 447, -223.5, 223.5);
41  omtf_hwPt_hwEta->setTitle(";HW p_{T}; HW #eta");
42 
43  omtf_hwPt_hwLocalPhi = ibooker.book2D("omtf_hwPt_hwLocalPhi" , "HW p_{T} vs HW Local #phi", 511, -0.5, 510.5, 201, -100.5, 100.5);
44  omtf_hwPt_hwLocalPhi->setTitle(";HW p_{T}; HW Local #phi");
45 
46  omtf_hwEta_bx = ibooker.book2D("omtf_hwEta_bx" , "HW #eta vs BX" , 447, -223.5, 223.5, 5, -2.5, 2.5);
47  omtf_hwEta_bx->setTitle(";HW #eta; BX");
48 
49  omtf_hwLocalPhi_bx = ibooker.book2D("omtf_hwLocalPhi_bx" , "HW Local #phi vs BX" , 201, -100.5, 100.5, 5, -2.5, 2.5);
50  omtf_hwLocalPhi_bx->setTitle(";HW Local #phi; BX");
51 
52  omtf_hwPt_bx = ibooker.book2D("omtf_hwPt_bx" , "HW p_{T} vs BX" , 511, -0.5, 510.5, 5, -2.5, 2.5);
53  omtf_hwPt_bx->setTitle(";HW p_{T}; BX");
54 
55  omtf_hwQual_bx = ibooker.book2D("omtf_hwQual_bx" , "HW Quality vs BX" , 20, -0.5, 19.5, 5, -2.5, 2.5);
56  omtf_hwQual_bx->setTitle("; HW Quality; BX");
57 }
58 
59 void L1TStage2OMTF::analyze(const edm::Event & eve, const edm::EventSetup & eveSetup)
60 {
61  if (verbose) {
62  edm::LogInfo("L1TStage2OMTF") << "L1TStage2OMTF: analyze...." << std::endl;
63  }
64 
66  eve.getByToken(omtfToken, omtfMuon);
67 
68  for(int itBX=omtfMuon->getFirstBX(); itBX<=omtfMuon->getLastBX(); ++itBX)
69  {
70  for(l1t::RegionalMuonCandBxCollection::const_iterator itMuon = omtfMuon->begin(itBX); itMuon != omtfMuon->end(itBX); ++itMuon)
71  {
72 
73  omtf_hwEta->Fill(itMuon->hwEta());
74  omtf_hwLocalPhi->Fill(itMuon->hwPhi());
75  omtf_hwPt->Fill(itMuon->hwPt());
76  omtf_hwQual->Fill(itMuon->hwQual());
77 
78  omtf_bx->Fill(itBX);
79  omtf_hwEta_bx->Fill(itMuon->hwEta(), itBX);
80  omtf_hwLocalPhi_bx->Fill(itMuon->hwPhi(), itBX);
81  omtf_hwPt_bx->Fill(itMuon->hwPt(), itBX);
82  omtf_hwQual_bx->Fill(itMuon->hwQual(), itBX);
83 
84  omtf_hwEta_hwLocalPhi->Fill(itMuon->hwEta(),itMuon->hwPhi());
85  omtf_hwPt_hwEta->Fill(itMuon->hwPt(), itMuon->hwEta());
86  omtf_hwPt_hwLocalPhi->Fill(itMuon->hwPt(), itMuon->hwPhi());
87 
88  }
89  }
90 }
91 
const_iterator end(int bx) const
T getParameter(std::string const &) const
MonitorElement * omtf_hwQual
Definition: L1TStage2OMTF.h:62
MonitorElement * omtf_hwPt
Definition: L1TStage2OMTF.h:61
MonitorElement * omtf_hwPt_hwEta
Definition: L1TStage2OMTF.h:67
void dqmBeginRun(const edm::Run &, const edm::EventSetup &) override
L1TStage2OMTF(const edm::ParameterSet &ps)
Definition: L1TStage2OMTF.cc:9
void bookHistograms(DQMStore::IBooker &, const edm::Run &, const edm::EventSetup &) override
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:517
MonitorElement * omtf_hwLocalPhi
Definition: L1TStage2OMTF.h:60
std::string monitorDir
Definition: L1TStage2OMTF.h:53
MonitorElement * omtf_hwEta_bx
Definition: L1TStage2OMTF.h:70
void Fill(long long x)
MonitorElement * omtf_hwLocalPhi_bx
Definition: L1TStage2OMTF.h:71
MonitorElement * omtf_hwEta_hwLocalPhi
Definition: L1TStage2OMTF.h:66
void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:268
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:106
MonitorElement * omtf_hwQual_bx
Definition: L1TStage2OMTF.h:73
MonitorElement * omtf_hwEta
Definition: L1TStage2OMTF.h:59
void setTitle(const std::string &title)
set (ie. change) histogram/profile title
void analyze(const edm::Event &, const edm::EventSetup &) override
MonitorElement * omtf_hwPt_hwLocalPhi
Definition: L1TStage2OMTF.h:68
int getFirstBX() const
MonitorElement * book2D(Args &&...args)
Definition: DQMStore.h:109
edm::EDGetToken omtfToken
Definition: L1TStage2OMTF.h:56
~L1TStage2OMTF() override
MonitorElement * omtf_bx
Definition: L1TStage2OMTF.h:64
HLT enums.
int getLastBX() const
const_iterator begin(int bx) const
Definition: Run.h:45
std::vector< RegionalMuonCand >::const_iterator const_iterator
Definition: BXVector.h:20
MonitorElement * omtf_hwPt_bx
Definition: L1TStage2OMTF.h:72