CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
CaloMET.h
Go to the documentation of this file.
1 #ifndef METReco_CaloMET_h
2 #define METReco_CaloMET_h
3 
19 
20 namespace reco {
21  class CaloMET : public MET {
22  public:
23  /* Constructors*/
24  CaloMET();
25  CaloMET(const SpecificCaloMETData& calo_data_, double sumet_, const LorentzVector& fP4, const Point& fVertex)
26  : MET(sumet_, fP4, fVertex), calo_data(calo_data_) {}
27  CaloMET(const SpecificCaloMETData& calo_data_,
28  double sumet_,
29  const std::vector<CorrMETData>& corr_,
30  const LorentzVector& fP4,
31  const Point& fVertex)
32  : MET(sumet_, corr_, fP4, fVertex), calo_data(calo_data_) {}
33  /* Default destructor*/
34  ~CaloMET() override {}
35 
36  /* Returns the maximum energy deposited in ECAL towers */
37  double maxEtInEmTowers() const { return calo_data.MaxEtInEmTowers; };
38  /* Returns the maximum energy deposited in HCAL towers */
39  double maxEtInHadTowers() const { return calo_data.MaxEtInHadTowers; };
40  /* Returns the event hadronic energy fraction */
41  double etFractionHadronic() const { return calo_data.EtFractionHadronic; };
42  /* Returns the event electromagnetic energy fraction */
43  double emEtFraction() const { return calo_data.EtFractionEm; };
44  /* Returns the event hadronic energy in HB */
45  double hadEtInHB() const { return calo_data.HadEtInHB; };
46  /* Returns the event hadronic energy in HO */
47  double hadEtInHO() const { return calo_data.HadEtInHO; };
48  /* Returns the event hadronic energy in HE */
49  double hadEtInHE() const { return calo_data.HadEtInHE; };
50  /* Returns the event hadronic energy in HF */
51  double hadEtInHF() const { return calo_data.HadEtInHF; };
52  /* Returns the event electromagnetic energy in EB */
53  double emEtInEB() const { return calo_data.EmEtInEB; };
54  /* Returns the event electromagnetic energy in EE */
55  double emEtInEE() const { return calo_data.EmEtInEE; };
56  /* Returns the event electromagnetic energy extracted from HF */
57  double emEtInHF() const { return calo_data.EmEtInHF; };
58  /* Returns the event MET Significance */
59  double metSignificance() const { return this->significance(); };
60  /* Returns the event SET in HF+ */
61  double CaloSETInpHF() const { return calo_data.CaloSETInpHF; };
62  /* Returns the event SET in HF- */
63  double CaloSETInmHF() const { return calo_data.CaloSETInmHF; };
64  /* Returns the event MET in HF+ */
65  double CaloMETInpHF() const { return calo_data.CaloMETInpHF; };
66  /* Returns the event MET in HF- */
67  double CaloMETInmHF() const { return calo_data.CaloMETInmHF; };
68  /* Returns the event MET-phi in HF+ */
69  double CaloMETPhiInpHF() const { return calo_data.CaloMETPhiInpHF; };
70  /* Returns the event MET-phi in HF- */
71  double CaloMETPhiInmHF() const { return calo_data.CaloMETPhiInmHF; };
72 
73  //Set Met Significance
74  void SetMetSignificance(double metsig) { calo_data.METSignificance = metsig; }
75 
76  // block accessors
78 
79  private:
80  bool overlap(const Candidate&) const override;
81  // Data members
82  //Variables specific to to the CaloMET class
84  };
85 } // namespace reco
86 #endif
double hadEtInHE() const
Definition: CaloMET.h:49
double CaloMETInmHF() const
Definition: CaloMET.h:67
double hadEtInHF() const
Definition: CaloMET.h:51
double CaloSETInmHF() const
Definition: CaloMET.h:63
SpecificCaloMETData calo_data
Definition: CaloMET.h:83
CaloMET(const SpecificCaloMETData &calo_data_, double sumet_, const LorentzVector &fP4, const Point &fVertex)
Definition: CaloMET.h:25
double maxEtInHadTowers() const
Definition: CaloMET.h:39
double maxEtInEmTowers() const
Definition: CaloMET.h:37
double CaloMETPhiInpHF() const
Definition: CaloMET.h:69
SpecificCaloMETData getSpecific() const
Definition: CaloMET.h:77
Definition: MET.h:41
~CaloMET() override
Definition: CaloMET.h:34
double CaloMETInpHF() const
Definition: CaloMET.h:65
double emEtInEB() const
Definition: CaloMET.h:53
double CaloSETInpHF() const
Definition: CaloMET.h:61
double hadEtInHO() const
Definition: CaloMET.h:47
bool overlap(const Candidate &) const override
check overlap with another candidate
Definition: CaloMET.cc:26
CaloMET(const SpecificCaloMETData &calo_data_, double sumet_, const std::vector< CorrMETData > &corr_, const LorentzVector &fP4, const Point &fVertex)
Definition: CaloMET.h:27
double etFractionHadronic() const
Definition: CaloMET.h:41
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:36
double emEtInEE() const
Definition: CaloMET.h:55
double metSignificance() const
Definition: CaloMET.h:59
double CaloMETPhiInmHF() const
Definition: CaloMET.h:71
Structure Point Contains parameters of Gaussian fits to DMRs.
Definition: DMRtrends.cc:57
double emEtInHF() const
Definition: CaloMET.h:57
double significance() const
Definition: MET.cc:73
double hadEtInHB() const
Definition: CaloMET.h:45
double emEtFraction() const
Definition: CaloMET.h:43
void SetMetSignificance(double metsig)
Definition: CaloMET.h:74