CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HLTMonElectron.h
Go to the documentation of this file.
1 #ifndef HLTMONELECTRON_H
2 #define HLTMONELECTRON_H
3 // -*- C++ -*-
4 //
5 // Package: HLTMonElectron
6 // Class: HLTMonElectron
7 //
17 //
18 // Original Author: Lorenzo AGOSTINO
19 // Created: Wed Jan 16 15:55:28 CET 2008
20 // $Id: HLTMonElectron.h,v 1.5 2009/10/15 11:31:28 fwyzard Exp $
21 //
22 //
23 
24 
25 // system include files
26 #include <memory>
27 #include <unistd.h>
28 
29 
30 // user include files
33 
37 
43 #include <iostream>
44 #include <fstream>
45 #include <vector>
46 
47 //
48 // class decleration
49 //
50 
52  public:
53  explicit HLTMonElectron(const edm::ParameterSet&);
55 
56 
57  private:
58  virtual void beginJob() ;
59  virtual void analyze(const edm::Event&, const edm::EventSetup&);
60  virtual void endJob() ;
61  template <class T> void fillHistos(edm::Handle<trigger::TriggerEventWithRefs>& , const edm::Event& ,unsigned int);
62 
63  // ----------member data ---------------------------
64  int nev_;
66  std::vector<MonitorElement *> etahist;
67  std::vector<MonitorElement *> phihist;
68  std::vector<MonitorElement *> ethist;
69  std::vector<MonitorElement *> etahistiso;
70  std::vector<MonitorElement *> phihistiso;
71  std::vector<MonitorElement *> ethistiso;
73  std::vector<edm::InputTag> theHLTCollectionLabels;
74  std::vector<int> theHLTOutputTypes;
75  std::vector<bool> plotiso;
76  std::vector<std::vector<edm::InputTag> > isoNames; // there has to be a better solution
77  std::vector<std::pair<double,double> > plotBounds;
78  unsigned int reqNum;
79 
80  double thePtMin ;
81  double thePtMax ;
82  unsigned int theNbins ;
83 
84  std::string dirname_;
86  ofstream logFile_;
88  std::string outputFile_;
89 
90 };
91 #endif
std::string dirname_
std::vector< MonitorElement * > phihist
std::vector< MonitorElement * > ethistiso
std::vector< std::vector< edm::InputTag > > isoNames
ofstream logFile_
virtual void analyze(const edm::Event &, const edm::EventSetup &)
DQMStore * dbe
std::vector< bool > plotiso
MonitorElement * total
unsigned int reqNum
HLTMonElectron(const edm::ParameterSet &)
std::vector< int > theHLTOutputTypes
unsigned int theNbins
std::string outputFile_
std::vector< MonitorElement * > etahist
virtual void beginJob()
std::vector< std::pair< double, double > > plotBounds
std::vector< edm::InputTag > theHLTCollectionLabels
std::vector< MonitorElement * > ethist
void fillHistos(edm::Handle< trigger::TriggerEventWithRefs > &, const edm::Event &, unsigned int)
virtual void endJob()
std::vector< MonitorElement * > phihistiso
std::vector< MonitorElement * > etahistiso