CMS 3D CMS Logo

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 {
22  class CaloMET : public MET
23  {
24  public:
25  /* Constructors*/
26  CaloMET() ;
27  CaloMET( const SpecificCaloMETData& calo_data_, double sumet_,
28  const LorentzVector& fP4, const Point& fVertex )
29  : MET( sumet_, fP4, fVertex ), calo_data( calo_data_ ) {}
30  CaloMET( const SpecificCaloMETData& calo_data_, double sumet_,
31  const std::vector<CorrMETData>& corr_,
32  const LorentzVector& fP4, const Point& fVertex )
33  : MET( sumet_, corr_, fP4, fVertex ), calo_data( calo_data_ ) {}
34  /* Default destructor*/
35  ~CaloMET() override {}
36 
37  /* Returns the maximum energy deposited in ECAL towers */
38  double maxEtInEmTowers() const {return calo_data.MaxEtInEmTowers;};
39  /* Returns the maximum energy deposited in HCAL towers */
40  double maxEtInHadTowers() const {return calo_data.MaxEtInHadTowers;};
41  /* Returns the event hadronic energy fraction */
42  double etFractionHadronic () const
43  {return calo_data.EtFractionHadronic;};
44  /* Returns the event electromagnetic energy fraction */
45  double emEtFraction() const {return calo_data.EtFractionEm;};
46  /* Returns the event hadronic energy in HB */
47  double hadEtInHB() const {return calo_data.HadEtInHB;};
48  /* Returns the event hadronic energy in HO */
49  double hadEtInHO() const {return calo_data.HadEtInHO;};
50  /* Returns the event hadronic energy in HE */
51  double hadEtInHE() const {return calo_data.HadEtInHE;};
52  /* Returns the event hadronic energy in HF */
53  double hadEtInHF() const {return calo_data.HadEtInHF;};
54  /* Returns the event electromagnetic energy in EB */
55  double emEtInEB() const {return calo_data.EmEtInEB;};
56  /* Returns the event electromagnetic energy in EE */
57  double emEtInEE() const {return calo_data.EmEtInEE;};
58  /* Returns the event electromagnetic energy extracted from HF */
59  double emEtInHF() const {return calo_data.EmEtInHF;};
60  /* Returns the event MET Significance */
61  double metSignificance() const {return this->significance();};
62  /* Returns the event SET in HF+ */
63  double CaloSETInpHF() const {return calo_data.CaloSETInpHF;};
64  /* Returns the event SET in HF- */
65  double CaloSETInmHF() const {return calo_data.CaloSETInmHF;};
66  /* Returns the event MET in HF+ */
67  double CaloMETInpHF() const {return calo_data.CaloMETInpHF;};
68  /* Returns the event MET in HF- */
69  double CaloMETInmHF() const {return calo_data.CaloMETInmHF;};
70  /* Returns the event MET-phi in HF+ */
71  double CaloMETPhiInpHF() const {return calo_data.CaloMETPhiInpHF;};
72  /* Returns the event MET-phi in HF- */
73  double CaloMETPhiInmHF() const {return calo_data.CaloMETPhiInmHF;};
74 
75  //Set Met Significance
77 
78  // block accessors
80 
81  private:
82  bool overlap( const Candidate & ) const override;
83  // Data members
84  //Variables specific to to the CaloMET class
86  };
87 }
88 #endif
double hadEtInHE() const
Definition: CaloMET.h:51
double CaloMETInmHF() const
Definition: CaloMET.h:69
double hadEtInHF() const
Definition: CaloMET.h:53
double CaloSETInmHF() const
Definition: CaloMET.h:65
SpecificCaloMETData calo_data
Definition: CaloMET.h:85
CaloMET(const SpecificCaloMETData &calo_data_, double sumet_, const LorentzVector &fP4, const Point &fVertex)
Definition: CaloMET.h:27
double maxEtInHadTowers() const
Definition: CaloMET.h:40
double maxEtInEmTowers() const
Definition: CaloMET.h:38
double CaloMETPhiInpHF() const
Definition: CaloMET.h:71
SpecificCaloMETData getSpecific() const
Definition: CaloMET.h:79
Definition: MET.h:42
~CaloMET() override
Definition: CaloMET.h:35
double CaloMETInpHF() const
Definition: CaloMET.h:67
double emEtInEB() const
Definition: CaloMET.h:55
double CaloSETInpHF() const
Definition: CaloMET.h:63
double hadEtInHO() const
Definition: CaloMET.h:49
CaloMET(const SpecificCaloMETData &calo_data_, double sumet_, const std::vector< CorrMETData > &corr_, const LorentzVector &fP4, const Point &fVertex)
Definition: CaloMET.h:30
double etFractionHadronic() const
Definition: CaloMET.h:42
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:37
double emEtInEE() const
Definition: CaloMET.h:57
double metSignificance() const
Definition: CaloMET.h:61
double CaloMETPhiInmHF() const
Definition: CaloMET.h:73
fixed size matrix
math::XYZPoint Point
point in the space
Definition: Candidate.h:41
double emEtInHF() const
Definition: CaloMET.h:59
double significance() const
Definition: MET.cc:78
double hadEtInHB() const
Definition: CaloMET.h:47
double emEtFraction() const
Definition: CaloMET.h:45
void SetMetSignificance(double metsig)
Definition: CaloMET.h:76
bool overlap(const Candidate &) const override
check overlap with another candidate
Definition: CaloMET.cc:28