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 
17 
31 
33 
34 #include "MatchStruct.h"
35 
36 #include <vector>
37 #include <cstring>
38 #include <map>
39 #include <set>
40 
41 struct EVTColContainer;
42 
44 public:
47 
49  const std::string &hltPath,
50  //const std::string & lastFilter,
51  const std::vector<unsigned int> &objectsType,
52  const unsigned int &minCandidates,
53  const std::vector<double> &NminOneCuts);
55  void beginJob();
56  void beginRun(const edm::Run &, const edm::EventSetup &);
57  void bookHistograms(DQMStore::IBooker &, const bool &);
58  void analyze(const bool &isPassTrigger,
59  const std::string &source,
60  const std::vector<MatchStruct> &matches,
61  const unsigned int &minCandidates);
62  void analyze(const bool &isPassTrigger,
63  const std::string &source,
64  const std::vector<MatchStruct> &matches,
65  std::map<std::string, bool> &nMinOne,
66  const float &dEtaqq,
67  const float &mqq,
68  const float &dPhibb,
69  const float &CSV1,
70  const float &CSV2,
71  const float &CSV3,
72  const bool &passAllCuts);
73 
74  inline const std::string gethltpath() const { return _hltPath; }
75 
76 private:
78  void fillHist(const bool &passTrigger,
79  const std::string &source,
80  const std::string &objType,
81  const std::string &var,
82  const float &value);
83 
85  //std::string _lastFilter;
87 
88  std::set<unsigned int> _objectsType;
89  // Number of objects (elec,muons, ...) needed in the hlt path
90  unsigned int _nObjects;
91 
92  std::vector<double> _parametersEta;
93  std::vector<double> _parametersPhi;
94  std::vector<double> _parametersTurnOn;
95 
96  std::map<unsigned int, double> _cutMinPt;
97  std::map<unsigned int, double> _cutMaxEta;
98  std::map<unsigned int, unsigned int> _cutMotherId;
99  std::map<unsigned int, std::vector<double> > _cutsDr;
100 
101  // The amount of Pt plots needed for the hlt path
102  unsigned int _NptPlots;
103 
104  //N-1 cut values
105  std::vector<double> _NminOneCuts;
106 
107  std::map<std::string, MonitorElement *> _elements;
108 };
109 #endif
std::map< unsigned int, double > _cutMaxEta
unsigned int _NptPlots
std::string _hltProcessName
dqm::legacy::MonitorElement MonitorElement
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
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
const std::string gethltpath() const
static std::string const source
Definition: EdmProvDump.cc:46
std::vector< double > _NminOneCuts
Definition: Run.h:45