CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
GenMET.h
Go to the documentation of this file.
1 #ifndef METReco_GenMET_h
2 #define METReco_GenMET_h
3 
18 
19 namespace reco
20 {
21  class GenMET : public MET
22  {
23  public:
24  /* Constructors*/
25  GenMET() ;
26  GenMET( SpecificGenMETData gen_data_, double sumet_,
27  const LorentzVector& fP4, const Point& fVertex )
28  : MET( sumet_, fP4, fVertex ), gen_data( gen_data_ ) {}
29  /* Default destructor*/
30  virtual ~GenMET() {}
31 
32  //Get Neutral EM Et Fraction
33  double NeutralEMEtFraction() const { return gen_data.NeutralEMEtFraction ; }
34 
35  //Get Neutral EM Et
36  double NeutralEMEt () const{ return gen_data.NeutralEMEtFraction * sumEt(); }
37 
38  //Get Charged EM Et Fraction
40 
41  //Get Charged EM Et
42  double ChargedEMEt() const{return gen_data.ChargedEMEtFraction * sumEt() ; }
43 
44  //Get Neutral Had Et Fraction
46 
47  //Get Neutral Had Et
48  double NeutralHadEt() const{ return gen_data.NeutralHadEtFraction * sumEt(); }
49 
50  //Get Charged Had Et Fraction
52 
53  //Get Charged Had Et
54  double ChargedHadEt()const { return gen_data.ChargedHadEtFraction * sumEt() ; }
55 
56  //Get Muon Et Fraction
57  double MuonEtFraction()const { return gen_data.MuonEtFraction ; }
58 
59  //Get Muon Et
60  double MuonEt() const{ return gen_data.MuonEtFraction * sumEt() ; }
61 
62  //Get Invisible Et Fraction
64 
65  //Get Invisible Et
66  double InvisibleEt()const { return gen_data.InvisibleEtFraction * sumEt() ; }
67 
68 
69  // Old Accessors (to be removed as soon as possible)
71  double emEnergy() const {return gen_data.m_EmEnergy;};
73  double hadEnergy() const {return gen_data.m_HadEnergy;};
75  double invisibleEnergy() const {return gen_data.m_InvisibleEnergy;};
77  double auxiliaryEnergy() const {return gen_data.m_AuxiliaryEnergy;};
78  // block accessors
79 
80 
81  // block accessors
82  private:
83  virtual bool overlap( const Candidate & ) const;
84  // Data members
85  //Variables specific to to the GenMET class
87  };
88 }
89 #endif
double ChargedEMEt() const
Definition: GenMET.h:42
GenMET(SpecificGenMETData gen_data_, double sumet_, const LorentzVector &fP4, const Point &fVertex)
Definition: GenMET.h:26
virtual ~GenMET()
Definition: GenMET.h:30
double MuonEtFraction() const
Definition: GenMET.h:57
double InvisibleEt() const
Definition: GenMET.h:66
double NeutralHadEt() const
Definition: GenMET.h:48
double MuonEt() const
Definition: GenMET.h:60
double invisibleEnergy() const
Definition: GenMET.h:75
virtual bool overlap(const Candidate &) const
check overlap with another candidate
Definition: GenMET.cc:21
double sumEt() const
Definition: MET.h:48
Definition: MET.h:32
double ChargedEMEtFraction() const
Definition: GenMET.h:39
MET made from CaloTowers.
double auxiliaryEnergy() const
Definition: GenMET.h:77
double InvisibleEtFraction() const
Definition: GenMET.h:63
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:39
double ChargedHadEt() const
Definition: GenMET.h:54
double NeutralEMEtFraction() const
Definition: GenMET.h:33
double hadEnergy() const
Definition: GenMET.h:73
double NeutralHadEtFraction() const
Definition: GenMET.h:45
math::XYZPoint Point
point in the space
Definition: Candidate.h:43
double NeutralEMEt() const
Definition: GenMET.h:36
double ChargedHadEtFraction() const
Definition: GenMET.h:51
SpecificGenMETData gen_data
Definition: GenMET.h:86
double emEnergy() const
Definition: GenMET.h:71