/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Event/RootEventData/RootEventData-00-03-80/RootEventData/TRecEmcShower.h

Go to the documentation of this file.
00001 #ifndef RootEventData_TRecEmcShower_H
00002 #define RootEventData_TRecEmcShower_H 1
00003 
00004 #include "TObject.h"
00005 #include <vector>
00006 #include <map>
00007 #include <iostream>
00008 
00009 using namespace std;
00010 
00011 class TRecEmcShower : public TObject {
00012 
00013   public:
00014 
00015     TRecEmcShower();
00016     ~TRecEmcShower();
00017 
00018 
00019     //   void Clear(Option_t *option ="");
00020 
00021     //   void PrInt_t(Option_t *option="") const;
00022     //Get
00023     Int_t  trackId()const { return    m_trackId; }   
00024     Int_t  numHits()const { return    m_numHits; }  
00025     Int_t  status() const { return    m_status; }
00026     Int_t  cellId() const { return    m_cellId; }
00027     Int_t  module() const { return    m_module; }
00028     Double_t    x() const { return    m_x;      }
00029     Double_t    y() const { return    m_y;      }
00030     Double_t    z() const { return    m_z;      }
00031     Double_t    theta()  const {  return  m_theta;  }
00032     Double_t    dtheta() const {  return  m_dTheta; }
00033     Double_t    phi()    const {  return  m_phi;    }
00034     Double_t    dphi()   const {  return  m_dPhi;   }
00035     Double_t    energy() const {  return  m_energy;      }
00036     Double_t    dE()     const {  return  m_dE;     }
00037     Double_t    eSeed()  const {return m_eSeed;}
00038     Double_t    e3x3()  const {return m_e3x3;}
00039     Double_t    e5x5()  const {return m_e5x5;}
00040     Double_t eAll() const { return m_eall;  }
00041     Double_t eLepton() const { return m_elepton;  }
00042     Double_t time() const { return m_time; }
00043     Double_t secondMoment() const {return m_secondMoment;}
00044     Double_t latMoment() const {return m_latMoment;}
00045     Double_t a20Moment() const {return m_a20Moment;}
00046     Double_t a42Moment() const {return m_a42Moment;}
00047     Double_t err(Int_t i) const { return m_err[i]; }
00048 
00049     map<Int_t, Double_t> cellIdMap() const { return m_cellIdMap; }
00050     vector<Int_t> cellId3x3() const { return  m_cellId3x3; }
00051     vector<Int_t> cellId5x5() const { return  m_cellId5x5; }
00052     Int_t clusterId() const { return m_clusterId; }
00053 
00054     //Set
00055     void setTrackId(const Int_t trackId ) { m_trackId = trackId; }
00056     void setNumHits(const Int_t hit )  { m_numHits   = hit;     }
00057     void setStatus(const Int_t st )  { m_status = st;      }
00058     void setCellId(const Int_t id )  { m_cellId = id;      }
00059     void setModule(const Int_t mod)  { m_module = mod;     }
00060     void setX(const Double_t x    )  { m_x  = x ;          } 
00061     void setY(const Double_t y    )  { m_y  = y ;          }
00062     void setZ(const Double_t z    )  { m_z  = z ;          }
00063     void setEnergy(const Double_t e    )  { m_energy  = e ;     }
00064     void setDE(const Double_t de  )  { m_dE = de;          }
00065     void setTheta(const Double_t theta  )  { m_theta = theta ; }
00066     void setDtheta(const Double_t dt    )  { m_dTheta = dt;    } 
00067     void setPhi(const Double_t pi       )  { m_phi    = pi ;   }
00068     void setDphi(const Double_t dpi     )  { m_dPhi    = dpi ;  }
00069     void setESeed(const Double_t eSeed     )  { m_eSeed   = eSeed ;  }
00070     void setE3x3(const Double_t e3x3     )  { m_e3x3   = e3x3 ;  }
00071     void setE5x5(const Double_t e5x5     )  { m_e5x5   = e5x5 ;  }
00072     void setEAll(const Double_t eall     )  { m_eall   = eall ;  }
00073     void setELepton(const Double_t elepton  )  { m_elepton   = elepton ;  }
00074     void setTime(const Double_t time) { m_time = time; }
00075     void      setSecondMoment(const Double_t secondMoment) { m_secondMoment = secondMoment; }
00076     void      setLatMoment(const Double_t latMoment) { m_latMoment = latMoment; }
00077     void      setA20Moment(const Double_t a20Moment) { m_a20Moment = a20Moment; }
00078     void      setA42Moment(const Double_t a42Moment) { m_a42Moment = a42Moment; }
00079     void setErr(const Double_t err[6] );
00080 
00081     void setCellIdMap(const map<Int_t, Double_t>& cellIdMap) { m_cellIdMap = cellIdMap; }
00082     void setCellId3x3(const vector<Int_t>& cellId3x3) { m_cellId3x3 = cellId3x3; }
00083     void setCellId5x5(const vector<Int_t>& cellId5x5) { m_cellId5x5 = cellId5x5; }
00084     void setClusterId(const Int_t clusterId) { m_clusterId = clusterId; }
00085    void setTRecEmcShower(const TRecEmcShower *emcshower){
00086      m_trackId = emcshower->trackId();
00087      m_numHits = emcshower->numHits();
00088      m_status = emcshower->status();
00089      m_cellId = emcshower->cellId();
00090      m_module = emcshower->module();
00091      m_x = emcshower->x();
00092      m_y = emcshower->y();
00093      m_z = emcshower->z();
00094      m_theta = emcshower->theta();
00095      m_dTheta = emcshower->dtheta();
00096      m_phi = emcshower->phi();
00097      m_dPhi = emcshower->dphi();
00098      m_energy = emcshower->energy();
00099      m_dE = emcshower->dE();
00100      m_eSeed = emcshower->eSeed();
00101      m_e3x3 = emcshower->e3x3();
00102      m_e5x5 = emcshower->e5x5();
00103      m_eall = emcshower->eAll();
00104      m_elepton = emcshower->eLepton();
00105      m_time = emcshower->time();
00106      m_secondMoment = emcshower->secondMoment();
00107      m_latMoment = emcshower->latMoment();
00108      m_a20Moment = emcshower->a20Moment();
00109      m_a42Moment = emcshower->a42Moment();
00110     for(int i=0;i<6;i++){
00111       m_err[i] = emcshower->err(i);
00112     }
00113     m_cellIdMap = emcshower->cellIdMap();
00114     m_cellId3x3 = emcshower->cellId3x3();
00115     m_cellId5x5 = emcshower->cellId5x5();
00116     m_clusterId = emcshower->clusterId();
00117    }
00118   private:
00119     Int_t m_trackId;       //Track Id wensp Add 2005-10-19  
00120     Int_t m_numHits;    // Total number of hits
00121     Int_t m_status;     // Status
00122     Int_t m_cellId;     // Cell ID
00123     Int_t m_module;     // Module
00124     Double_t m_x;       //  Shower coordinates and errors
00125     Double_t m_y;
00126     Double_t m_z;
00127     Double_t m_theta;   // Shower Counter angles and errors
00128     Double_t m_dTheta;
00129     Double_t m_phi;
00130     Double_t m_dPhi;
00131     Double_t m_energy;  // Total energy observed in Emc
00132     Double_t m_dE;      
00133     Double_t m_eSeed; 
00134     Double_t m_e3x3; // Energy of 3x3 crystals, totally 9 ones
00135     Double_t m_e5x5; // Energy of 5x5 crystals, totally 25 ones
00136     Double_t m_eall; // Energy of all crystals in the shower
00137     Double_t m_elepton; // Energy of all various number of crystals
00138     Double_t m_time;  // Time
00139 
00140     Double_t m_secondMoment; //add 2006-07-03
00141     Double_t m_latMoment; // Lateral moment
00142     Double_t m_a20Moment; // Zernike moment
00143     Double_t m_a42Moment; 
00144     Double_t m_err[6]; // Error Matrix: 0:dxx, 1:dyy, 2:dzz
00145                        //               3:dxy, 4:dxz, 5:dyz
00146 
00147     map<Int_t, Double_t> m_cellIdMap; // Hit list and its fraction
00148     vector<Int_t> m_cellId3x3;  // Cell ID 3x3
00149     vector<Int_t> m_cellId5x5;  // Cell ID 5x5
00150     Int_t m_clusterId;  // Cluster ID
00151 
00152     ClassDef(TRecEmcShower,4)
00153 };
00154 
00155 #endif //TrackRootData_TRecEmcShower_H
00156 

Generated on Tue Nov 29 23:11:40 2016 for BOSS_7.0.2 by  doxygen 1.4.7