SusyNtuple
SusyNtuple/Met.h
00001 // Dear emacs, this is -*- c++ -*-
00002 #ifndef SUSYNTUPLE_MET_H
00003 #define SUSYNTUPLE_MET_H
00004 
00005 #include "TObject.h"
00006 #include "TLorentzVector.h"
00007 
00008 namespace Susy
00009 {
00011 
00014 class Met : public TObject
00015 {
00016 public:
00017     Met(){ clear(); }
00018     virtual ~Met(){};
00020     Met(const Met &);
00022     Met& operator=(const Met &);
00023 
00024     float Et;
00025     float phi;
00026     float sumet;
00027 
00029     const TLorentzVector lv() const {
00030       TLorentzVector tlv;
00031       tlv.SetPtEtaPhiE(this->Et,0,this->phi,this->Et);
00032       return tlv;
00033     }
00034 
00035     // MET Composition info - do we want TLorentzVectors, TVector2, or just floats?
00036     // TODO: clean out the obsolete term
00037     float refEle_et;          
00038     float refEle_phi;         
00039     float refEle_sumet;       
00040     float refGamma_et;        
00041     float refGamma_phi;       
00042     float refGamma_sumet;     
00043     float refTau_et;          
00044     float refTau_phi;         
00045     float refTau_sumet;       
00046     float refJet_et;          
00047     float refJet_phi;         
00048     float refJet_sumet;       
00049     float softTerm_et;        
00050     float softTerm_phi;       
00051     float softTerm_sumet;     
00052     float refMuo_et;          
00053     float refMuo_phi;         
00054     float refMuo_sumet;       
00055    
00056     // I'm not a big fan of the way this is setup, would like to improve it someday
00057     int sys;                  
00058 
00059 
00061     void print() const;
00062 
00064     void clear(){
00065       Et = phi = sumet = 0;
00066       refEle_et = refGamma_et = refTau_et = refJet_et = softTerm_et = refMuo_et = 0;
00067       refEle_phi = refGamma_phi = refTau_phi = refJet_phi = softTerm_phi = refMuo_phi = 0;
00068       refEle_sumet = refGamma_sumet = refTau_sumet = refJet_sumet = softTerm_sumet = refMuo_sumet = 0;
00069       sys = 0;
00070     }
00071 
00072     ClassDef(Met, 5);
00073 };
00074 } // Susy
00075 #endif
 All Classes Functions Variables Typedefs Enumerations Enumerator