#include <DQM/TrackingMonitor/interface/TrackEfficiencyClient.h>
Public Member Functions | |
TrackEfficiencyClient (const edm::ParameterSet &ps) | |
Constructor. | |
virtual | ~TrackEfficiencyClient () |
Destructor. | |
Protected Member Functions | |
void | analyze (edm::Event const &e, edm::EventSetup const &eSetup) |
Analyze. | |
void | beginJob (edm::EventSetup const &eSetup) |
BeginJob. | |
void | beginRun (edm::Run const &run, edm::EventSetup const &eSetup) |
BeginRun. | |
void | endJob () |
Endjob. | |
void | endLuminosityBlock (edm::LuminosityBlock const &lumiSeg, edm::EventSetup const &eSetup) |
End Luminosity Block. | |
void | endRun () |
EndRun. | |
Private Attributes | |
std::string | algoName_ |
edm::ParameterSet | conf_ |
DQMStore * | dqmStore_ |
MonitorElement * | effCompatibleLayers |
MonitorElement * | effD0 |
MonitorElement * | effEta |
MonitorElement * | effPhi |
MonitorElement * | effX |
MonitorElement * | effY |
MonitorElement * | effZ |
std::string | FolderName_ |
std::string | histName |
bool | trackEfficiency_ |
Definition at line 33 of file TrackEfficiencyClient.h.
TrackEfficiencyClient::TrackEfficiencyClient | ( | const edm::ParameterSet & | ps | ) |
Constructor.
Definition at line 29 of file TrackEfficiencyClient.cc.
References algoName_, conf_, dqmStore_, FolderName_, edm::ParameterSet::getParameter(), and trackEfficiency_.
00031 { 00032 edm::LogInfo( "TrackEfficiencyClient") << "TrackEfficiencyClient::Deleting TrackEfficiencyClient "; 00033 00034 // get back-end interface 00035 dqmStore_ = edm::Service<DQMStore>().operator->(); 00036 00037 FolderName_ = iConfig.getParameter<std::string>("FolderName"); 00038 algoName_ = iConfig.getParameter<std::string>("AlgoName"); 00039 trackEfficiency_ = iConfig.getParameter<bool>("trackEfficiency"); 00040 00041 conf_ = iConfig; 00042 }
TrackEfficiencyClient::~TrackEfficiencyClient | ( | ) | [virtual] |
Destructor.
Definition at line 46 of file TrackEfficiencyClient.cc.
00048 { 00049 edm::LogInfo("TrackEfficiencyClient") << "TrackEfficiencyClient::Deleting TrackEfficiencyClient "; 00050 }
void TrackEfficiencyClient::analyze | ( | edm::Event const & | e, | |
edm::EventSetup const & | eSetup | |||
) | [protected, virtual] |
Analyze.
Implements edm::EDAnalyzer.
Definition at line 145 of file TrackEfficiencyClient.cc.
00147 { 00148 edm::LogInfo( "TrackEfficiencyClient") << "TrackEfficiencyClient::analyze"; 00149 }
void TrackEfficiencyClient::beginJob | ( | edm::EventSetup const & | eSetup | ) | [protected, virtual] |
BeginJob.
Reimplemented from edm::EDAnalyzer.
Definition at line 54 of file TrackEfficiencyClient.cc.
References algoName_, DQMStore::book1D(), conf_, dqmStore_, effCompatibleLayers, effD0, effEta, effPhi, effX, effY, effZ, FolderName_, edm::ParameterSet::getParameter(), MonitorElement::getTH1F(), histName, MonitorElement::setAxisTitle(), and DQMStore::setCurrentFolder().
00056 { 00057 00058 dqmStore_->setCurrentFolder(FolderName_); 00059 00060 // 00061 int effXBin = conf_.getParameter<int> ("effXBin"); 00062 double effXMin = conf_.getParameter<double>("effXMin"); 00063 double effXMax = conf_.getParameter<double>("effXMax"); 00064 00065 histName = "effX_"; 00066 effX = dqmStore_->book1D(histName+algoName_, histName+algoName_, effXBin, effXMin, effXMax); 00067 if (effX->getTH1F()) effX->getTH1F()->Sumw2(); 00068 effX->setAxisTitle(""); 00069 00070 00071 // 00072 int effYBin = conf_.getParameter<int> ("effYBin"); 00073 double effYMin = conf_.getParameter<double>("effYMin"); 00074 double effYMax = conf_.getParameter<double>("effYMax"); 00075 00076 histName = "effY_"; 00077 effY = dqmStore_->book1D(histName+algoName_, histName+algoName_, effYBin, effYMin, effYMax); 00078 if (effY->getTH1F()) effY->getTH1F()->Sumw2(); 00079 effY->setAxisTitle(""); 00080 00081 // 00082 int effZBin = conf_.getParameter<int> ("effZBin"); 00083 double effZMin = conf_.getParameter<double>("effZMin"); 00084 double effZMax = conf_.getParameter<double>("effZMax"); 00085 00086 histName = "effZ_"; 00087 effZ = dqmStore_->book1D(histName+algoName_, histName+algoName_, effZBin, effZMin, effZMax); 00088 if (effZ->getTH1F()) effZ->getTH1F()->Sumw2(); 00089 effZ->setAxisTitle(""); 00090 00091 // 00092 int effEtaBin = conf_.getParameter<int> ("effEtaBin"); 00093 double effEtaMin = conf_.getParameter<double>("effEtaMin"); 00094 double effEtaMax = conf_.getParameter<double>("effEtaMax"); 00095 00096 histName = "effEta_"; 00097 effEta = dqmStore_->book1D(histName+algoName_, histName+algoName_, effEtaBin, effEtaMin, effEtaMax); 00098 if (effEta->getTH1F()) effEta->getTH1F()->Sumw2(); 00099 effEta->setAxisTitle(""); 00100 00101 // 00102 int effPhiBin = conf_.getParameter<int> ("effPhiBin"); 00103 double effPhiMin = conf_.getParameter<double>("effPhiMin"); 00104 double effPhiMax = conf_.getParameter<double>("effPhiMax"); 00105 00106 histName = "effPhi_"; 00107 effPhi = dqmStore_->book1D(histName+algoName_, histName+algoName_, effPhiBin, effPhiMin, effPhiMax); 00108 if (effPhi->getTH1F()) effPhi->getTH1F()->Sumw2(); 00109 effPhi->setAxisTitle(""); 00110 00111 // 00112 int effD0Bin = conf_.getParameter<int> ("effD0Bin"); 00113 double effD0Min = conf_.getParameter<double>("effD0Min"); 00114 double effD0Max = conf_.getParameter<double>("effD0Max"); 00115 00116 histName = "effD0_"; 00117 effD0 = dqmStore_->book1D(histName+algoName_, histName+algoName_, effD0Bin, effD0Min, effD0Max); 00118 if (effD0->getTH1F()) effD0->getTH1F()->Sumw2(); 00119 effD0->setAxisTitle(""); 00120 00121 00122 // 00123 int effCompatibleLayersBin = conf_.getParameter<int> ("effCompatibleLayersBin"); 00124 double effCompatibleLayersMin = conf_.getParameter<double>("effCompatibleLayersMin"); 00125 double effCompatibleLayersMax = conf_.getParameter<double>("effCompatibleLayersMax"); 00126 00127 histName = "effCompatibleLayers_"; 00128 effCompatibleLayers = dqmStore_->book1D(histName+algoName_, histName+algoName_, effCompatibleLayersBin, effCompatibleLayersMin, effCompatibleLayersMax); 00129 if (effCompatibleLayers->getTH1F()) effCompatibleLayers->getTH1F()->Sumw2(); 00130 effCompatibleLayers->setAxisTitle(""); 00131 00132 edm::LogInfo("TrackEfficiencyClient") << "TrackEfficiencyClient::beginJob done"; 00133 }
void TrackEfficiencyClient::beginRun | ( | edm::Run const & | run, | |
edm::EventSetup const & | eSetup | |||
) | [protected, virtual] |
BeginRun.
Reimplemented from edm::EDAnalyzer.
Definition at line 137 of file TrackEfficiencyClient.cc.
00139 { 00140 edm::LogInfo ("TrackEfficiencyClient") <<"TrackEfficiencyClient:: Begining of Run"; 00141 }
Endjob.
Reimplemented from edm::EDAnalyzer.
Definition at line 152 of file TrackEfficiencyClient.cc.
void TrackEfficiencyClient::endLuminosityBlock | ( | edm::LuminosityBlock const & | lumiSeg, | |
edm::EventSetup const & | eSetup | |||
) | [protected, virtual] |
End Luminosity Block.
Reimplemented from edm::EDAnalyzer.
Definition at line 165 of file TrackEfficiencyClient.cc.
References algoName_, dqmStore_, effCompatibleLayers, effD0, effEta, effPhi, effX, effY, effZ, FolderName_, DQMStore::get(), MonitorElement::getTH1F(), histName, trackEfficiency_, reco::btau::trackEta, and reco::btau::trackPhi.
00167 { 00168 edm::LogInfo( "TrackEfficiencyClient") << "TrackEfficiencyClient::endLuminosityBlock"; 00169 00170 histName = "/trackX_"; 00171 MonitorElement* trackX = dqmStore_->get(FolderName_+histName+algoName_); 00172 00173 histName = "/muonX_"; 00174 MonitorElement* muonX = dqmStore_->get(FolderName_+histName+algoName_); 00175 00176 histName = "/trackY_"; 00177 MonitorElement* trackY = dqmStore_->get(FolderName_+histName+algoName_); 00178 histName = "/muonY_"; 00179 MonitorElement* muonY = dqmStore_->get(FolderName_+histName+algoName_); 00180 00181 histName = "/trackZ_"; 00182 MonitorElement* trackZ = dqmStore_->get(FolderName_+histName+algoName_); 00183 histName = "/muonZ_"; 00184 MonitorElement* muonZ = dqmStore_->get(FolderName_+histName+algoName_); 00185 00186 histName = "/trackEta_"; 00187 MonitorElement* trackEta = dqmStore_->get(FolderName_+histName+algoName_); 00188 histName = "/muonEta_"; 00189 MonitorElement* muonEta = dqmStore_->get(FolderName_+histName+algoName_); 00190 00191 histName = "/trackPhi_"; 00192 MonitorElement* trackPhi = dqmStore_->get(FolderName_+histName+algoName_); 00193 histName = "/muonPhi_"; 00194 MonitorElement* muonPhi = dqmStore_->get(FolderName_+histName+algoName_); 00195 00196 histName = "/trackD0_"; 00197 MonitorElement* trackD0 = dqmStore_->get(FolderName_+histName+algoName_); 00198 histName = "/muonD0_"; 00199 MonitorElement* muonD0 = dqmStore_->get(FolderName_+histName+algoName_); 00200 00201 histName = "/trackCompatibleLayers_"; 00202 MonitorElement* trackCompatibleLayers = dqmStore_->get(FolderName_+histName+algoName_); 00203 histName = "/muonCompatibleLayers_"; 00204 MonitorElement* muonCompatibleLayers = dqmStore_->get(FolderName_+histName+algoName_); 00205 00206 if(trackX && muonX && trackY && muonY && trackZ && muonZ && trackEta && muonEta && trackPhi && muonPhi && trackD0 && muonD0 && trackCompatibleLayers && muonCompatibleLayers){ 00207 if (trackEfficiency_) 00208 { 00209 if (effX ->getTH1F() && trackX ->getTH1F() && muonX ->getTH1F()) { effX -> getTH1F()->Divide(trackX->getTH1F(),muonX->getTH1F(),1.,1.,"");} 00210 if (effY ->getTH1F() && trackY ->getTH1F() && muonY ->getTH1F()) { effY -> getTH1F()->Divide(trackY->getTH1F(),muonY->getTH1F(),1.,1.,"");} 00211 if (effZ ->getTH1F() && trackZ ->getTH1F() && muonZ ->getTH1F()) { effZ -> getTH1F()->Divide(trackZ->getTH1F(),muonZ->getTH1F(),1.,1.,"");} 00212 if (effEta->getTH1F() && trackEta->getTH1F() && muonEta->getTH1F()) { effEta -> getTH1F()->Divide(trackEta->getTH1F(),muonEta->getTH1F(),1.,1.,"");} 00213 if (effPhi->getTH1F() && trackPhi->getTH1F() && muonPhi->getTH1F()) { effPhi -> getTH1F()->Divide(trackPhi->getTH1F(),muonPhi->getTH1F(),1.,1.,"");} 00214 if (effD0 ->getTH1F() && trackD0 ->getTH1F() && muonD0 ->getTH1F()) { effD0 -> getTH1F()->Divide(trackD0->getTH1F(),muonD0->getTH1F(),1.,1.,"");} 00215 if (effCompatibleLayers->getTH1F() && trackCompatibleLayers->getTH1F() && muonCompatibleLayers->getTH1F()) { effCompatibleLayers -> getTH1F()->Divide(trackCompatibleLayers->getTH1F(),muonCompatibleLayers->getTH1F(),1.,1.,"");} 00216 } 00217 else { 00218 if (effX ->getTH1F() && trackX ->getTH1F() && muonX ->getTH1F()) { effX -> getTH1F()->Divide(muonX->getTH1F(),trackX->getTH1F(),1.,1.,"");} 00219 if (effY ->getTH1F() && trackY ->getTH1F() && muonY ->getTH1F()) { effY -> getTH1F()->Divide(muonY->getTH1F(),trackY->getTH1F(),1.,1.,"");} 00220 if (effZ ->getTH1F() && trackZ ->getTH1F() && muonZ ->getTH1F()) { effZ -> getTH1F()->Divide(muonZ->getTH1F(),trackZ->getTH1F(),1.,1.,"");} 00221 if (effEta->getTH1F() && trackEta->getTH1F() && muonEta->getTH1F()) { effEta -> getTH1F()->Divide(muonEta->getTH1F(),trackEta->getTH1F(),1.,1.,"");} 00222 if (effPhi->getTH1F() && trackPhi->getTH1F() && muonPhi->getTH1F()) { effPhi -> getTH1F()->Divide(muonPhi->getTH1F(),trackPhi->getTH1F(),1.,1.,"");} 00223 if (effD0 ->getTH1F() && trackD0 ->getTH1F() && muonD0 ->getTH1F()) { effD0 -> getTH1F()->Divide(muonD0->getTH1F(),trackD0->getTH1F(),1.,1.,"");} 00224 } 00225 } 00226 00227 }
std::string TrackEfficiencyClient::algoName_ [private] |
Definition at line 73 of file TrackEfficiencyClient.h.
Referenced by beginJob(), endLuminosityBlock(), and TrackEfficiencyClient().
Definition at line 67 of file TrackEfficiencyClient.h.
Referenced by beginJob(), and TrackEfficiencyClient().
DQMStore* TrackEfficiencyClient::dqmStore_ [private] |
Definition at line 66 of file TrackEfficiencyClient.h.
Referenced by beginJob(), endLuminosityBlock(), and TrackEfficiencyClient().
Definition at line 82 of file TrackEfficiencyClient.h.
Referenced by beginJob(), and endLuminosityBlock().
MonitorElement* TrackEfficiencyClient::effD0 [private] |
Definition at line 81 of file TrackEfficiencyClient.h.
Referenced by beginJob(), and endLuminosityBlock().
MonitorElement* TrackEfficiencyClient::effEta [private] |
Definition at line 79 of file TrackEfficiencyClient.h.
Referenced by beginJob(), and endLuminosityBlock().
MonitorElement* TrackEfficiencyClient::effPhi [private] |
Definition at line 80 of file TrackEfficiencyClient.h.
Referenced by beginJob(), and endLuminosityBlock().
MonitorElement* TrackEfficiencyClient::effX [private] |
Definition at line 76 of file TrackEfficiencyClient.h.
Referenced by beginJob(), and endLuminosityBlock().
MonitorElement* TrackEfficiencyClient::effY [private] |
Definition at line 77 of file TrackEfficiencyClient.h.
Referenced by beginJob(), and endLuminosityBlock().
MonitorElement* TrackEfficiencyClient::effZ [private] |
Definition at line 78 of file TrackEfficiencyClient.h.
Referenced by beginJob(), and endLuminosityBlock().
std::string TrackEfficiencyClient::FolderName_ [private] |
Definition at line 74 of file TrackEfficiencyClient.h.
Referenced by beginJob(), endLuminosityBlock(), and TrackEfficiencyClient().
std::string TrackEfficiencyClient::histName [private] |
Definition at line 72 of file TrackEfficiencyClient.h.
Referenced by beginJob(), and endLuminosityBlock().
bool TrackEfficiencyClient::trackEfficiency_ [private] |
Definition at line 69 of file TrackEfficiencyClient.h.
Referenced by endLuminosityBlock(), and TrackEfficiencyClient().