00001 00002 // Class TMarEvent 00003 // 00004 // Author : F. Cassol Brunner 00005 // Author : F. Cassol Brunner 00006 // Created : 28/11/2003 00007 // Last update: 00008 // by: 00009 // Comment: Example of personal Event class (derived from TMarEvent) 00011 00013 00014 #ifndef __TMYEVENT 00015 #include "Marana/TMyEvent.h" 00016 #endif 00017 00018 00019 // Import class 00020 ClassImp(TMyEvent) 00021 00022 TMyEvent::TMyEvent(const TRun *run) : TMarEvent(run) 00023 { 00024 00025 //... initialize your variables 00026 00027 //... clear event variables 00028 Clear(); 00029 00030 } 00031 00032 00033 00034 00035 // Standard destructor 00036 TMyEvent::~TMyEvent() 00037 { 00038 00039 // Delete your own object objects 00040 00041 00042 }; 00043 00044 void TMyEvent::SelectParticles() 00045 { 00046 00047 00048 //...define electrons and photons 00049 if(find_ElePho)FindElePho(); 00050 00051 //...define muons 00052 if(find_Muon)FindMuon(); 00053 00054 //...define Jets 00055 if(find_Jet)FindJet(); 00056 00057 //...define neutral particles 00058 if(find_NP)FindNP(); 00059 00060 } 00061 00062 00063 00064 Bool_t TMyEvent::FillFromMods() 00065 { 00066 //... you can call the original FillFromMods() 00067 TMarEvent::FillFromMods(); 00068 00069 //... and then add your own filling 00070 00071 return kTRUE; 00072 } 00073 00074 00075 Bool_t TMyEvent::FillFromHat() 00076 { 00077 //... you can call the original FillFromMods() 00078 TMarEvent::FillFromHat(); 00079 00080 //... and then add your own filling 00081 00082 return(kTRUE); 00083 } 00084 00085 Int_t TMyEvent::FindElePho() 00086 { 00087 00088 00089 return(kTRUE); 00090 00091 00092 } 00093 00094 Int_t TMyEvent::FindMuon() 00095 { 00096 00097 00098 return(0); 00099 00100 } 00101 00102 00103 Int_t TMyEvent::FindNP() 00104 { 00105 00106 return(kTRUE); 00107 00108 } 00109 00110 00111 Int_t TMyEvent::FindJet() 00112 { 00113 00114 00115 00116 return(kTRUE); 00117 00118 } 00119 00120 00121 00122 00123 Bool_t TMyEvent::Next() 00124 { 00125 00126 //... first call the TMarEvent::Next() function 00127 00128 if(!TMarEvent::Next()){ 00129 cout << "--> TMyEvent::Next : TMarEvent::Next() is false" <<endl; 00130 return false; 00131 } 00132 00133 //... then add you own code 00134 return(kTRUE); 00135 00136 00137 } 00138 00139 void TMyEvent::Clear() 00140 { 00141 //... first call the TMarEvent::Clear() 00142 TMarEvent::Clear(); 00143 00144 //... then clear your own variables 00145 00146 } 00147 00148 00149 00150 00151 00152