00001 #ifndef ROOT_TDigiEvent_H 00002 #define ROOT_TDigiEvent_H 00003 00004 #include "TObject.h" 00005 #include "TClonesArray.h" 00006 #include "TObjArray.h" 00007 00008 #include "TMdcDigi.h" 00009 #include "TEmcDigi.h" 00010 #include "TTofDigi.h" 00011 #include "TMucDigi.h" 00012 #include "TLumiDigi.h" 00013 00014 class TDigiEvent: public TObject { 00015 public: 00016 00017 TDigiEvent(); 00018 virtual ~TDigiEvent(); 00019 00020 void initialize( Bool_t fromMc=true); 00021 00022 void Clear(Option_t *option=""); 00023 00024 void Print(Option_t *option="") const; 00025 00026 00027 inline Bool_t getFromMc() { return m_fromMc; }; 00028 00029 00031 const TObjArray* getMdcDigiCol() const { return m_mdcDigiCol; }; 00032 00034 void addMdcDigi(TMdcDigi *digi); 00035 00037 const TMdcDigi* getMdcDigi(Int_t i) const; 00038 00040 void clearMdcDigiCol() { m_mdcDigiCol->Clear(); } 00041 00042 00044 const TObjArray* getEmcDigiCol() const { return m_emcDigiCol; }; 00045 00047 void addEmcDigi(TEmcDigi *digi); 00048 00050 const TEmcDigi* getEmcDigi(Int_t i) const; 00051 00053 void clearEmcDigiCol() { m_emcDigiCol->Clear(); } 00054 00056 const TObjArray* getTofDigiCol() const { return m_tofDigiCol; }; 00057 00059 void addTofDigi(TTofDigi * digi); 00060 00062 const TTofDigi* getTofDigi(Int_t i) const; 00063 00065 void clearTofDigiCol() { m_tofDigiCol->Clear();} 00066 00068 const TObjArray* getMucDigiCol() const { return m_mucDigiCol; }; 00069 00071 void addMucDigi(TMucDigi * digi); 00072 00074 const TMucDigi* getMucDigi(Int_t i) const; 00075 00077 void clearMucDigiCol() { m_mucDigiCol->Clear();} 00078 00080 const TObjArray* getLumiDigiCol() const { return m_lumiDigiCol; }; 00081 00083 void addLumiDigi(TLumiDigi * digi); 00084 00086 const TLumiDigi* getLumiDigi(Int_t i) const; 00087 00089 void clearLumiDigiCol() { m_lumiDigiCol->Clear();} 00090 00091 private: 00092 00093 00095 Bool_t m_fromMc; 00096 00098 static TObjArray *s_staticMdcDigiCol; 00099 TObjArray* m_mdcDigiCol; //-> 00100 00102 static TObjArray *s_staticEmcDigiCol; 00103 TObjArray* m_emcDigiCol; //-> 00104 00106 static TObjArray * s_staticTofDigiCol; 00107 TObjArray* m_tofDigiCol; //-> 00108 00110 static TObjArray * s_staticMucDigiCol; 00111 TObjArray* m_mucDigiCol; //-> 00112 00114 static TObjArray * s_staticLumiDigiCol; 00115 TObjArray* m_lumiDigiCol; //-> 00116 00117 00118 ClassDef(TDigiEvent,5) // Storage for Raw(Digi) event and subsystem data 00119 }; 00120 00121 #endif