CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Private Attributes
HEff4DHitHarvest Class Reference

A set of histograms for efficiency 4D RecHits (harvesting) More...

#include <Histograms.h>

Public Types

typedef dqm::legacy::DQMStore DQMStore
 
typedef dqm::legacy::MonitorElement MonitorElement
 

Public Member Functions

void computeEfficiency (DQMStore::IGetter &getter)
 
 HEff4DHitHarvest (const std::string &name, DQMStore::IBooker &booker, DQMStore::IGetter &getter)
 

Private Attributes

MonitorElementhEffVsAlpha
 
MonitorElementhEffVsBeta
 
MonitorElementhEffVsEta
 
MonitorElementhEffVsPhi
 
MonitorElementhEffVsX
 
MonitorElementhEffVsY
 
std::string name_
 

Detailed Description

A set of histograms for efficiency 4D RecHits (harvesting)

Definition at line 1022 of file Histograms.h.

Member Typedef Documentation

Definition at line 1024 of file Histograms.h.

Definition at line 1025 of file Histograms.h.

Constructor & Destructor Documentation

HEff4DHitHarvest::HEff4DHitHarvest ( const std::string &  name,
DQMStore::IBooker booker,
DQMStore::IGetter getter 
)
inline

Definition at line 1027 of file Histograms.h.

References dqm::implementation::IBooker::book1D(), computeEfficiency(), hEffVsAlpha, hEffVsBeta, hEffVsEta, hEffVsPhi, hEffVsX, hEffVsY, M_PI, mergeVDriftHistosByStation::name, name_, dqm::implementation::NavigatorBase::setCurrentFolder(), and AlCaHLTBitMon_QueryRunRegistry::string.

1027  {
1028  std::string pre = "4D_";
1029  pre += name;
1030  name_ = pre;
1031  booker.setCurrentFolder("DT/4DSegments/");
1032  hEffVsEta = booker.book1D(pre + "_hEffVsEta", "4D RecHit Efficiency as a function of Eta", 100, -1.5, 1.5);
1033  hEffVsPhi = booker.book1D(pre + "_hEffVsPhi", "4D RecHit Efficiency as a function of Phi", 100, -M_PI, M_PI);
1034  hEffVsX =
1035  booker.book1D(pre + "_hEffVsX", "4D RecHit Efficiency as a function of x position in Chamber", 100, -200, 200);
1036  hEffVsY =
1037  booker.book1D(pre + "_hEffVsY", "4D RecHit Efficiency as a function of y position in Chamber", 100, -200, 200);
1038  hEffVsAlpha = booker.book1D(pre + "_hEffVsAlpha", "4D RecHit Efficiency as a function of alpha", 100, -1.5, 1.5);
1039  hEffVsBeta = booker.book1D(pre + "_hEffVsBeta", "4D RecHit Efficiency as a function of beta", 100, -2, 2);
1040 
1041  computeEfficiency(getter);
1042  }
MonitorElement * hEffVsEta
Definition: Histograms.h:1055
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:32
MonitorElement * hEffVsPhi
Definition: Histograms.h:1056
MonitorElement * hEffVsX
Definition: Histograms.h:1058
MonitorElement * hEffVsY
Definition: Histograms.h:1059
MonitorElement * hEffVsAlpha
Definition: Histograms.h:1061
#define M_PI
std::string name_
Definition: Histograms.h:1064
void computeEfficiency(DQMStore::IGetter &getter)
Definition: Histograms.h:1044
MonitorElement * hEffVsBeta
Definition: Histograms.h:1062
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:98

Member Function Documentation

void HEff4DHitHarvest::computeEfficiency ( DQMStore::IGetter getter)
inline

Definition at line 1044 of file Histograms.h.

References divide(), dqm::implementation::IGetter::get(), hEffVsAlpha, hEffVsBeta, hEffVsEta, hEffVsPhi, hEffVsX, hEffVsY, name_, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by HEff4DHitHarvest().

1044  {
1045  std::string pre = "DT/4DSegments/" + name_;
1046  divide(hEffVsEta, getter.get(pre + "_hEtaRecHit"), getter.get(pre + "_hEtaSimSegm"));
1047  divide(hEffVsPhi, getter.get(pre + "_hPhiRecHit"), getter.get(pre + "_hPhiSimSegm"));
1048  divide(hEffVsX, getter.get(pre + "_hXRecHit"), getter.get(pre + "_hXSimSegm"));
1049  divide(hEffVsY, getter.get(pre + "_hYRecHit"), getter.get(pre + "_hYSimSegm"));
1050  divide(hEffVsAlpha, getter.get(pre + "_hAlphaRecHit"), getter.get(pre + "_hAlphaSimSegm"));
1051  divide(hEffVsBeta, getter.get(pre + "_hBetaRecHit"), getter.get(pre + "_hBetaSimSegm"));
1052  }
MonitorElement * hEffVsEta
Definition: Histograms.h:1055
MonitorElement * hEffVsPhi
Definition: Histograms.h:1056
void divide(dqm::legacy::MonitorElement *eff, const dqm::legacy::MonitorElement *numerator, const dqm::legacy::MonitorElement *denominator)
Function to fill an efficiency histograms with binomial errors.
Definition: Histograms.h:20
MonitorElement * hEffVsX
Definition: Histograms.h:1058
MonitorElement * hEffVsY
Definition: Histograms.h:1059
virtual MonitorElement * get(std::string const &fullpath) const
Definition: DQMStore.cc:673
MonitorElement * hEffVsAlpha
Definition: Histograms.h:1061
std::string name_
Definition: Histograms.h:1064
MonitorElement * hEffVsBeta
Definition: Histograms.h:1062

Member Data Documentation

MonitorElement* HEff4DHitHarvest::hEffVsAlpha
private

Definition at line 1061 of file Histograms.h.

Referenced by computeEfficiency(), and HEff4DHitHarvest().

MonitorElement* HEff4DHitHarvest::hEffVsBeta
private

Definition at line 1062 of file Histograms.h.

Referenced by computeEfficiency(), and HEff4DHitHarvest().

MonitorElement* HEff4DHitHarvest::hEffVsEta
private

Definition at line 1055 of file Histograms.h.

Referenced by computeEfficiency(), and HEff4DHitHarvest().

MonitorElement* HEff4DHitHarvest::hEffVsPhi
private

Definition at line 1056 of file Histograms.h.

Referenced by computeEfficiency(), and HEff4DHitHarvest().

MonitorElement* HEff4DHitHarvest::hEffVsX
private

Definition at line 1058 of file Histograms.h.

Referenced by computeEfficiency(), and HEff4DHitHarvest().

MonitorElement* HEff4DHitHarvest::hEffVsY
private

Definition at line 1059 of file Histograms.h.

Referenced by computeEfficiency(), and HEff4DHitHarvest().

std::string HEff4DHitHarvest::name_
private

Definition at line 1064 of file Histograms.h.

Referenced by computeEfficiency(), and HEff4DHitHarvest().