00001 #ifndef __emcClusterContentv3_h__
00002 #define __emcClusterContentv3_h__
00003
00004 #include "emcClusterContent.h"
00005
00008 class emcClusterContentv3 : public emcClusterContent
00009 {
00010 public:
00011
00013 emcClusterContentv3();
00014 emcClusterContentv3(const emcClusterContentv3&);
00015 emcClusterContentv3& operator=(const emcClusterContentv3&);
00016
00017 emcClusterContentv3* clone(void) const;
00018 emcClusterContentv3* create(void) const;
00019
00020 virtual ~emcClusterContentv3();
00021 virtual void Clear(Option_t* option="");
00022
00024
00025 int arm() const { return fArm; }
00026
00027 float chi2() const { return fChi2; }
00028
00029 float corrdispy() const { return fCorrDispy; }
00030 float corrdispz() const { return fCorrDispz; }
00031
00032 unsigned int cutword() const { return fCutword; }
00033
00034 unsigned int deadmap() const { return fDeadmap; }
00035
00036 float dispy() const { return fDispy; }
00037 float dispz() const { return fDispz; }
00038
00039 float dx() const { return fDx; }
00040 float dy() const { return fDy; }
00041 float dz() const { return fDz; }
00042
00043 float e() const { return fE; }
00044 float e9() const { return fE9; }
00045 float ecore() const { return fEcore; }
00046 float ecent() const { return fEcent; }
00047 float etofmin() const { return fEtofmin; }
00048 float etofmax() const { return fEtofmax; }
00049
00050 int id() const { return fId; }
00051
00052 void identify(std::ostream& os=std::cout) const;
00053
00054 int isValid() const;
00055
00056 int iypos() const { return fIypos; }
00057 int izpos() const { return fIzpos; }
00058
00059 float quality() const { return fQuality; }
00060
00061 int multiplicity() const { return fMultiplicity; }
00062
00063 float padispy() const { return fPadispy; }
00064 float padispz() const { return fPadispz; }
00065
00066
00067 float partesum(int index) const;
00068
00069 float prob_photon() const { return fProb_photon; }
00070
00071 float phi() const { return fPhi; }
00072
00073 int pid() const { return fPid; }
00074
00075 void print(std::ostream& out=std::cout) const;
00076
00077 int sector() const { return fSector; }
00078
00079 float simfrac() const { return 0; }
00080
00081 float tof() const { return fTof; }
00082 float tofhad() const { return fTofHad; }
00083 float tofdisp() const { return fTofdisp; }
00084 float tofmin() const { return fTofmin; }
00085 float tofmax() const { return fTofmax; }
00086
00087 float tofcorr() const { return fTofcorr; }
00088 float tofcorrmin() const { return fTofcorrmin; }
00089 float tofcorrmax() const { return fTofcorrmax; }
00090
00091 float theta() const { return fTheta; }
00092
00093 int towerid(int index) const;
00094
00095 int type() const { return fType; }
00096
00097 unsigned int warnmap() const { return fWarnmap; }
00098
00099 float x() const { return fX; }
00100 float y() const { return fY; }
00101 float z() const { return fZ; }
00102
00103 float ycg() const { return fYcg; }
00104 float zcg() const { return fZcg; }
00105
00106 bool has_yz_cg() const { return true; }
00107
00109
00110 void Reset();
00111
00112 void set_arm(int arm) { fArm=arm; }
00113 void set_chi2(float chi2) { fChi2=chi2; }
00114 void set_corrdisp(float corrdispy, float corrdispz) { fCorrDispy=corrdispy; fCorrDispz=corrdispz; }
00115 void set_cutword(unsigned int cw) { fCutword=cw; }
00116 void set_disp(float dispy, float dispz) { fDispy=dispy; fDispz=dispz; }
00117 void set_dxyz(float dx, float dy, float dz) { fDx=dx; fDy=dy; fDz=dz; }
00118 void set_e(float e) { fE=e;}
00119 void set_e9(float e9) { fE9=e9;}
00120 void set_ecore(float ecore) { fEcore=ecore; }
00121 void set_ecent(float ecent) { fEcent=ecent; }
00122 void set_etofmin(float etofmin) { fEtofmin=etofmin; }
00123 void set_etofmax(float etofmax) { fEtofmax=etofmax; }
00124 void set_id(int id) { fId=id; }
00125 void set_ipos(int iy, int iz) { fIypos=iy; fIzpos=iz; }
00126 void set_quality(float qual) { fQuality=qual; }
00127 void set_maps(unsigned int dead, unsigned int warn)
00128 { fDeadmap = dead; fWarnmap=warn; }
00129 void set_multiplicity(int mul);
00130 void set_padisp(float padispy, float padispz)
00131 { fPadispy=padispy; fPadispz=padispz; }
00132 void set_partesum(int index, float value);
00133 void set_prob_photon(float prob) { fProb_photon = prob; }
00134 void set_phi(float phi) { fPhi=phi; }
00135 void set_pid(int pid) { fPid=pid; }
00136 void set_sector(int sector) { fSector=sector; }
00137 void set_tof(float tof) { fTof=tof; }
00138 void set_tofhad(float tofhad) { fTofHad=tofhad; }
00139 void set_tofdisp(float tofdisp) { fTofdisp=tofdisp; }
00140 void set_tofmin(float tofmin) { fTofmin=tofmin; }
00141 void set_tofmax(float tofmax) { fTofmax=tofmax; }
00142 void set_tofcorr(float tofcorr) { fTofcorr=tofcorr; }
00143 void set_tofcorrmin(float tofcorrmin) { fTofcorrmin=tofcorrmin; }
00144 void set_tofcorrmax(float tofcorrmax) { fTofcorrmax=tofcorrmax; }
00145 void set_theta(float theta) { fTheta=theta;}
00146 void set_towerid(int index, int value);
00147 void set_type(int type) { fType=type; }
00148 void set_xyz(float x, float y, float z) { fX=x; fY=y; fZ=z; }
00149 void set_yz_cg(float ycg, float zcg) { fYcg=ycg; fZcg=zcg; }
00150
00151 private:
00152
00153 void copy(emcClusterContentv3& to) const;
00154
00155 private:
00156
00157 unsigned int fDeadmap;
00158 unsigned int fWarnmap;
00159 unsigned int fCutword;
00160
00161 int fArm;
00162 int fId;
00163 int fMultiplicity;
00164 int fPid;
00165 int fSector;
00166 int fIypos;
00167 int fIzpos;
00168 int fType;
00169
00170 float fX;
00171 float fY;
00172 float fZ;
00173 float fDx;
00174 float fDy;
00175 float fDz;
00176 float fDispy;
00177 float fDispz;
00178 float fE;
00179 float fE9;
00180 float fEcent;
00181 float fEcore;
00182 float fEtofmin;
00183 float fEtofmax;
00184 float fChi2;
00185 float fQuality;
00186 float fPadispy;
00187 float fPadispz;
00188 float fProb_photon;
00189 float fPhi;
00190 float fTof;
00191 float fTofdisp;
00192 float fTofmin;
00193 float fTofmax;
00194 float fTofcorr;
00195 float fTofcorrmin;
00196 float fTofcorrmax;
00197 float fTheta;
00198 float fYcg;
00199 float fZcg;
00200 float fCorrDispy;
00201 float fCorrDispz;
00202 float fTofHad;
00203
00204 int* fTowerid;
00205
00206 float* fPartesum;
00207
00208 ClassDef(emcClusterContentv3,1)
00209 };
00210
00211 #endif