CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HLTHiggsSubAnalysis.h
Go to the documentation of this file.
1 #ifndef HLTriggerOffline_Higgs_HLTHiggsSubAnalysis_H
2 #define HLTriggerOffline_Higgs_HLTHiggsSubAnalysis_H
3 
22 
39 
42 
44 
46 
47 
48 #include<vector>
49 #include<set>
50 #include<map>
51 #include<cstring>
52 
53 class EVTColContainer;
54 
56 {
57  public:
58  enum
59  {
60  GEN,
62  };
63 
65  const std::string & analysisname,
68  void beginJob();
69  void beginRun(const edm::Run & iRun, const edm::EventSetup & iEventSetup);
70  void analyze(const edm::Event & iEvent, const edm::EventSetup & iEventSetup, EVTColContainer * cols);
72 
74  const std::vector<unsigned int> getObjectsType(const std::string & hltpath) const;
75 
76 
77  private:
78  void bookobjects(const edm::ParameterSet & anpset, edm::ConsumesCollector& iC);
80  void InitSelector(const unsigned int & objtype);
81  void insertcandidates(const unsigned int & objtype, const EVTColContainer * col,
82  std::vector<MatchStruct> * matches);
83 
84  void bookHist(const std::string & source, const std::string & objType,
85  const std::string & variable, DQMStore::IBooker &);
86  void fillHist(const std::string & source,const std::string & objType,
87  const std::string & variable, const float & value );
88 
90 
92 
94  unsigned int _minCandidates;
95 
97 
99  std::vector<std::string> _hltPathsToCheck;
101  std::set<std::string> _hltPaths;
102 
104  std::map<std::string,std::string> _shortpath2long;
105 
106  // The name of the object collections to be used in this
107  // analysis.
109 
110  std::map<unsigned int,std::string> _recLabels;
117 
118 
120  std::vector<double> _parametersEta;
121  std::vector<double> _parametersPhi;
122  std::vector<double> _parametersPu;
123  std::vector<double> _parametersTurnOn;
125 
126 
127  std::map<unsigned int,double> _cutMinPt;
128  std::map<unsigned int,double> _cutMaxEta;
129  std::map<unsigned int,unsigned int> _cutMotherId; //TO BE DEPRECATED (HLTMATCH)
130  std::map<unsigned int,std::vector<double> > _cutsDr; // TO BE DEPRECATED (HLTMATCH)
132  std::map<unsigned int,std::string> _genCut;
133  std::map<unsigned int,std::string> _recCut;
134 
137  std::map<unsigned int,StringCutObjectSelector<reco::GenParticle> *> _genSelectorMap;
144 
145 
146  // The plotters: managers of each hlt path where the plots are done
147  std::vector<HLTHiggsPlotter> _analyzers;
148 
150 
151  std::map<std::string, MonitorElement *> _elements;
152 };
153 
154 
155 #endif
std::vector< double > _parametersTurnOn
void InitSelector(const unsigned int &objtype)
std::map< std::string, std::string > _shortpath2long
Relation between the short version of a path.
StringCutObjectSelector< reco::CaloMET > * _recCaloMETSelector
edm::EDGetTokenT< reco::GenParticleCollection > _genParticleLabel
std::map< unsigned int, std::string > _genCut
gen/rec objects cuts
void initobjects(const edm::Event &iEvent, EVTColContainer *col)
edm::EDGetTokenT< reco::PFTauCollection > _recLabelsPFTau
unsigned int _minCandidates
The minimum number of reco/gen candidates needed by the analysis.
std::map< std::string, MonitorElement * > _elements
edm::ParameterSet _pset
std::set< std::string > _hltPaths
the hlt paths found in the hltConfig
container with all the objects needed
HLTConfigProvider _hltConfig
std::map< unsigned int, unsigned int > _cutMotherId
void bookHistograms(DQMStore::IBooker &)
std::vector< double > _parametersPu
edm::EDGetTokenT< reco::PhotonCollection > _recLabelsPhoton
edm::EDGetTokenT< reco::CaloMETCollection > _recLabelsCaloMET
StringCutObjectSelector< reco::Track > * _recTrackSelector
std::map< unsigned int, std::string > _recCut
std::map< unsigned int, StringCutObjectSelector< reco::GenParticle > * > _genSelectorMap
int iEvent
Definition: GenABIO.cc:230
edm::EDGetTokenT< std::vector< PileupSummaryInfo > > _puSummaryInfo
std::vector< HLTHiggsPlotter > _analyzers
std::map< unsigned int, std::string > _recLabels
void analyze(const edm::Event &iEvent, const edm::EventSetup &iEventSetup, EVTColContainer *cols)
std::map< unsigned int, double > _cutMinPt
StringCutObjectSelector< reco::PFTau > * _recPFTauSelector
void beginRun(const edm::Run &iRun, const edm::EventSetup &iEventSetup)
edm::EDGetTokenT< edm::TriggerResults > _trigResultsTag
void bookHist(const std::string &source, const std::string &objType, const std::string &variable, DQMStore::IBooker &)
edm::EDGetTokenT< reco::GsfElectronCollection > _recLabelsElec
HLTHiggsSubAnalysis(const edm::ParameterSet &pset, const std::string &analysisname, edm::ConsumesCollector &&iC)
StringCutObjectSelector< reco::Muon > * _recMuonSelector
void fillHist(const std::string &source, const std::string &objType, const std::string &variable, const float &value)
const std::vector< unsigned int > getObjectsType(const std::string &hltpath) const
Extract what objects need this analysis.
void insertcandidates(const unsigned int &objtype, const EVTColContainer *col, std::vector< MatchStruct > *matches)
edm::EDGetTokenT< reco::MuonCollection > _recLabelsMuon
std::vector< double > _parametersPhi
std::vector< std::string > _hltPathsToCheck
the hlt paths with regular expressions
std::vector< double > _parametersEta
Some kinematical parameters.
std::map< unsigned int, double > _cutMaxEta
void bookobjects(const edm::ParameterSet &anpset, edm::ConsumesCollector &iC)
StringCutObjectSelector< reco::Photon > * _recPhotonSelector
int col
Definition: cuy.py:1008
std::map< unsigned int, std::vector< double > > _cutsDr
static std::string const source
Definition: EdmProvDump.cc:43
StringCutObjectSelector< reco::GsfElectron > * _recElecSelector
Definition: Run.h:41