00001 #ifndef ROOT_TBossFullEvent_H 00002 #define ROOT_TBossFullEvent_H 00003 00004 #include "TEvtHeader.h" 00005 #include "TDigiEvent.h" 00006 #include "TDstEvent.h" 00007 #include "TMcEvent.h" 00008 #include "TTrigEvent.h" 00009 #include "THltEvent.h" 00010 #include "TRecTrackEvent.h" 00011 #include "TEvtRecObject.h" 00012 #include "TObject.h" 00013 00014 class TBossFullEvent : public TObject 00015 { 00016 public : 00017 00018 TBossFullEvent(); 00019 virtual ~TBossFullEvent(); 00020 00021 void Print(Option_t *option="") const; 00022 00023 void copy(TBossFullEvent* obj); 00024 00025 void reset() { m_mask = 0; } 00026 00027 void setEvtHeader(TEvtHeader* obj) { 00028 if ( obj != 0 ) { 00029 m_mask |= hasEvtHeader; 00030 m_EvtHeader = obj; 00031 } 00032 } 00033 00034 void setDigiEvent(TDigiEvent* obj) { 00035 if ( obj != 0 ) { 00036 m_mask |= hasDigiEvent; 00037 m_digiEvt = obj; 00038 } 00039 } 00040 00041 void setDstEvent(TDstEvent* obj) { 00042 if ( obj != 0 ) { 00043 m_mask |= hasDstEvent; 00044 m_dstEvt = obj; 00045 } 00046 } 00047 00048 void setMcEvent(TMcEvent* obj) { 00049 if ( obj != 0 ) { 00050 m_mask |= hasMcEvent; 00051 m_mcEvt = obj; 00052 } 00053 } 00054 00055 void setTrigEvent(TTrigEvent* obj) { 00056 if ( obj != 0 ) { 00057 m_mask |= hasTrigEvent; 00058 m_trigEvt = obj; 00059 } 00060 } 00061 00062 void setHltEvent(THltEvent* obj) { 00063 if ( obj != 0 ) { 00064 m_mask |= hasHltEvent; 00065 m_hltEvt = obj; 00066 } 00067 } 00068 00069 void setRecTrackEvent(TRecTrackEvent* obj) { 00070 if ( obj != 0 ) { 00071 m_mask |= hasRecTrackEvent; 00072 m_rectrackEvt = obj; 00073 } 00074 } 00075 00076 void setEvtRecObject(TEvtRecObject* obj) { 00077 if ( obj != 0 ) { 00078 m_mask |= hasEvtRecObject; 00079 m_evtRecObject = obj; 00080 } 00081 } 00082 00083 00084 TEvtHeader *getEvtHeader() { return m_EvtHeader; } 00085 TDigiEvent *getDigiEvent() { return m_digiEvt; } 00086 TDstEvent *getDstEvent() { return m_dstEvt; } 00087 TMcEvent *getMcEvent() { return m_mcEvt; } 00088 TTrigEvent *getTrigEvent() { return m_trigEvt; } 00089 THltEvent *getHltEvent() { return m_hltEvt; } 00090 TRecTrackEvent *getRecTrackEvent() { return m_rectrackEvt; } 00091 TEvtRecObject *getEvtRecObject() { return m_evtRecObject; } 00092 00093 00094 private : 00095 00096 enum { 00097 hasEvtHeader = 1<<0, 00098 hasDigiEvent = 1<<1, 00099 hasDstEvent = 1<<2, 00100 hasMcEvent = 1<<3, 00101 hasTrigEvent = 1<<4, 00102 hasHltEvent = 1<<5, 00103 hasRecTrackEvent = 1<<6, 00104 hasEvtRecObject = 1<<7 00105 }; 00106 00107 UInt_t m_mask; 00108 00109 00110 public : 00111 00112 TEvtHeader *m_EvtHeader; //-> 00113 TDigiEvent *m_digiEvt; //-> 00114 TDstEvent *m_dstEvt; //-> 00115 TMcEvent *m_mcEvt; //-> 00116 TTrigEvent *m_trigEvt; //-> 00117 THltEvent *m_hltEvt; //-> 00118 TRecTrackEvent *m_rectrackEvt; //-> 00119 TEvtRecObject *m_evtRecObject; //-> 00120 00121 00122 private : 00123 00124 ClassDef(TBossFullEvent, 1) 00125 }; 00126 00127 #endif