CMS 3D CMS Logo

V0Monitor.cc
Go to the documentation of this file.
3 
5 
8 
10 
11 
12 // -----------------------------
13 // constructors and destructor
14 // -----------------------------
15 
17  folderName_( iConfig.getParameter<std::string>("FolderName") )
18  , v0Token_ ( consumes<reco::VertexCompositeCandidateCollection>(iConfig.getParameter<edm::InputTag>("v0") ) )
19  , bsToken_ ( consumes<reco::BeamSpot> (iConfig.getParameter<edm::InputTag>("beamSpot") ) )
20  , pvToken_ ( consumes<reco::VertexCollection> (iConfig.getParameter<edm::InputTag>("primaryVertex") ) )
21  , lumiscalersToken_( consumes<LumiScalersCollection> (iConfig.getParameter<edm::InputTag>("lumiScalers") ) )
22  , pvNDOF_ ( iConfig.getParameter<int> ("pvNDOF") )
23  , genTriggerEventFlag_(new GenericTriggerEventFlag(iConfig.getParameter<edm::ParameterSet>("genericTriggerEventPSet"),consumesCollector(), *this))
24 {
25 
26  v0_N_ = nullptr;
27  v0_mass_ = nullptr;
28  v0_pt_ = nullptr;
29  v0_eta_ = nullptr;
30  v0_phi_ = nullptr;
31  v0_Lxy_ = nullptr;
32  v0_Lxy_wrtBS_ = nullptr;
33  v0_chi2oNDF_ = nullptr;
34  v0_mass_vs_p_ = nullptr;
35  v0_mass_vs_pt_ = nullptr;
36  v0_mass_vs_eta_ = nullptr;
37  v0_deltaMass_ = nullptr;
38  v0_deltaMass_vs_pt_ = nullptr;
39  v0_deltaMass_vs_eta_ = nullptr;
40 
41  v0_Lxy_vs_deltaMass_ = nullptr;
42  v0_Lxy_vs_pt_ = nullptr;
43  v0_Lxy_vs_eta_ = nullptr;
44 
45  n_vs_BX_ = nullptr;
46  v0_N_vs_BX_ = nullptr;
47  v0_mass_vs_BX_ = nullptr;
48  v0_Lxy_vs_BX_ = nullptr;
49  v0_deltaMass_vs_BX_ = nullptr;
50 
51  n_vs_lumi_ = nullptr;
52  v0_N_vs_lumi_ = nullptr;
53  v0_mass_vs_lumi_ = nullptr;
54  v0_Lxy_vs_lumi_ = nullptr;
55  v0_deltaMass_vs_lumi_ = nullptr;
56 
57  n_vs_PU_ = nullptr;
58  v0_N_vs_PU_ = nullptr;
59  v0_mass_vs_PU_ = nullptr;
60  v0_Lxy_vs_PU_ = nullptr;
61  v0_deltaMass_vs_PU_ = nullptr;
62 
63  n_vs_LS_ = nullptr;
64  v0_N_vs_LS_ = nullptr;
65 
66  edm::ParameterSet histoPSet = iConfig.getParameter<edm::ParameterSet>("histoPSet");
67  getHistoPSet(histoPSet.getParameter<edm::ParameterSet>("massPSet"), mass_binning_ );
71  getHistoPSet(histoPSet.getParameter<edm::ParameterSet>("chi2oNDFPSet"), chi2oNDF_binning_);
72  getHistoPSet(histoPSet.getParameter<edm::ParameterSet>("lumiPSet"), lumi_binning_ );
75 
76 }
77 
79 {
81 }
82 
83 void V0Monitor::getHistoPSet(edm::ParameterSet pset, MEbinning& mebinning)
84 {
85  mebinning.nbins = pset.getParameter<int32_t>("nbins");
86  mebinning.xmin = pset.getParameter<double>("xmin");
87  mebinning.xmax = pset.getParameter<double>("xmax");
88 }
89 
91 {
92  std::string title_w_axes = title+";"+xaxis+";"+yaxis;
93  return ibooker.book1D(name, title_w_axes,
94  binning.nbins, binning.xmin, binning.xmax);
95 
96 }
97 MonitorElement* V0Monitor::bookHisto2D(DQMStore::IBooker & ibooker,std::string name, std::string title, std::string xaxis, std::string yaxis, MEbinning xbinning, MEbinning ybinning)
98 {
99  std::string title_w_axes = title+";"+xaxis+";"+yaxis;
100  return ibooker.book2D(name, title_w_axes,
101  xbinning.nbins, xbinning.xmin, xbinning.xmax,
102  ybinning.nbins, ybinning.xmin, ybinning.xmax
103  );
104 }
105 MonitorElement* V0Monitor::bookProfile(DQMStore::IBooker & ibooker,std::string name, std::string title, std::string xaxis, std::string yaxis, MEbinning xbinning, MEbinning ybinning)
106 {
107  std::string title_w_axes = title+";"+xaxis+";"+yaxis;
108  return ibooker.bookProfile(name, title_w_axes,
109  xbinning.nbins, xbinning.xmin, xbinning.xmax,
110  ybinning.xmin, ybinning.xmax
111  );
112 }
113 
115  edm::Run const & iRun,
116  edm::EventSetup const & iSetup)
117 {
118 
119  std::string histname, histtitle;
120 
121  std::string currentFolder = folderName_ ;
122  ibooker.setCurrentFolder(currentFolder);
123 
124  MEbinning N_binning; N_binning.nbins = 15; N_binning.xmin = -0.5; N_binning.xmax = 14.5;
125  v0_N_ = bookHisto1D(ibooker,"v0_N", "# v0", "# v0", "events",N_binning);
126  v0_mass_ = bookHisto1D(ibooker,"v0_mass", "mass", "mass [GeV]", "events",mass_binning_);
127  v0_pt_ = bookHisto1D(ibooker,"v0_pt", "pt", "p_{T} [GeV]", "events",pt_binning_ );
128  v0_eta_ = bookHisto1D(ibooker,"v0_eta", "eta", "#eta", "events",eta_binning_ );
129  MEbinning phi_binning; phi_binning.nbins = 34; phi_binning.xmin = -3.2; phi_binning.xmax = 3.2;
130  v0_phi_ = bookHisto1D(ibooker,"v0_phi", "phi", "#phi [rad]", "events",phi_binning );
131  v0_Lxy_ = bookHisto1D(ibooker,"v0_Lxy", "Lxy", "L_{xy} w.r.t. PV [cm]", "events",Lxy_binning_ );
132  v0_Lxy_wrtBS_ = bookHisto1D(ibooker,"v0_Lxy_wrtBS","Lxy", "L_{xy} w.r.t. BS [cm]", "events",Lxy_binning_ );
133  v0_chi2oNDF_ = bookHisto1D(ibooker,"v0_chi2oNDF", "chi2oNDF", "vertex normalized #chi^{2}","events",chi2oNDF_binning_ );
134 
135  v0_mass_vs_p_ = bookProfile(ibooker,"v0_mass_vs_p", "mass vs p", "p [GeV]","mass [GeV]", pt_binning_, mass_binning_);
136  v0_mass_vs_pt_ = bookProfile(ibooker,"v0_mass_vs_pt", "mass vs pt", "p_{T} [GeV]","mass [GeV]",pt_binning_, mass_binning_);
137  v0_mass_vs_eta_ = bookProfile(ibooker,"v0_mass_vs_eta","mass vs eta","#eta", "mass [GeV]",eta_binning_,mass_binning_);
138 
139  MEbinning delta_binning; delta_binning.nbins = 150; delta_binning.xmin = -0.15; delta_binning.xmax = 0.15;
140  v0_deltaMass_ = bookHisto1D(ibooker,"v0_deltaMass", "deltaMass", "m-m_{PDG}/m_{DPG}", "events",delta_binning );
141  v0_deltaMass_vs_pt_ = bookProfile(ibooker,"v0_deltaMass_vs_pt", "deltaMass vs pt", "p_{T} [GeV]", "m-m_{PDG}/m_{DPG}", pt_binning_, delta_binning);
142  v0_deltaMass_vs_eta_ = bookProfile(ibooker,"v0_deltaMass_vs_eta", "deltaMass vs eta", "#eta", "m-m_{PDG}/m_{DPG}", eta_binning_, delta_binning);
143 
144  v0_Lxy_vs_deltaMass_ = bookProfile(ibooker,"v0_Lxy_vs_deltaMass","L_{xy} vs deltaMass","m-m_{PDG}/m_{DPG}","L_{xy} [cm]",delta_binning,Lxy_binning_);
145  v0_Lxy_vs_pt_ = bookProfile(ibooker,"v0_Lxy_vs_pt", "L_{xy} vs p_{T}", "p_{T} [GeV]", "L_{xy} [cm]",pt_binning_, Lxy_binning_);
146  v0_Lxy_vs_eta_ = bookProfile(ibooker,"v0_Lxy_vs_eta", "L_{xy} vs #eta", "#eta", "L_{xy} [cm]",eta_binning_, Lxy_binning_);
147 
148  MEbinning bx_binning; bx_binning.nbins = 3564; bx_binning.xmin = 0.5; bx_binning.xmax = 3564.5;
149  n_vs_BX_ = bookHisto1D(ibooker,"n_vs_BX","# events vs BX","BX", "# events",bx_binning);
150  v0_N_vs_BX_ = bookProfile(ibooker,"v0_N_vs_BX", "# v0 vs BX", "BX", "# v0", bx_binning, N_binning );
151  v0_mass_vs_BX_ = bookProfile(ibooker,"v0_mass_vs_BX", "mass vs BX", "BX", "mass [GeV]", bx_binning, mass_binning_);
152  v0_Lxy_vs_BX_ = bookProfile(ibooker,"v0_Lxy_vs_BX", "L_{xy} vs BX", "BX", "L_{xy} [cm]", bx_binning, Lxy_binning_ );
153  v0_deltaMass_vs_BX_ = bookProfile(ibooker,"v0_deltaMass_vs_BX","deltaMass vs BX","BX", "m-m_{PDG}/m_{DPG}",bx_binning, delta_binning);
154 
155  n_vs_lumi_ = bookHisto1D(ibooker,"n_vs_lumi","# events vs lumi","inst. lumi x10^{30} [Hz cm^{-2}]", "# events",lumi_binning_);
156  v0_N_vs_lumi_ = bookProfile(ibooker,"v0_N_vs_lumi", "# v0 vs lumi", "inst. lumi x10^{30} [Hz cm^{-2}]", "# v0", lumi_binning_, N_binning );
157  v0_mass_vs_lumi_ = bookProfile(ibooker,"v0_mass_vs_lumi", "mass vs lumi", "inst. lumi x10^{30} [Hz cm^{-2}]", "mass [GeV]", lumi_binning_, mass_binning_);
158  v0_Lxy_vs_lumi_ = bookProfile(ibooker,"v0_Lxy_vs_lumi", "L_{xy} vs lumi", "inst. lumi x10^{30} [Hz cm^{-2}]", "L_{xy} [cm]", lumi_binning_, Lxy_binning_ );
159  v0_deltaMass_vs_lumi_ = bookProfile(ibooker,"v0_deltaMass_vs_lumi","deltaMass vs lumi","inst. lumi x10^{30} [Hz cm^{-2}]", "m-m_{PDG}/m_{DPG}",lumi_binning_, delta_binning);
160 
161  n_vs_PU_ = bookHisto1D(ibooker,"n_vs_PU","# events vs PU","# good PV", "# events",pu_binning_);
162  v0_N_vs_PU_ = bookProfile(ibooker,"v0_N_vs_PU", "# v0 vs PU", "# good PV", "# v0", pu_binning_, N_binning );
163  v0_mass_vs_PU_ = bookProfile(ibooker,"v0_mass_vs_PU", "mass vs PU", "# good PV", "mass [GeV]", pu_binning_, mass_binning_);
164  v0_Lxy_vs_PU_ = bookProfile(ibooker,"v0_Lxy_vs_PU", "L_{xy} vs PU", "# good PV", "L_{xy} [cm]", pu_binning_, Lxy_binning_ );
165  v0_deltaMass_vs_PU_ = bookProfile(ibooker,"v0_deltaMass_vs_PU","deltaMass vs PU","# good PV", "m-m_{PDG}/m_{DPG}",pu_binning_, delta_binning);
166 
167 
168  n_vs_LS_ = bookHisto1D(ibooker,"n_vs_LS", "# events vs LS","LS", "# events",ls_binning_);
169  v0_N_vs_LS_ = bookProfile(ibooker,"v0_N_vs_LS","# v0 vs LS", "LS", "# v0", ls_binning_, N_binning );
170  v0_N_vs_LS_->getTH1()->SetCanExtend(TH1::kAllAxes);
171 
172  // Initialize the GenericTriggerEventFlag
173  if ( genTriggerEventFlag_->on() ) genTriggerEventFlag_->initRun( iRun, iSetup );
174 
175 }
176 
178 
179  // Filter out events if Trigger Filtering is requested
180  if (genTriggerEventFlag_->on()&& ! genTriggerEventFlag_->accept( iEvent, iSetup) ) return;
181 
182  // int ls = iEvent.id().luminosityBlock();
183 
184  size_t bx = iEvent.bunchCrossing();
185  n_vs_BX_->Fill(bx);
186 
187  float lumi = -1.;
189  iEvent.getByToken(lumiscalersToken_, lumiScalers);
190  if ( lumiScalers.isValid() && !lumiScalers->empty() ) {
191  LumiScalersCollection::const_iterator scalit = lumiScalers->begin();
192  lumi = scalit->instantLumi();
193  } else
194  lumi = -1.;
195  n_vs_lumi_->Fill(lumi);
196 
197  edm::Handle<reco::BeamSpot> beamspotHandle;
198  iEvent.getByToken(bsToken_,beamspotHandle);
199  reco::BeamSpot const * bs = nullptr;
200  if (beamspotHandle.isValid())
201  bs = &(*beamspotHandle);
202 
203 
205  iEvent.getByToken(pvToken_, pvHandle );
206  reco::Vertex const * pv = nullptr;
207  size_t nPV = 0;
208  if (pvHandle.isValid()) {
209  pv = &pvHandle->front();
210  //--- pv fake (the pv collection should have size==1 and the pv==beam spot)
211  if ( pv->isFake() || pv->tracksSize()==0
212  // definition of goodOfflinePrimaryVertex
213  || pv->ndof() < pvNDOF_ || pv->z() > 24.) pv = nullptr;
214 
215  for (auto v : *pvHandle) {
216  if (v.isFake() ) continue;
217  if (v.ndof() < pvNDOF_) continue;
218  if (v.z() > 24. ) continue;
219  ++nPV;
220  }
221  }
222  n_vs_PU_->Fill(nPV);
223 
224  float nLS = static_cast<float>(iEvent.id().luminosityBlock());
225  n_vs_LS_->Fill(nLS);
226 
228  iEvent.getByToken(v0Token_, v0Handle);
229  int n = ( v0Handle.isValid() ? v0Handle->size() : -1 );
230  v0_N_ -> Fill(n);
231  v0_N_vs_BX_ -> Fill(bx, n);
232  v0_N_vs_lumi_ -> Fill(lumi,n);
233  v0_N_vs_PU_ -> Fill(nPV, n);
234  v0_N_vs_LS_ -> Fill(nLS, n);
235 
236  if ( !v0Handle.isValid() or n==0)
237  return;
238 
240  for ( auto v0 : v0s ) {
241  float mass = v0.mass();
242  float pt = v0.pt();
243  float p = v0.p();
244  float eta = v0.eta();
245  float phi = v0.phi();
246  int pdgID = v0.pdgId();
247  float chi2oNDF = v0.vertexNormalizedChi2();
248  GlobalPoint displacementFromPV = ( pv==nullptr ? GlobalPoint(-9.,-9.,0) : GlobalPoint( (pv->x() - v0.vx()),
249  (pv->y() - v0.vy()),
250  0. ) );
251  GlobalPoint displacementFromBS = ( bs==nullptr ? GlobalPoint(-9.-9.,0.) : GlobalPoint( -1*((bs->position().x() - v0.vx()) + (v0.vz() - bs->position().z()) * bs->dxdz()),
252  -1*((bs->position().y() - v0.vy()) + (v0.vz() - bs->position().z()) * bs->dydz()),
253  0 ) );
254  float lxy = ( pv==nullptr ? -9. : displacementFromPV.perp() );
255  float lxyWRTbs = ( bs==nullptr ? -9. : displacementFromBS.perp() );
256 
257  v0_mass_ -> Fill(mass);
258  v0_pt_ -> Fill(pt);
259  v0_eta_ -> Fill(eta);
260  v0_phi_ -> Fill(phi);
261  v0_Lxy_ -> Fill(lxy);
262  v0_Lxy_wrtBS_-> Fill(lxyWRTbs);
263  v0_chi2oNDF_ -> Fill(chi2oNDF);
264 
265  v0_mass_vs_p_ -> Fill(p, mass);
266  v0_mass_vs_pt_ -> Fill(pt, mass);
267  v0_mass_vs_eta_ -> Fill(eta, mass);
268  v0_mass_vs_BX_ -> Fill(bx, mass);
269  v0_mass_vs_lumi_ -> Fill(lumi,mass);
270  v0_mass_vs_PU_ -> Fill(nPV, mass);
271 
272  v0_Lxy_vs_BX_ -> Fill(bx, lxy);
273  v0_Lxy_vs_lumi_ -> Fill(lumi,lxy);
274  v0_Lxy_vs_PU_ -> Fill(nPV, lxy);
275 
276  float PDGmass = -9999.;
277  switch(pdgID) {
278  case 130: // K_s
279  case 310: // K_L
280  PDGmass = 0.497614; // GeV
281  break;
282  case 3122: // Lambda
283  case -3122: // Lambda
284  PDGmass = 1.115683; // GeV
285  break;
286  case 4122: // Lambda_c
287  case -4122: // Lambda_c
288  case 5122: // Lambda_b
289  case -5122: // Lambda_b
290  default:
291  break;
292  }
293  float delta = (PDGmass > 0. ? (mass-PDGmass)/PDGmass : -9.);
294  v0_deltaMass_ -> Fill (delta);
295  v0_deltaMass_vs_pt_ -> Fill (pt, delta);
296  v0_deltaMass_vs_eta_ -> Fill (eta, delta);
297  v0_deltaMass_vs_BX_ -> Fill (bx, delta);
298  v0_deltaMass_vs_lumi_ -> Fill (lumi,delta);
299  v0_deltaMass_vs_PU_ -> Fill (nPV, delta);
300 
301  v0_Lxy_vs_deltaMass_ -> Fill (delta,lxy);
302  v0_Lxy_vs_pt_ -> Fill (pt, lxy);
303  v0_Lxy_vs_eta_ -> Fill (eta, lxy);
304  }
305 
306 }
307 
308 // Define this as a plug-in
MEbinning pu_binning_
Definition: V0Monitor.h:114
MonitorElement * v0_Lxy_vs_pt_
Definition: V0Monitor.h:84
dbl * delta
Definition: mlp_gen.cc:36
T getParameter(std::string const &) const
MonitorElement * v0_deltaMass_vs_PU_
Definition: V0Monitor.h:103
MonitorElement * v0_mass_vs_PU_
Definition: V0Monitor.h:101
MonitorElement * v0_pt_
Definition: V0Monitor.h:70
MonitorElement * v0_Lxy_vs_PU_
Definition: V0Monitor.h:102
MonitorElement * v0_N_vs_LS_
Definition: V0Monitor.h:106
MonitorElement * v0_mass_vs_eta_
Definition: V0Monitor.h:78
MonitorElement * v0_mass_vs_lumi_
Definition: V0Monitor.h:95
std::vector< VertexCompositeCandidate > VertexCompositeCandidateCollection
collection of Candidate objects
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: V0Monitor.cc:114
T perp() const
Definition: PV3DBase.h:72
MEbinning Lxy_binning_
Definition: V0Monitor.h:111
void getHistoPSet(edm::ParameterSet pset, MEbinning &mebinning)
Definition: V0Monitor.cc:83
MonitorElement * bookProfile(Args &&...args)
Definition: DQMStore.h:160
V0Monitor(const edm::ParameterSet &)
Definition: V0Monitor.cc:16
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:579
MonitorElement * v0_mass_vs_p_
Definition: V0Monitor.h:76
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:17
double y() const
y coordinate
Definition: Vertex.h:113
MonitorElement * v0_mass_
Definition: V0Monitor.h:69
MEbinning lumi_binning_
Definition: V0Monitor.h:113
MonitorElement * v0_chi2oNDF_
Definition: V0Monitor.h:75
Global3DPoint GlobalPoint
Definition: GlobalPoint.h:10
TH1 * getTH1() const
int bunchCrossing() const
Definition: EventBase.h:66
MonitorElement * v0_mass_vs_pt_
Definition: V0Monitor.h:77
std::vector< Vertex > VertexCollection
collection of Vertex objects
Definition: VertexFwd.h:9
MonitorElement * v0_deltaMass_
Definition: V0Monitor.h:79
Provides a code based selection for trigger and DCS information in order to have no failing filters i...
LuminosityBlockNumber_t luminosityBlock() const
Definition: EventID.h:40
MonitorElement * v0_eta_
Definition: V0Monitor.h:71
void Fill(long long x)
edm::EDGetTokenT< reco::BeamSpot > bsToken_
Definition: V0Monitor.h:60
double dydz() const
dydz slope
Definition: BeamSpot.h:84
int iEvent
Definition: GenABIO.cc:230
MonitorElement * v0_deltaMass_vs_lumi_
Definition: V0Monitor.h:97
void analyze(edm::Event const &iEvent, edm::EventSetup const &iSetup) override
Definition: V0Monitor.cc:177
MonitorElement * bookHisto2D(DQMStore::IBooker &ibooker, std::string name, std::string title, std::string xaxis, std::string yaxis, MEbinning xbinning, MEbinning ybinning)
Definition: V0Monitor.cc:97
edm::EDGetTokenT< reco::VertexCompositeCandidateCollection > v0Token_
Definition: V0Monitor.h:59
MonitorElement * v0_Lxy_vs_BX_
Definition: V0Monitor.h:90
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
MEbinning ls_binning_
Definition: V0Monitor.h:115
bool accept(const edm::Event &event, const edm::EventSetup &setup)
To be called from analyze/filter() methods.
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventID const &, edm::Timestamp const & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
Definition: Activities.doc:12
MonitorElement * v0_Lxy_wrtBS_
Definition: V0Monitor.h:74
int pvNDOF_
Definition: V0Monitor.h:64
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:118
MonitorElement * n_vs_lumi_
Definition: V0Monitor.h:93
std::string folderName_
Definition: V0Monitor.h:57
def pv(vc)
Definition: MetAnalyzer.py:6
double z() const
z coordinate
Definition: Vertex.h:115
MonitorElement * v0_Lxy_vs_lumi_
Definition: V0Monitor.h:96
MonitorElement * v0_Lxy_vs_eta_
Definition: V0Monitor.h:85
MonitorElement * bookHisto1D(DQMStore::IBooker &ibooker, std::string name, std::string title, std::string xaxis, std::string yaxis, MEbinning binning)
Definition: V0Monitor.cc:90
MonitorElement * v0_deltaMass_vs_BX_
Definition: V0Monitor.h:91
edm::EDGetTokenT< reco::VertexCollection > pvToken_
Definition: V0Monitor.h:61
bool isValid() const
Definition: HandleBase.h:74
double dxdz() const
dxdz slope
Definition: BeamSpot.h:82
MonitorElement * v0_deltaMass_vs_eta_
Definition: V0Monitor.h:81
double ndof() const
Definition: Vertex.h:105
MEbinning pt_binning_
Definition: V0Monitor.h:109
MEbinning chi2oNDF_binning_
Definition: V0Monitor.h:112
double x() const
x coordinate
Definition: Vertex.h:111
MonitorElement * bookProfile(DQMStore::IBooker &ibooker, std::string name, std::string title, std::string xaxis, std::string yaxis, MEbinning xbinning, MEbinning ybinning)
Definition: V0Monitor.cc:105
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:274
bool isFake() const
Definition: Vertex.h:72
MonitorElement * v0_N_
Definition: V0Monitor.h:68
T const * product() const
Definition: Handle.h:81
MonitorElement * book2D(Args &&...args)
Definition: DQMStore.h:136
MEbinning mass_binning_
Definition: V0Monitor.h:108
edm::EDGetTokenT< LumiScalersCollection > lumiscalersToken_
Definition: V0Monitor.h:62
MonitorElement * v0_Lxy_vs_deltaMass_
Definition: V0Monitor.h:83
edm::EventID id() const
Definition: EventBase.h:60
fixed size matrix
MonitorElement * n_vs_PU_
Definition: V0Monitor.h:99
HLT enums.
MonitorElement * n_vs_LS_
Definition: V0Monitor.h:105
MEbinning eta_binning_
Definition: V0Monitor.h:110
std::vector< LumiScalers > LumiScalersCollection
Definition: LumiScalers.h:160
const Point & position() const
position
Definition: BeamSpot.h:62
GenericTriggerEventFlag * genTriggerEventFlag_
Definition: V0Monitor.h:66
void initRun(const edm::Run &run, const edm::EventSetup &setup)
To be called from beginRun() methods.
MonitorElement * v0_phi_
Definition: V0Monitor.h:72
~V0Monitor() override
Definition: V0Monitor.cc:78
MonitorElement * v0_N_vs_BX_
Definition: V0Monitor.h:88
MonitorElement * v0_mass_vs_BX_
Definition: V0Monitor.h:89
MonitorElement * n_vs_BX_
Definition: V0Monitor.h:87
MonitorElement * v0_N_vs_lumi_
Definition: V0Monitor.h:94
size_t tracksSize() const
number of tracks
Definition: Vertex.cc:71
Definition: Run.h:44
MonitorElement * v0_N_vs_PU_
Definition: V0Monitor.h:100
MonitorElement * v0_Lxy_
Definition: V0Monitor.h:73
MonitorElement * v0_deltaMass_vs_pt_
Definition: V0Monitor.h:80