00001
00003
00004
00005
00007
00008 #include <iostream>
00009 #include <string>
00010 #include <iostream>
00011 #include <iomanip>
00012 #include <fstream>
00013 #include <sstream>
00014
00015 #include <cmath>
00016
00017 #include "tmb_tree/TMBMetEx.hpp"
00018
00019 using namespace std;
00020
00021 ClassImp(TMBMetEx);
00022
00023
00024
00025
00026 TMBMetEx::TMBMetEx()
00027
00028 {}
00029
00030 TMBMetEx::~TMBMetEx()
00031 {}
00032
00033
00034 void TMBMetEx::getRings(const float *&RingEMx,
00035 const float *&RingEMy,
00036 const float *&RingHDx,
00037 const float *&RingHDy) const
00038 {
00039 RingEMx = &_RingEMx[0];
00040 RingEMy = &_RingEMy[0];
00041 RingHDx = &_RingHDx[0];
00042 RingHDy = &_RingHDy[0];
00043 }
00044
00045 void TMBMetEx::setRings( const float *&aRingEMx,
00046 const float *&aRingEMy,
00047 const float *&aRingHDx,
00048 const float *&aRingHDy)
00049 {
00050 for(int iring=0; iring < (int )metid::NRING; iring++){
00051 _RingEMx[iring] = aRingEMx[iring];
00052 _RingEMy[iring] = aRingEMy[iring];
00053 _RingHDx[iring] = aRingHDx[iring];
00054 _RingHDy[iring] = aRingHDy[iring];
00055 }
00056 }
00057
00058 void TMBMetEx::print(std::ostream &os) const
00059 {
00060 print_METweta (os);
00061 print_METT (os);
00062 print_METTM (os);
00063 print_METTAS (os);
00064 print_METTBS (os);
00065 print_METTAN (os);
00066 print_METTBN (os);
00067 print_METCM (os);
00068 print_METCAS (os);
00069 print_METCBS (os);
00070 print_METCAN (os);
00071 print_METCBN (os);
00072 print_METICD (os);
00073 print_METNADA(os);
00074 print_METMUON(os);
00075 print_METDM (os);
00076 print_METEM (os);
00077 print_METMG (os);
00078 print_METFH (os);
00079 print_METCH (os);
00080 print_METED (os);
00081 print_METNG (os);
00082 print_MET42 (os);
00083 print_rings (os);
00084 }
00085
00086
00087 void TMBMetEx::print_rings(std::ostream& os) const
00088 {
00089 os << "MET Rings : EMx, EMy, HDx, HDy" <<endl;
00090 for (int iring=0; iring != (int)metid::NRING; iring++){
00091 os << " RingEMx[" << setw(2) << iring << "] = "
00092 << setw(10) << _RingEMx[iring] << " , "
00093 << setw(10) << _RingEMy[iring] << " , "
00094 << setw(10) << _RingHDx[iring] << " , "
00095 << setw(10) << _RingHDy[iring] << endl;
00096 }
00097 }
00098
00099 void TMBMetEx::getVisMu(float &visMuX, float &visMuY, float &visMuPt) const
00100 {
00101 visMuX = -1. * _metMUON.getmex();;
00102 visMuY = -1. * _metMUON.getmey();;
00103 visMuPt = -1. * _metMUON.getmet();;
00104 }
00105
00106
00107 void TMBMetEx::getMETT (float &SETT, float &METTx, float &METTy, float &METT) const
00108 {
00109 SETT = _metT.getset();
00110 METTx = _metT.getmex();
00111 METTy = _metT.getmey();
00112 METT = _metT.getmet();
00113 }
00114 void TMBMetEx::getMETTM (float &SETTM, float &METTMx, float &METTMy, float &METTM) const
00115 {
00116 SETTM = _metTM.getset();
00117 METTMx = _metTM.getmex();
00118 METTMy = _metTM.getmey();
00119 METTM = _metTM.getmet();
00120 }
00121 void TMBMetEx::getVETTAS (float &SETTAS, float &VETTASx, float &VETTASy, float &VETTAS) const
00122 {
00123 SETTAS = _metTAS.getset();
00124 VETTASx = -1. * _metTAS.getmex();
00125 VETTASy = -1. * _metTAS.getmey();
00126 VETTAS = _metTAS.getmet();
00127 }
00128 void TMBMetEx::getVETTBS (float &SETTBS, float &VETTBSx, float &VETTBSy, float &VETTBS) const
00129 {
00130 SETTBS = _metTBS.getset();
00131 VETTBSx = -1. * _metTBS.getmex();
00132 VETTBSy = -1. * _metTBS.getmey();
00133 VETTBS = _metTBS.getmet();
00134 }
00135 void TMBMetEx::getVETTAN (float &SETTAN, float &VETTANx, float &VETTANy, float &VETTAN) const
00136 {
00137 SETTAN = _metTAN.getset();
00138 VETTANx = -1. * _metTAN.getmex();
00139 VETTANy = -1. * _metTAN.getmey();
00140 VETTAN = _metTAN.getmet();
00141 }
00142 void TMBMetEx::getVETTBN (float &SETTBN, float &VETTBNx, float &VETTBNy, float &VETTBN) const
00143 {
00144 SETTBN = _metTBN.getset();
00145 VETTBNx = -1. * _metTBN.getmex();
00146 VETTBNy = -1. * _metTBN.getmey();
00147 VETTBN = _metTBN.getmet();
00148 }
00149
00150 void TMBMetEx::getMETCM (float &SETCM, float &METCMx, float &METCMy, float &METCM) const
00151 {
00152 SETCM = _metCM.getset();
00153 METCMx = _metCM.getmex();
00154 METCMy = _metCM.getmey();
00155 METCM = _metCM.getmet();
00156 }
00157 void TMBMetEx::getVETCAS (float &SETCAS, float &VETCASx, float &VETCASy, float &VETCAS) const
00158 {
00159 SETCAS = _metCAS.getset();
00160 VETCASx = -1. * _metCAS.getmex();
00161 VETCASy = -1. * _metCAS.getmey();
00162 VETCAS = _metCAS.getmet();
00163 }
00164 void TMBMetEx::getVETCBS (float &SETCBS, float &VETCBSx, float &VETCBSy, float &VETCBS) const
00165 {
00166 SETCBS = _metCBS.getset();
00167 VETCBSx = -1. * _metCBS.getmex();
00168 VETCBSy = -1. * _metCBS.getmey();
00169 VETCBS = _metCBS.getmet();
00170 }
00171 void TMBMetEx::getVETCAN (float &SETCAN, float &VETCANx, float &VETCANy, float &VETCAN) const
00172 {
00173 SETCAN = _metCAN.getset();
00174 VETCANx = -1. * _metCAN.getmex();
00175 VETCANy = -1. * _metCAN.getmey();
00176 VETCAN = _metCAN.getmet();
00177 }
00178 void TMBMetEx::getVETCBN (float &SETCBN, float &VETCBNx, float &VETCBNy, float &VETCBN) const
00179 {
00180 SETCBN = _metCBN.getset();
00181 VETCBNx = -1. * _metCBN.getmex();
00182 VETCBNy = -1. * _metCBN.getmey();
00183 VETCBN = _metCBN.getmet();
00184 }
00185 void TMBMetEx::getVETICD (float &SETICD, float &VETICDx, float &VETICDy, float &VETICD) const
00186 {
00187 SETICD = _metICD.getset();
00188 VETICDx = -1. * _metICD.getmex();
00189 VETICDy = -1. * _metICD.getmey();
00190 VETICD = _metICD.getmet();
00191 }
00192 void TMBMetEx::getVETNADA(float &SETNADA, float &VETNADAx, float &VETNADAy, float &VETNADA) const
00193 {
00194 SETNADA = _metNADA.getset();
00195 VETNADAx = -1. * _metNADA.getmex();
00196 VETNADAy = -1. * _metNADA.getmey();
00197 VETNADA = _metNADA.getmet();
00198 }
00199 void TMBMetEx::getVETMUON(float &VETMUONx, float &VETMUONy, float &VETMUONz, float &VETMUON) const
00200 {
00201 VETMUONx = -1. * _metMUON.getmex();
00202 VETMUONy = -1. * _metMUON.getmey();
00203 VETMUONz = -1. * _metMUON.getmez();
00204 VETMUON = _metMUON.getmet();
00205 }
00206
00207 void TMBMetEx::getVETCM (float &SETCM, float &VETCMx, float &VETCMy, float &METCM) const
00208 {
00209 SETCM = _metCM.getset();
00210 VETCMx = -1. * _metCM.getmex();
00211 VETCMy = -1. * _metCM.getmey();
00212 METCM = _metCM.getmet();
00213 }
00214
00215 void TMBMetEx::getVETDM (float &SETDM, float &VETDMx, float &VETDMy, float &METDM) const
00216 {
00217 SETDM = _metDM.getset();
00218 VETDMx = -1. * _metDM.getmex();
00219 VETDMy = -1. * _metDM.getmey();
00220 METDM = _metDM.getmet();
00221 }
00222 void TMBMetEx::getMETDM (float &SETDM, float &METDMx, float &METDMy, float &METDM) const
00223 {
00224 SETDM = _metDM.getset();
00225 METDMx = _metDM.getmex();
00226 METDMy = _metDM.getmey();
00227 METDM = _metDM.getmet();
00228 }
00229 void TMBMetEx::getVETEM (float &SETEM, float &VETEMx, float &VETEMy, float &METEM) const
00230 {
00231 SETEM = _metEM.getset();
00232 VETEMx = -1. * _metEM.getmex();
00233 VETEMy = -1. * _metEM.getmey();
00234 METEM = _metEM.getmet();
00235 }
00236 void TMBMetEx::getVETMG (float &SETMG, float &VETMGx, float &VETMGy, float &METMG) const
00237 {
00238 SETMG = _metMG.getset();
00239 VETMGx = -1. * _metMG.getmex();
00240 VETMGy = -1. * _metMG.getmey();
00241 METMG = _metMG.getmet();
00242 }
00243 void TMBMetEx::getVETFH (float &SETFH, float &VETFHx, float &VETFHy, float &METFH) const
00244 {
00245 SETFH = _metFH.getset();
00246 VETFHx = -1. * _metFH.getmex();
00247 VETFHy = -1. * _metFH.getmey();
00248 METFH = _metFH.getmet();
00249 }
00250 void TMBMetEx::getVETCH (float &SETCH, float &VETCHx, float &VETCHy, float &METCH) const
00251 {
00252 SETCH = _metCH.getset();
00253 VETCHx = -1. * _metCH.getmex();
00254 VETCHy = -1. * _metCH.getmey();
00255 METCH = _metCH.getmet();
00256 }
00257 void TMBMetEx::getVETED (float &EDGE, float &SETED, float &VETEDx, float &VETEDy, float &METED) const
00258 {
00259 EDGE = 0.;
00260 SETED = _metED.getset();
00261 VETEDx = -1. * _metED.getmex();
00262 VETEDy = -1. * _metED.getmey();
00263 METED = _metED.getmet();
00264 }
00265 void TMBMetEx::getVETNG (float &SETNG, float &VETNGx, float &VETNGy, float &METNG) const
00266 {
00267 SETNG = _metNG.getset();
00268 VETNGx = -1. * _metNG.getmex();
00269 VETNGy = -1. * _metNG.getmey();
00270 METNG = _metNG.getmet();
00271 }
00272 void TMBMetEx::getVET42 (float &SET42, float &VET42x, float &VET42y, float &MET42) const
00273 {
00274 SET42 = _metT42.getset();
00275 VET42x = -1. * _metT42.getmex();
00276 VET42y = -1. * _metT42.getmey();
00277 MET42 = _metT42.getmet();
00278 }
00279
00280
00281