00001 #ifndef HLTMONELECTRONCONSUMER_H 00002 #define HLTMONELECTRONCONSUMER_H 00003 // -*- C++ -*- 00004 // 00005 // Package: HLTMonElectronConsumer 00006 // Class: HLTMonElectronConsumer 00007 // 00017 // 00018 // Original Author: Lorenzo AGOSTINO 00019 // Created: Wed Jan 16 15:55:28 CET 2008 00020 // $Id: HLTMonElectronConsumer.h,v 1.2 2009/10/15 11:31:28 fwyzard Exp $ 00021 // 00022 // 00023 00024 00025 // system include files 00026 #include <memory> 00027 #include <unistd.h> 00028 00029 00030 // user include files 00031 #include "FWCore/Framework/interface/Frameworkfwd.h" 00032 #include "FWCore/Framework/interface/EDAnalyzer.h" 00033 00034 #include "FWCore/Framework/interface/Event.h" 00035 #include "FWCore/Framework/interface/MakerMacros.h" 00036 #include "DataFormats/HLTReco/interface/TriggerEventWithRefs.h" 00037 00038 #include "DQMServices/Core/interface/DQMStore.h" 00039 #include "DQMServices/Core/interface/MonitorElement.h" 00040 #include "FWCore/ServiceRegistry/interface/Service.h" 00041 #include "FWCore/MessageLogger/interface/MessageLogger.h" 00042 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00043 #include <iostream> 00044 #include <fstream> 00045 #include <vector> 00046 00047 // 00048 // class decleration 00049 // 00050 00051 class HLTMonElectronConsumer : public edm::EDAnalyzer { 00052 public: 00053 explicit HLTMonElectronConsumer(const edm::ParameterSet&); 00054 ~HLTMonElectronConsumer(); 00055 00056 00057 private: 00058 virtual void beginJob() ; 00059 virtual void analyze(const edm::Event&, const edm::EventSetup&); 00060 virtual void endJob() ; 00061 00062 // ----------member data --------------------------- 00063 00064 DQMStore * dbe; 00065 00066 edm::InputTag pixeltag_; 00067 edm::InputTag isotag_; 00068 00069 MonitorElement* isototal; 00070 MonitorElement* isocheck; 00071 MonitorElement* pixelhistosEt[4]; 00072 MonitorElement* pixelhistosEta[4]; 00073 MonitorElement* pixelhistosPhi[4]; 00074 MonitorElement* pixelhistosEtOut[2]; 00075 MonitorElement* pixelhistosEtaOut[2]; 00076 MonitorElement* pixelhistosPhiOut[2]; 00077 MonitorElement* pixeltotal; 00078 MonitorElement* pixelEff; 00079 MonitorElement* trackEff; 00080 00081 std::string dirname_; 00082 std::string pixeldirname_; 00083 std::string isodirname_; 00084 bool monitorDaemon_; 00085 ofstream logFile_; 00086 std::string outputFile_; 00087 00088 }; 00089 #endif