Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

CalCluster.h

Go to the documentation of this file.
00001 #ifndef CALCLUSTER_H
00002 #define CALCLUSTER_H
00003 
00004 // Root Includes
00005 #include "TObject.h"
00006 #include "TObjArray.h"
00007 #include "TVector3.h"
00008 #include "TVector2.h"
00009 #include "TArrayF.h"
00011 
00013 class CalCluster : public TObject
00014 {
00015 
00016 private:
00018     Float_t  m_Esum;
00019 
00021     Float_t  m_Ecorr;
00022 
00024     Float_t m_Eleak;
00025 
00026     // energy and position for each layer
00028     TArrayF m_eneLayer;
00030     TArrayF m_xposLayer;
00032     TArrayF m_yposLayer;
00033 
00034     //  profile fitting parameters
00036     Float_t  m_CsiAlpha;
00038     Float_t  m_CsiLambda;
00039     
00041     Float_t  m_fitEnergy;
00042     
00044     Float_t  m_ProfChisq;
00045 
00047     Float_t  m_start;
00048 
00049     Int_t m_id;                 // index in Object array?
00050 
00052     TVector3  *m_position;   
00054     TVector3  *m_direction;     
00055   
00057     TObjArray *m_calLogs;       
00058         
00059 public:
00060 
00062         CalCluster (Int_t index=0);
00063     
00065     virtual ~CalCluster();
00066 
00068     void Clean();
00069 
00071     void Create();
00072 
00074     void setEsum (Float_t ene) { m_Esum = ene; };
00075     Float_t getEsum () { return m_Esum; };
00076   
00078     void setEcorr (Float_t ene) { m_Ecorr = ene; };
00079     Float_t getEcorr () { return m_Ecorr; };
00080 
00082     void setEleak (Float_t ene) { m_Eleak = ene; };
00083     Float_t getEleak () { return m_Eleak; };
00084 
00085 
00086 
00088     TVector3* getPosition() { return m_position; };
00089     inline void setPosition(TVector3 *p) { m_position = p; };
00090     inline void setPosition(Double_t x, Double_t y, Double_t z) { m_position->SetXYZ(x,y,z); };
00091 
00093     TVector3* getDirection() { return m_direction; };
00094     inline void setDirection(TVector3 *d) { m_direction = d; };
00095     inline void setDirection(Double_t x, Double_t y, Double_t z) { m_direction->SetXYZ(x,y,z); };
00096 
00098         Float_t getCsiAlpha() { return m_CsiAlpha;}
00099         Float_t getCsiLambda() { return m_CsiLambda;}
00100         Float_t getCsiStart(){ return m_start;}
00101         Float_t getProfChisq(){ return m_ProfChisq;}
00102         Float_t getFitEnergy(){ return m_fitEnergy;}
00103 
00104         void setCsiAlpha(Float_t a){m_CsiAlpha = a;}
00105         void setCsiLambda(Float_t l){m_CsiLambda = l;}
00106         void setCsiStart(Float_t s){m_start = s;}
00107         void setFitEnergy(Float_t e){m_fitEnergy = e;}
00108         void setProfChisq(Float_t c){m_ProfChisq = c;}
00109 
00110         // Access to energy and position in each layer
00111 
00113         const TArrayF& getXLayer() const {return m_xposLayer;}
00115         Float_t getXLayer(int i) {return m_xposLayer[i];}
00117         const TArrayF& getYLayer() const {return m_xposLayer;}
00119         Float_t getYLayer(int i) {return m_yposLayer[i];}
00120 
00122         const TArrayF& getEneLayer() const {return m_eneLayer;}
00124         Float_t getEneLayer(int i) {return m_eneLayer[i];}
00125 
00126         void setEneLayer(int i,Float_t e) {m_eneLayer[i]=e;}
00127         void setXLayer (int i,Float_t x) {m_xposLayer[i]=x;}
00128         void setYLayer (int i,Float_t y) {m_yposLayer[i]=y;}
00129 
00131     TObjArray* getCalLog () { return m_calLogs; };
00132     
00134     Int_t getId() { return m_id; };
00136     void setId(Int_t id) { m_id = id; };
00137 
00138     ClassDef(CalCluster,1)
00139 };
00140 
00141 
00142 #endif 
00143 
00144 

Generated at Wed Nov 21 12:20:18 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000