00001 #ifndef __StEEmcElement_h__ 00002 #define __StEEmcElement_h__ 00003 00004 #include <TObject.h> 00005 #include <TString.h> 00006 00007 class StEmcRawHit; 00008 00009 class StEEmcElement : public TObject { 00010 00011 public: 00012 00013 StEEmcElement(); 00014 ~StEEmcElement(){ /* nada */ }; 00015 00017 void raw(Float_t r); 00019 void adc(Float_t a); 00021 void energy(Float_t e); 00023 void stat(unsigned s); 00025 void fail(unsigned f); 00027 void name(const Char_t *n); 00028 00030 Float_t raw(); 00032 Float_t raw() const; 00033 00035 Float_t adc(); 00037 Float_t adc() const; 00038 00040 Float_t energy(); 00042 Float_t energy() const; 00043 00045 unsigned stat(); 00047 unsigned fail(); 00049 const Char_t *name(); 00050 00051 void stemc( StEmcRawHit *h ); 00052 StEmcRawHit *stemc(); 00053 00054 void Clear(Option_t *opts=""); 00055 00056 private: 00057 protected: 00058 00059 Float_t mRaw; // Raw ADC 00060 Float_t mAdc; // Ped subtracted ADC 00061 Float_t mEnergy; // EM energy/energy deposit 00062 unsigned mStat; // detector problems 00063 unsigned mFail; // fatal detector problems 00064 TString mName; // Name of this element 00065 00066 StEmcRawHit *mstRawHit; 00067 00068 ClassDef(StEEmcElement,1); 00069 00070 }; 00071 00072 inline void StEEmcElement::raw(Float_t r){ mRaw=r; } 00073 inline void StEEmcElement::adc(Float_t a){ mAdc=a; } 00074 inline void StEEmcElement::energy(Float_t e){ mEnergy=e; } 00075 inline void StEEmcElement::stat(unsigned s){ mStat=s; } 00076 inline void StEEmcElement::fail(unsigned f){ mFail=f; } 00077 inline void StEEmcElement::name(const Char_t *n){ mName=n; } 00078 00079 inline Float_t StEEmcElement::raw(){ return mRaw; } 00080 inline Float_t StEEmcElement::raw() const { return mRaw; } 00081 00082 inline Float_t StEEmcElement::adc(){ return mAdc; } 00083 inline Float_t StEEmcElement::adc() const { return mAdc; } 00084 00085 inline Float_t StEEmcElement::energy(){ return (mFail)?0.:mEnergy; } 00086 inline Float_t StEEmcElement::energy() const { return (mFail)?0.:mEnergy; } 00087 00088 inline unsigned StEEmcElement::stat(){ return mStat; } 00089 inline unsigned StEEmcElement::fail(){ return mFail; } 00090 inline const Char_t *StEEmcElement::name() { return mName.Data(); } 00091 00092 inline void StEEmcElement::stemc( StEmcRawHit *h ){ mstRawHit=h; } 00093 inline StEmcRawHit *StEEmcElement::stemc(){ return mstRawHit; } 00094 00095 #endif
1.5.9