emcClusterContentv1.h

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