emcClusterContentv5.h

Go to the documentation of this file.
00001 #ifndef __EMCCLUSTERCONTENTV5_H__
00002 #define __EMCCLUSTERCONTENTV5_H__
00003 
00004 #include "emcClusterContent.h"
00005 
00012 class emcClusterContentv5 : public emcClusterContent
00013 {
00014 public:
00015 
00017   emcClusterContentv5();
00018   emcClusterContentv5(const emcClusterContentv5&);
00019   emcClusterContentv5& operator=(const emcClusterContentv5&);
00020 
00021   emcClusterContentv5* clone(void) const;
00022   emcClusterContentv5* create(void) const;
00023 
00024   virtual ~emcClusterContentv5();
00025   virtual void Clear(Option_t* option="");
00026 
00028 
00029   int arm() const { return fArm; }
00030 
00031   float chi2() const { return fChi2; }
00032 
00033   float corrdispy() const { return fCorrDispy; }
00034   float corrdispz() const { return fCorrDispz; }
00035 
00036   unsigned int cutword() const { return fCutword; }
00037 
00038   unsigned int deadmap() const { return fDeadmap; }
00039   
00040   float dispy() const { return fDispy; }
00041   float dispz() const { return fDispz; }
00042 
00043   float dx() const { return fDx; }  
00044   float dy() const { return fDy; }
00045   float dz() const { return fDz; }
00046   
00047   float e() const { return fE; }
00048   float e9() const { return fE9; }
00049   float ecore() const { return fEcore; }
00050   float ecent() const { return fEcent; }
00051   float etofmin() const { return fEtofmin; }
00052   float etofmax() const { return fEtofmax; }
00053   
00054   int id() const { return fId; }
00055   
00056   void identify(std::ostream& os=std::cout) const;
00057   
00058   int isValid() const;
00059 
00060   int iypos() const { return fIypos; }
00061   int izpos() const { return fIzpos; }
00062   
00063   float quality() const { return fQuality; }
00064   
00065   int multiplicity() const { return fMultiplicity; }
00066   
00067   float padispy() const { return fPadispy; }
00068   float padispz() const { return fPadispz; }
00069   
00070   // index ranges from 0 to multiplicity().
00071   float partesum(int index) const;
00072   
00073   float prob_photon() const { return fProb_photon; }
00074   
00075   float phi() const { return fPhi; }
00076   
00077   int pid() const { return fPid; }
00078   
00079   void print(std::ostream& out=std::cout) const;
00080 
00081   float rawtdc() const { return fRawTDC; }
00082 
00083   bool has_rawtdc() const { return true; }
00084 
00085   int sector() const { return fSector; }
00086   
00087   float simfrac() const { return 0; }
00088 
00089   float tof() const { return fTof; }
00090   float tofhad() const { return fTofHad; }
00091   float tofdisp() const { return fTofdisp; }
00092   float tofmin() const { return fTofmin; }
00093   float tofmax() const { return fTofmax; }
00094  
00095   float tofcorr() const { return fTofcorr; }
00096   float tofcorrmin() const { return fTofcorrmin; }
00097   float tofcorrmax() const { return fTofcorrmax; }
00098   
00099   float theta() const { return fTheta; }
00100   
00101   int towerid(int index) const;
00102   
00103   int type() const { return fType; }
00104   
00105   unsigned int warnmap() const { return fWarnmap; }
00106   
00107   float x() const { return fX; }  
00108   float y() const { return fY; }
00109   float z() const { return fZ; }
00110   
00111   float ycg() const { return fYcg; }
00112   float zcg() const { return fZcg; }
00113 
00114   bool has_yz_cg() const { return true; }
00115   
00116   short emcpc3       () const { return femcpc3        ;}
00117   short emcpc3neartrk() const { return femcpc3neartrk ;}
00118   float emcpc3dz     () const { return femcpc3dz      ;}
00119   float emcpc3dphi   () const { return femcpc3dphi    ;}
00120   short emctrk       () const { return femctrk        ;}
00121   float emctrkdz     () const { return femctrkdz      ;}
00122   float emctrkdphi   () const { return femctrkdphi    ;}
00123   float pemctrk      () const { return fpemctrk       ;}
00124   short emctrkquality() const { return femctrkquality ;}
00125 
00126 
00127 
00128 
00130   
00131   void Reset();
00132 
00133   void set_arm(int arm) { fArm=arm; }
00134   void set_chi2(float chi2) { fChi2=chi2; }
00135   void set_corrdisp(float corrdispy, float corrdispz) { fCorrDispy=corrdispy; fCorrDispz=corrdispz; }
00136   void set_cutword(unsigned int cw) { fCutword=cw; }
00137   void set_disp(float dispy, float dispz) { fDispy=dispy; fDispz=dispz; }
00138   void set_dxyz(float dx, float dy, float dz) { fDx=dx; fDy=dy; fDz=dz; }
00139   void set_e(float e) { fE=e;}
00140   void set_e9(float e9) { fE9=e9;}
00141   void set_ecore(float ecore) { fEcore=ecore; }
00142   void set_ecent(float ecent) { fEcent=ecent; }
00143   void set_etofmin(float etofmin) { fEtofmin=etofmin; }
00144   void set_etofmax(float etofmax) { fEtofmax=etofmax; }
00145   void set_id(int id) { fId=id; }
00146   void set_ipos(int iy, int iz) { fIypos=iy; fIzpos=iz; }
00147   void set_quality(float qual) { fQuality=qual; }
00148   void set_maps(unsigned int dead, unsigned int warn)
00149   { fDeadmap = dead; fWarnmap=warn; }
00150   void set_multiplicity(int mul);
00151   void set_padisp(float padispy, float padispz) 
00152   { fPadispy=padispy; fPadispz=padispz; }
00153   void set_partesum(int index, float value);
00154   void set_prob_photon(float prob) { fProb_photon = prob; }
00155   void set_phi(float phi) { fPhi=phi; }
00156   void set_pid(int pid) { fPid=pid; }
00157   void set_rawtdc(float rtdc) { fRawTDC=rtdc; }
00158   void set_sector(int sector) { fSector=sector; }
00159   void set_tof(float tof) { fTof=tof; }  
00160   void set_tofhad(float tofhad) { fTofHad=tofhad; }
00161   void set_tofdisp(float tofdisp) { fTofdisp=tofdisp; }
00162   void set_tofmin(float tofmin) { fTofmin=tofmin; }
00163   void set_tofmax(float tofmax) { fTofmax=tofmax; }
00164   void set_tofcorr(float tofcorr) { fTofcorr=tofcorr; }
00165   void set_tofcorrmin(float tofcorrmin) { fTofcorrmin=tofcorrmin; }
00166   void set_tofcorrmax(float tofcorrmax) { fTofcorrmax=tofcorrmax; }
00167   void set_theta(float theta) { fTheta=theta;}
00168   void set_towerid(int index, int value);
00169   void set_type(int type) { fType=type; }
00170   void set_xyz(float x, float y, float z) { fX=x; fY=y; fZ=z; }
00171   void set_yz_cg(float ycg, float zcg) { fYcg=ycg; fZcg=zcg; }
00172   void set_emcpc3       (short val) {femcpc3       = val;}
00173   void set_emcpc3neartrk(short val) {femcpc3neartrk= val;}
00174   void set_emcpc3dz     (float val) {femcpc3dz     = val;}
00175   void set_emcpc3dphi   (float val) {femcpc3dphi   = val;}
00176   void set_emctrk       (short val) {femctrk       = val;}
00177   void set_emctrkdz     (float val) {femctrkdz     = val;}
00178   void set_emctrkdphi   (float val) {femctrkdphi   = val;}
00179   void set_pemctrk      (float val) {fpemctrk      = val;}
00180   void set_emctrkquality(short val) {femctrkquality= val;}
00181 
00182 private:
00183 
00184   void copy(emcClusterContentv5& to) const;
00185 
00186 private:
00187 
00188   unsigned int fDeadmap;
00189   unsigned int fWarnmap;
00190   unsigned int fCutword;
00191 
00192   int fArm;
00193   int fId;
00194   int fMultiplicity;
00195   int fPid;
00196   int fSector;
00197   int fIypos;
00198   int fIzpos;
00199   int fType; 
00200 
00201   float fX;
00202   float fY;
00203   float fZ;
00204   float fDx;
00205   float fDy;
00206   float fDz;
00207   float fDispy;
00208   float fDispz;
00209   float fE;
00210   float fE9;
00211   float fEcent;
00212   float fEcore;
00213   float fEtofmin;
00214   float fEtofmax;
00215   float fChi2;
00216   float fQuality;
00217   float fPadispy;
00218   float fPadispz;
00219   float fProb_photon;
00220   float fPhi;
00221   float fTof;
00222   float fTofdisp;
00223   float fTofmin;
00224   float fTofmax;
00225   float fTofcorr;
00226   float fTofcorrmin;
00227   float fTofcorrmax;
00228   float fTheta;
00229   float fYcg;
00230   float fZcg;
00231   float fCorrDispy;
00232   float fCorrDispz;
00233   float fTofHad;
00234   short femcpc3  ;
00235   short femcpc3neartrk   ;
00236   float femcpc3dz        ;
00237   float femcpc3dphi      ;
00238   short femctrk  ;
00239   float femctrkdz        ;
00240   float femctrkdphi      ;
00241   float fpemctrk ;
00242   short femctrkquality   ;
00243   float fRawTDC;
00244 
00245   int* fTowerid; //[fMultiplicity]
00246 
00247   float* fPartesum; //[fMultiplicity]
00248 
00249   ClassDef(emcClusterContentv5,1) // EMCAL Cluster content version 5
00250 };
00251 
00252 #endif
00253 
00254 
00255 
00256 
00257 
00258 
00259 
00260 
00261 
00262 
00263 
00264 
00265 
00266