00001 00002 #ifndef DigiEvent_H 00003 #define DigiEvent_H 00004 00005 #include "TObject.h" 00006 #include "L1T.h" 00007 //#include "Tagger.h" 00008 #include "TClonesArray.h" 00009 #include "TObjArray.h" 00010 00011 #include "AcdHeader.h" 00012 #include "CalHeader.h" 00013 #include "TkrHeader.h" 00014 00015 #include "AcdTile.h" 00016 #include "CalLog.h" 00017 #include "TkrLayer.h" 00018 00019 #include "LiveTime.h" 00020 00031 class DigiEvent: public TObject { 00032 private: 00034 UInt_t m_run; 00036 UInt_t m_eventId; 00037 00039 L1T m_L1T; 00040 00041 //Tagger *m_Tagger; // Tagger object 00042 00044 TClonesArray *m_AcdDigiVec; //-> 00045 Int_t m_numTiles; 00046 static TClonesArray *m_staticAcdDigiVec; 00047 AcdHeader m_AcdHeader; 00048 00050 TClonesArray *m_XgtDigiVec; //-> 00051 Int_t m_numXgts; 00052 static TClonesArray *m_staticXgtDigiVec; 00053 00055 TClonesArray *m_CalDigiVec; //-> 00056 Int_t m_numLogs; 00057 static TClonesArray *m_staticCalDigiVec; 00058 CalHeader m_CalHeader; 00059 00061 static TObjArray *m_staticTkrDigiVec; 00062 TObjArray* m_TkrDigiVec; //-> List of Tracker layers 00063 Int_t m_numLayers; 00064 TkrHeader m_TkrHeader; 00065 00066 00068 LiveTime m_liveTime; 00069 00070 public: 00071 00072 DigiEvent(); 00073 virtual ~DigiEvent(); 00074 00075 void Clean(Option_t *option=""); 00076 00077 00079 inline void setEventId(UInt_t id) { m_eventId = id; }; 00080 inline Int_t getEventId() { return m_eventId; }; 00081 00083 inline void setRunId(UInt_t run) { m_run = run; }; 00084 inline Int_t getRunId() { return m_run; }; 00085 00087 AcdHeader* getAcdHeader() { return &m_AcdHeader; }; 00089 TClonesArray* getAcdDigi() { return m_AcdDigiVec; }; 00091 AcdTile* addAcdTile(UInt_t id, short base=10, short used=1); 00094 const AcdTile* getAcdTile(UInt_t id); 00096 const AcdTile* getAcdTile(short l, short f, short r, short c); 00098 const AcdTile* getAcdTile(AcdId &id); 00099 00101 TClonesArray* getXgtDigi() { return m_XgtDigiVec; }; 00103 AcdTile* addXgt(UInt_t id, short base = 10); 00106 const AcdTile* getXgt(UInt_t id); 00107 00109 CalHeader* getCalHeader() { return &m_CalHeader; }; 00111 TClonesArray* getCalDigi() { return m_CalDigiVec; }; 00113 CalLog* addCalLog(); 00115 const CalLog* getCalLog(LogId &id); 00117 const CalLog* getCalLog(UShort_t tower, UShort_t layer, UShort_t column); 00118 00120 TkrHeader* getTkrHeader() { return &m_TkrHeader; }; 00122 TObjArray* getTkrDigi() { return m_TkrDigiVec; }; 00124 void addTkrLayer(TkrLayer *layer); 00126 const TkrLayer* getTkrLayer(unsigned int layerNum); 00127 00129 inline L1T* getL1T() { return &m_L1T; }; 00130 00131 inline LiveTime* getLiveTime() { return &m_liveTime; }; 00132 00133 // inline void setTagger(Tagger *TaggerVal) { m_Tagger = TaggerVal; }; 00134 //inline Tagger *getTagger() const { return m_Tagger; }; 00135 00136 ClassDef(DigiEvent,3) // Storage for Raw(Digi) event and subsystem data 00137 }; 00138 00139 #endif 00140 00141 00142 00143 00144
1.2.3 written by Dimitri van Heesch,
© 1997-2000