00001 #ifndef XANAEtMiss_h
00002 #define XANAEtMiss_h
00003
00032 #include <TObject.h>
00033 #include <string>
00034 class EtMiss: public TObject {
00035 public:
00036 EtMiss(): _EtMissScheme("default"){};
00037 EtMiss(std::string name): _EtMissScheme(name){};
00038 ~EtMiss(){};
00039
00041 void SetEECal(double,double,double);
00042 void SetEHCal(double,double,double);
00043 void SetEScalECal(double,double,double,double,double);
00044 void SetEScalHCal(double,double,double,double,double);
00045 void SetETotal(double,double,double);
00046 void SetEScalTotal(double,double,double,double,double);
00047
00048 void SetETrue(double,double,double);
00049
00050 void SetEtMiss(double,double);
00051
00054 double getEMissX();
00055 double getEMissY();
00056 double getEtMiss();
00058 double getEECal(int i = 4);
00059 double getEHCal(int i = 4 );
00060 double getEScalarECal(int i = 4);
00061 double getEScalarHCal(int i = 4);
00062 double getE(int i = 4);
00063 double getEScalar(int i = 4);
00064 double getETrue(int i = 4);
00065
00066 std::string WhichScheme(){return _EtMissScheme;}
00067
00068
00069
00070 protected:
00071 double _EECal[3];
00072 double _EHCal[3];
00073 double _EScalarECal[5];
00074 double _EScalarHCal[5];
00075 double _EScalarTotal[5];
00076 double _ETotal[3];
00077
00078 double _EtMiss[2];
00079
00080 double _ETrue[3];
00081
00082 std::string _EtMissScheme;
00083 };
00084
00085 #endif