CMS 3D CMS Logo

HLTHiggsPlotter.h
Go to the documentation of this file.
1 #ifndef HLTriggerOffline_Higgs_HLTHiggsPlotter_H
2 #define HLTriggerOffline_Higgs_HLTHiggsPlotter_H
3 
18 
32 
34 
36 
37 #include <vector>
38 #include <cstring>
39 #include <map>
40 #include <set>
41 
42 const unsigned int kNull = (unsigned int)-1;
43 
44 struct EVTColContainer;
45 
47 public:
50 
52  const std::string &hltPath,
53  //const std::string & lastFilter,
54  const std::vector<unsigned int> &objectsType,
55  const unsigned int &minCandidates,
56  const std::vector<double> &NminOneCuts);
58  void beginJob();
59  void beginRun(const edm::Run &, const edm::EventSetup &);
60  void bookHistograms(DQMStore::IBooker &, const bool &);
61  void analyze(const bool &isPassTrigger,
62  const std::string &source,
63  const std::vector<MatchStruct> &matches,
64  const unsigned int &minCandidates);
65  void analyze(const bool &isPassTrigger,
66  const std::string &source,
67  const std::vector<MatchStruct> &matches,
68  std::map<std::string, bool> &nMinOne,
69  const float &dEtaqq,
70  const float &mqq,
71  const float &dPhibb,
72  const float &CSV1,
73  const float &CSV2,
74  const float &CSV3,
75  const bool &passAllCuts);
76 
77  inline const std::string gethltpath() const { return _hltPath; }
78 
79 private:
81  void fillHist(const bool &passTrigger,
82  const std::string &source,
83  const std::string &objType,
84  const std::string &var,
85  const float &value);
86 
88  //std::string _lastFilter;
90 
91  std::set<unsigned int> _objectsType;
92  // Number of objects (elec,muons, ...) needed in the hlt path
93  unsigned int _nObjects;
94 
95  std::vector<double> _parametersEta;
96  std::vector<double> _parametersPhi;
97  std::vector<double> _parametersTurnOn;
98 
99  std::map<unsigned int, double> _cutMinPt;
100  std::map<unsigned int, double> _cutMaxEta;
101  std::map<unsigned int, unsigned int> _cutMotherId;
102  std::map<unsigned int, std::vector<double> > _cutsDr;
103 
104  // The amount of Pt plots needed for the hlt path
105  unsigned int _NptPlots;
106 
107  //N-1 cut values
108  std::vector<double> _NminOneCuts;
109 
110  std::map<std::string, MonitorElement *> _elements;
111 };
112 #endif
std::map< unsigned int, double > _cutMaxEta
unsigned int _NptPlots
std::string _hltProcessName
dqm::legacy::MonitorElement MonitorElement
const std::string gethltpath() const
HLTHiggsPlotter(const edm::ParameterSet &pset, const std::string &hltPath, const std::vector< unsigned int > &objectsType, const unsigned int &minCandidates, const std::vector< double > &NminOneCuts)
container with all the objects needed
std::vector< double > _parametersPhi
std::map< unsigned int, unsigned int > _cutMotherId
std::set< unsigned int > _objectsType
std::map< std::string, MonitorElement * > _elements
std::string _hltPath
const unsigned int kNull
std::vector< double > _parametersTurnOn
Definition: value.py:1
void fillHist(const bool &passTrigger, const std::string &source, const std::string &objType, const std::string &var, const float &value)
void bookHist(const std::string &source, const std::string &objType, const std::string &variable, DQMStore::IBooker &)
dqm::legacy::DQMStore DQMStore
std::vector< double > _parametersEta
void beginRun(const edm::Run &, const edm::EventSetup &)
void bookHistograms(DQMStore::IBooker &, const bool &)
void analyze(const bool &isPassTrigger, const std::string &source, const std::vector< MatchStruct > &matches, const unsigned int &minCandidates)
std::map< unsigned int, double > _cutMinPt
unsigned int _nObjects
std::map< unsigned int, std::vector< double > > _cutsDr
static std::string const source
Definition: EdmProvDump.cc:47
std::vector< double > _NminOneCuts
Definition: Run.h:45