/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Event/RootEventData/RootEventData-00-03-80/src/TRecTrackEvent.cxx

Go to the documentation of this file.
00001 #include "RootEventData/TRecTrackEvent.h"
00002 #include "TCollection.h"  // Declares TIter
00003 
00004 ClassImp(TRecTrackEvent)
00005 
00006 // Allocate the TObjArray just once
00007 
00008 TObjArray *TRecTrackEvent::s_staticRecMdcTrackCol = 0;
00009 TObjArray *TRecTrackEvent::s_staticRecMdcHitCol = 0;
00010 TObjArray *TRecTrackEvent::s_staticTofTrackCol = 0;
00011 TObjArray *TRecTrackEvent::s_staticEmcHitCol = 0;
00012 TObjArray *TRecTrackEvent::s_staticEmcClusterCol = 0;
00013 TObjArray *TRecTrackEvent::s_staticEmcShowerCol = 0;
00014 TObjArray *TRecTrackEvent::s_staticMucTrackCol = 0;
00015 TObjArray *TRecTrackEvent::s_staticRecMdcDedxCol = 0;
00016 TObjArray *TRecTrackEvent::s_staticRecMdcDedxHitCol = 0;
00017 TObjArray *TRecTrackEvent::s_staticExtTrackCol = 0;
00018 TObjArray *TRecTrackEvent::s_staticRecMdcKalTrackCol = 0;
00019 TObjArray *TRecTrackEvent::s_staticRecMdcKalHelixSegCol = 0;
00020 TObjArray *TRecTrackEvent::s_staticEvTimeCol = 0;
00021 TObjArray *TRecTrackEvent::s_staticRecZddChannelCol = 0;
00022 
00023 //***************************************************************
00024 TRecTrackEvent::TRecTrackEvent() 
00025 {
00026    //Dst Track
00027      //Rec Track 
00028      if (!s_staticRecMdcTrackCol) {
00029             s_staticRecMdcTrackCol = new TObjArray();
00030      }
00031      m_recMdcTrackCol = s_staticRecMdcTrackCol;
00032 
00033      if (!s_staticRecMdcHitCol) {
00034        s_staticRecMdcHitCol = new TObjArray(); 
00035      }
00036      m_recMdcHitCol = s_staticRecMdcHitCol;
00037 
00038 
00039      if (! s_staticTofTrackCol ){
00040        s_staticTofTrackCol = new TObjArray();
00041      }
00042      m_recTofTrackCol = s_staticTofTrackCol;
00043 
00044      if (!s_staticEmcHitCol ){
00045             s_staticEmcHitCol = new TObjArray();
00046      }
00047      m_recEmcHitCol = s_staticEmcHitCol;
00048 
00049      if (!s_staticEmcClusterCol ){
00050             s_staticEmcClusterCol = new TObjArray();
00051      }
00052      m_recEmcClusterCol = s_staticEmcClusterCol;
00053    
00054      if (!s_staticEmcShowerCol ){
00055             s_staticEmcShowerCol = new TObjArray();
00056      }
00057      m_recEmcShowerCol = s_staticEmcShowerCol;
00058    
00059      
00060     if (! s_staticMucTrackCol ){
00061            s_staticMucTrackCol = new TObjArray();
00062      }
00063      m_recMucTrackCol = s_staticMucTrackCol;
00064 
00065      if (! s_staticRecMdcDedxCol ){
00066        s_staticRecMdcDedxCol = new TObjArray();
00067      }
00068      m_recMdcDedxCol = s_staticRecMdcDedxCol;
00069 
00070      if (! s_staticRecMdcDedxHitCol ){
00071        s_staticRecMdcDedxHitCol = new TObjArray();
00072      }
00073      m_recMdcDedxHitCol = s_staticRecMdcDedxHitCol;
00074 
00075 
00076      if (! s_staticExtTrackCol ){
00077             s_staticExtTrackCol = new TObjArray();
00078       }
00079       m_recExtTrackCol = s_staticExtTrackCol;
00080      
00081     
00082      if (! s_staticRecMdcKalTrackCol ){
00083            s_staticRecMdcKalTrackCol = new TObjArray();
00084      }
00085      m_recMdcKalTrackCol = s_staticRecMdcKalTrackCol;
00086 
00087      if (! s_staticRecMdcKalHelixSegCol ){
00088            s_staticRecMdcKalHelixSegCol = new TObjArray();
00089      }
00090      m_recMdcKalHelixSegCol = s_staticRecMdcKalHelixSegCol;
00091 
00092      if(! s_staticEvTimeCol ){
00093           s_staticEvTimeCol = new TObjArray();
00094      }
00095      m_recEvTimeCol = s_staticEvTimeCol;
00096 
00097      if ( ! s_staticRecZddChannelCol ) {
00098          s_staticRecZddChannelCol = new TObjArray();
00099      }
00100      m_recZddChannelCol = s_staticRecZddChannelCol;
00101 
00102      Clear();
00103     
00104 }
00105 
00106 //*****************************************************************
00107 TRecTrackEvent::~TRecTrackEvent() {
00108         
00109         /****************************    Dst Track *************************/
00110     if(m_recMdcTrackCol == s_staticRecMdcTrackCol) s_staticRecMdcTrackCol = 0;
00111      m_recMdcTrackCol->Delete();
00112      delete m_recMdcTrackCol;
00113      m_recMdcTrackCol = 0;
00114 
00115     if(m_recMdcHitCol == s_staticRecMdcHitCol) s_staticRecMdcHitCol = 0;
00116      m_recMdcHitCol->Delete();
00117      delete m_recMdcHitCol;
00118      m_recMdcHitCol = 0;
00119 
00120      if(m_recTofTrackCol == s_staticTofTrackCol ) s_staticTofTrackCol = 0;
00121      m_recTofTrackCol->Delete();
00122      delete m_recTofTrackCol;
00123      m_recTofTrackCol = 0;
00124 
00125      if(m_recEmcHitCol == s_staticEmcHitCol) s_staticEmcHitCol = 0;
00126      m_recEmcHitCol->Delete();
00127      delete m_recEmcHitCol;
00128      m_recEmcHitCol = 0;
00129 
00130      if(m_recEmcClusterCol == s_staticEmcClusterCol) s_staticEmcClusterCol = 0;
00131      m_recEmcClusterCol->Delete();
00132      delete m_recEmcClusterCol;
00133      m_recEmcClusterCol = 0;
00134 
00135      if(m_recEmcShowerCol == s_staticEmcShowerCol) s_staticEmcShowerCol = 0;
00136      m_recEmcShowerCol->Delete();
00137      delete m_recEmcShowerCol;
00138      m_recEmcShowerCol = 0;
00139 
00140 
00141      if(m_recMucTrackCol == s_staticMucTrackCol ) s_staticMucTrackCol = 0;
00142      m_recMucTrackCol->Delete();
00143      delete m_recMucTrackCol;
00144      m_recMucTrackCol = 0;
00145 
00146      if(m_recMdcDedxCol == s_staticRecMdcDedxCol ) s_staticRecMdcDedxCol = 0;
00147      m_recMdcDedxCol->Delete();
00148      delete m_recMdcDedxCol;
00149      m_recMdcDedxCol = 0;
00150 
00151      if(m_recMdcDedxHitCol == s_staticRecMdcDedxHitCol ) s_staticRecMdcDedxHitCol = 0;
00152      m_recMdcDedxHitCol->Delete();
00153      delete m_recMdcDedxHitCol;
00154      m_recMdcDedxHitCol = 0;
00155 
00156 
00157      if(m_recExtTrackCol == s_staticExtTrackCol ) s_staticExtTrackCol = 0;
00158      m_recExtTrackCol->Delete();
00159      delete m_recExtTrackCol;
00160      m_recExtTrackCol = 0;
00161     
00162     if(m_recMdcKalTrackCol == s_staticRecMdcKalTrackCol ) s_staticRecMdcKalTrackCol = 0;
00163     m_recMdcKalTrackCol->Delete();
00164     delete m_recMdcKalTrackCol;
00165     m_recMdcKalTrackCol = 0;
00166 
00167     if(m_recMdcKalHelixSegCol == s_staticRecMdcKalHelixSegCol ) s_staticRecMdcKalHelixSegCol = 0;
00168     m_recMdcKalHelixSegCol->Delete();
00169     delete m_recMdcKalHelixSegCol;
00170     m_recMdcKalHelixSegCol = 0;
00171 
00172     if(m_recEvTimeCol == s_staticEvTimeCol ) s_staticEvTimeCol = 0;
00173     m_recEvTimeCol->Delete();
00174     delete m_recEvTimeCol;
00175     m_recEvTimeCol = 0; 
00176 
00177     if ( m_recZddChannelCol == s_staticRecZddChannelCol ) s_staticRecZddChannelCol = 0;
00178     m_recZddChannelCol->Delete();
00179     delete m_recZddChannelCol;
00180     m_recZddChannelCol = 0;
00181 }
00182 
00183 //*****************************************************************
00184 void TRecTrackEvent::initialize(){ 
00185 }
00186   
00187 //*****************************************************************
00188 void TRecTrackEvent::Clear(Option_t *option) {
00189 
00190 }
00191 
00192 //*****************************************************************************
00193 void TRecTrackEvent::Print(Option_t *option) const {
00194     TObject::Print(option);
00195 }
00196 
00197 
00198 /****************     Dst Track     ************************/
00200  void TRecTrackEvent::addRecMdcTrack(TRecMdcTrack *Track) {
00201      m_recMdcTrackCol->Add(Track);
00202  }
00203 
00204  const TRecMdcTrack* TRecTrackEvent::getRecMdcTrack(Int_t i) const {
00205      if (Int_t(i) >= m_recMdcTrackCol->GetEntries())
00206             return 0;
00207      return (TRecMdcTrack*)m_recMdcTrackCol->At(i);
00208  }
00209 
00210  void TRecTrackEvent::addRecMdcHit(TRecMdcHit *Hit) {
00211      m_recMdcHitCol->Add(Hit);
00212  }
00213 
00214  const TRecMdcHit* TRecTrackEvent::getRecMdcHit(Int_t i) const {
00215      if (Int_t(i) >= m_recMdcHitCol->GetEntries())
00216             return 0;
00217      return (TRecMdcHit*)m_recMdcHitCol->At(i);
00218  }
00219 
00221 void  TRecTrackEvent::addTofTrack(TRecTofTrack * Track){
00222   m_recTofTrackCol->Add(Track);
00223 }
00224 
00225 const TRecTofTrack*  TRecTrackEvent::getTofTrack(Int_t i) const {
00226   if(Int_t(i) >=m_recTofTrackCol->GetEntries())
00227     return 0;
00228   return (TRecTofTrack*) m_recTofTrackCol->At(i);
00229 }
00230 
00232  void TRecTrackEvent::addEmcHit(TRecEmcHit * Track) {
00233      m_recEmcHitCol->Add(Track);
00234  }
00235 
00236  const TRecEmcHit* TRecTrackEvent::getEmcHit( Int_t i) const {
00237      if(Int_t(i) >= m_recEmcHitCol->GetEntries())
00238            return 0;
00239      return (TRecEmcHit*)m_recEmcHitCol->At(i);
00240  }
00241 
00242  void TRecTrackEvent::addEmcCluster(TRecEmcCluster * Track) {
00243      m_recEmcClusterCol->Add(Track);
00244  }
00245 
00246  const TRecEmcCluster* TRecTrackEvent::getEmcCluster( Int_t i) const {
00247      if(Int_t(i) >= m_recEmcClusterCol->GetEntries())
00248            return 0;
00249      return (TRecEmcCluster*)m_recEmcClusterCol->At(i);
00250  }
00251 
00252  void TRecTrackEvent::addEmcShower(TRecEmcShower * Track) {
00253      m_recEmcShowerCol->Add(Track);
00254  }
00255 
00256  const TRecEmcShower* TRecTrackEvent::getEmcShower( Int_t i) const {
00257      if(Int_t(i) >= m_recEmcShowerCol->GetEntries())
00258            return 0;
00259      return (TRecEmcShower*)m_recEmcShowerCol->At(i);
00260  }
00261 
00263 void  TRecTrackEvent::addMucTrack(TRecMucTrack * Track){
00264     m_recMucTrackCol->Add(Track);
00265 }
00266 
00267 
00268 const TRecMucTrack*  TRecTrackEvent::getMucTrack(Int_t i) const {
00269         if(Int_t(i) >=m_recMucTrackCol->GetEntries())
00270                 return 0;
00271         return (TRecMucTrack*) m_recMucTrackCol->At(i);
00272 }
00273 
00275  void  TRecTrackEvent::addRecMdcDedx(TRecMdcDedx * Track){
00276      m_recMdcDedxCol->Add(Track);
00277  }
00278 
00279 
00280  const TRecMdcDedx*  TRecTrackEvent::getRecMdcDedx(Int_t i) const {
00281         if(Int_t(i) >=m_recMdcDedxCol->GetEntries())
00282                 return 0;
00283         return (TRecMdcDedx*) m_recMdcDedxCol->At(i);
00284  }
00285 
00286 
00287 void  TRecTrackEvent::addRecMdcDedxHit(TRecMdcDedxHit * Track){
00288   m_recMdcDedxHitCol->Add(Track);
00289 }
00290 
00291 
00292  const TRecMdcDedxHit*  TRecTrackEvent::getRecMdcDedxHit(Int_t i) const {
00293    if(Int_t(i) >=m_recMdcDedxHitCol->GetEntries())
00294      return 0;
00295    return (TRecMdcDedxHit*) m_recMdcDedxHitCol->At(i);
00296  }
00297 
00298 // // Ext
00299  void  TRecTrackEvent::addExtTrack(TRecExtTrack * Track){
00300      m_recExtTrackCol->Add(Track);
00301  }
00302 
00303  const TRecExtTrack*  TRecTrackEvent::getExtTrack(Int_t i) const {
00304          if(Int_t(i) >=m_recExtTrackCol->GetEntries())
00305                return 0;
00306        return (TRecExtTrack*) m_recExtTrackCol->At(i);
00307  }
00308 
00309 //RecMdcKal
00310 void  TRecTrackEvent::addRecMdcKalTrack(TRecMdcKalTrack * Track){
00311     m_recMdcKalTrackCol->Add(Track);
00312 }
00313 
00314 const TRecMdcKalTrack*  TRecTrackEvent::getRecMdcKalTrack(Int_t i) const {
00315      if(Int_t(i) >=m_recMdcKalTrackCol->GetEntries())
00316         return 0;
00317      return (TRecMdcKalTrack*) m_recMdcKalTrackCol->At(i);
00318 }
00319 
00320 void TRecTrackEvent::addRecMdcKalHelixSeg(TRecMdcKalHelixSeg * Track){
00321     m_recMdcKalHelixSegCol->Add(Track);
00322 }
00323 
00324 const TRecMdcKalHelixSeg* TRecTrackEvent::getRecMdcKalHelixSeg(Int_t i) const {
00325         if(Int_t(i) >= m_recMdcKalHelixSegCol->GetEntries())
00326                 return 0;
00327         return ( TRecMdcKalHelixSeg*) m_recMdcKalHelixSegCol->At(i);
00328 }
00329 
00330 //EsTime
00331 void  TRecTrackEvent::addEvTime(TRecEvTime * Track){
00332     m_recEvTimeCol->Add(Track);
00333 }
00334 
00335 const TRecEvTime*  TRecTrackEvent::getEvTime(Int_t i) const {
00336      if(Int_t(i) >=m_recEvTimeCol->GetEntries())
00337         return 0;
00338      return (TRecEvTime*) m_recEvTimeCol->At(i);
00339 }
00340 
00341 // ZDD
00342 void TRecTrackEvent::addRecZddChannel(TRecZddChannel* zdd) {
00343   m_recZddChannelCol->Add(zdd);
00344 }
00345 
00346 const TRecZddChannel* TRecTrackEvent::getRecZddChannel(Int_t i) const {
00347   if ( i >= m_recZddChannelCol->GetEntries() || i < 0 )
00348      return 0;
00349   return (TRecZddChannel*) m_recZddChannelCol->At(i);
00350 }

Generated on Tue Nov 29 23:11:41 2016 for BOSS_7.0.2 by  doxygen 1.4.7