NtupleReader/NtupleReader/MyMissingEt.h

00001 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00002 // 07/2007, AUTHOR: THIES EHRICH, STEFFEN KAISER
00003 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00004 
00005 #ifndef MyMissingEtH
00006 #define MyMissingEtH
00007 
00008 //:::::::::::::::::::::::
00009 //:: CLASS MyMissingEt ::
00010 //:::::::::::::::::::::::
00011 
00019 
00020 //::::::::::::::::::
00021 //:: HEADER FILES ::
00022 //::::::::::::::::::
00023 
00024 // standard C++ //
00025 #include <iostream>
00026 #include <string>
00027 
00028 // ROOT //
00029 #include "TLorentzVector.h"
00030 #include "TString.h"
00031 
00032 
00033 class MyMissingEt  {
00034 
00035  public:
00036     // Constructors //
00037     MyMissingEt(void) {
00038         init("", 0.0, 0.0, 0.0);
00039     }
00041 
00042     MyMissingEt( TString name,  
00043                  const double & met_x, 
00044                  const double & met_y,
00045                  const double & met_sum
00046                  ) {
00047         
00048         init(name, met_x, met_y, met_sum);
00049     }
00056     // Methods //
00057     // get methods //
00058 
00059     inline double met_x(void) const;    
00061     inline double met_y(void) const;    
00063     inline double met_sum(void) const;  
00065     inline double met(void) const;      
00067                     
00068     inline TString name(void) const;    
00070     inline TLorentzVector tlv(void) const;  
00072         
00073     inline MyMissingEt add(TString name, MyMissingEt met1) const;
00075     inline MyMissingEt add(TString name, MyMissingEt met1, MyMissingEt met2) const;
00077 
00078     inline void Print(std::string option = ""); 
00081                  
00082 
00083     // set methods //
00084 
00085     inline void set_met_x(const double & in_met_x);    
00087     inline void set_met_y(const double & in_met_y);    
00089     inline void set_met_sum(const double & in_met_sum);  
00091         
00092  private:
00093 
00094     TString m_name;
00095     double  m_met_x;
00096     double  m_met_y;
00097     double  m_met_sum;
00098     double  m_met;
00099         
00100     TLorentzVector m_met_tlv;
00101 
00102     // private methods //
00103     inline void init( TString name,  
00104                       const double & met_x,
00105                       const double & met_y,
00106                       const double & met_sum
00107                       );
00109 
00110 
00111 };
00112 
00113 //::::::::::::::::::::::::::::::::::::::
00114 //:: IMPLEMENTATION OF INLINE METHODS ::
00115 //::::::::::::::::::::::::::::::::::::::
00116 
00117 #include "MyMissingEt.ixx"
00118 
00119 #endif

Generated on Tue Oct 21 11:50:45 2008 for NtupleAnalysis by  doxygen 1.5.1