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

Go to the documentation of this file.
00001 #include "RootEventData/TDstEvent.h"
00002 #include "TCollection.h"  // Declares TIter
00003 
00004 ClassImp(TDstEvent)
00005 
00006 // Allocate the TObjArray just once
00007 
00008 TObjArray *TDstEvent::s_staticMdcTrackCol = 0;
00009 TObjArray *TDstEvent::s_staticEmcTrackCol = 0;
00010 TObjArray *TDstEvent::s_staticTofTrackCol = 0;
00011 TObjArray *TDstEvent::s_staticMucTrackCol = 0;
00012 TObjArray *TDstEvent::s_staticMdcDedxCol = 0;
00013 TObjArray *TDstEvent::s_staticExtTrackCol = 0;
00014 TObjArray *TDstEvent::s_staticMdcKalTrackCol = 0;
00015 
00016 //***************************************************************
00017 TDstEvent::TDstEvent() 
00018 {
00019                 //Dst Track
00020 
00021     if (!s_staticMdcTrackCol) {
00022             s_staticMdcTrackCol = new TObjArray();
00023     }
00024     m_mdcTrackCol = s_staticMdcTrackCol;
00025 
00026     if (!s_staticEmcTrackCol ){
00027             s_staticEmcTrackCol = new TObjArray();
00028     }
00029     m_emcTrackCol = s_staticEmcTrackCol;
00030    
00031     if (! s_staticTofTrackCol ){
00032            s_staticTofTrackCol = new TObjArray();
00033      }
00034      m_tofTrackCol = s_staticTofTrackCol;
00035      
00036     if (! s_staticMucTrackCol ){
00037            s_staticMucTrackCol = new TObjArray();
00038      }
00039      m_mucTrackCol = s_staticMucTrackCol;
00040 
00041     if (! s_staticMdcDedxCol ){
00042            s_staticMdcDedxCol = new TObjArray();
00043      }
00044      m_mdcDedxCol = s_staticMdcDedxCol;
00045 
00046     if (! s_staticExtTrackCol ){
00047            s_staticExtTrackCol = new TObjArray();
00048      }
00049      m_extTrackCol = s_staticExtTrackCol;
00050      
00051     
00052      if (! s_staticMdcKalTrackCol ){
00053            s_staticMdcKalTrackCol = new TObjArray();
00054      }
00055      m_mdcKalTrackCol = s_staticMdcKalTrackCol;
00056     
00057      Clear();
00058     
00059 }
00060 
00061 //*****************************************************************
00062 TDstEvent::~TDstEvent() {
00063         
00064         /****************************    Dst Track *************************/
00065    if(m_mdcTrackCol == s_staticMdcTrackCol) s_staticMdcTrackCol = 0;
00066     m_mdcTrackCol->Delete();
00067     delete m_mdcTrackCol;
00068     m_mdcTrackCol = 0;
00069 
00070     if(m_emcTrackCol == s_staticEmcTrackCol) s_staticEmcTrackCol = 0;
00071     m_emcTrackCol->Delete();
00072     delete m_emcTrackCol;
00073     m_emcTrackCol = 0;
00074 
00075     if(m_tofTrackCol == s_staticTofTrackCol ) s_staticTofTrackCol = 0;
00076     m_tofTrackCol->Delete();
00077     delete m_tofTrackCol;
00078     m_tofTrackCol = 0;
00079 
00080     if(m_mucTrackCol == s_staticMucTrackCol ) s_staticMucTrackCol = 0;
00081     m_mucTrackCol->Delete();
00082     delete m_mucTrackCol;
00083     m_mucTrackCol = 0;
00084 
00085     if(m_mdcDedxCol == s_staticMdcDedxCol ) s_staticMdcDedxCol = 0;
00086     m_mdcDedxCol->Delete();
00087     delete m_mdcDedxCol;
00088     m_mdcDedxCol = 0;
00089 
00090     if(m_extTrackCol == s_staticExtTrackCol ) s_staticExtTrackCol = 0;
00091     m_extTrackCol->Delete();
00092     delete m_extTrackCol;
00093     m_extTrackCol = 0;
00094     
00095     if(m_mdcKalTrackCol == s_staticMdcKalTrackCol ) s_staticMdcKalTrackCol = 0;
00096     m_mdcKalTrackCol->Delete();
00097     delete m_mdcKalTrackCol;
00098     m_mdcKalTrackCol = 0;
00099                  
00100     
00101 }
00102 
00103 //*****************************************************************
00104 void TDstEvent::initialize(){ 
00105 }
00106   
00107 //*****************************************************************
00108 void TDstEvent::Clear(Option_t *option) {
00109 
00110 }
00111 
00112 //*****************************************************************************
00113 void TDstEvent::Print(Option_t *option) const {
00114     TObject::Print(option);
00115 }
00116 
00117 
00118 /****************     Dst Track     ************************/
00120 void TDstEvent::addMdcTrack(TMdcTrack *Track) {
00121     m_mdcTrackCol->Add(Track);
00122 }
00123 
00124 const TMdcTrack* TDstEvent::getMdcTrack(Int_t i) const {
00125     if (Int_t(i) >= m_mdcTrackCol->GetEntries()) 
00126             return 0;
00127     return (TMdcTrack*)m_mdcTrackCol->At(i);
00128 } 
00130 void TDstEvent::addEmcTrack(TEmcTrack * Track) {
00131     m_emcTrackCol->Add(Track);
00132 }
00133 
00134 const TEmcTrack* TDstEvent::getEmcTrack( Int_t i) const {
00135     if(Int_t(i) >= m_emcTrackCol->GetEntries())
00136            return 0;
00137     return (TEmcTrack*)m_emcTrackCol->At(i);
00138 }
00139 
00141 void  TDstEvent::addTofTrack(TTofTrack * Track){
00142     m_tofTrackCol->Add(Track);
00143 }
00144 
00145 
00146 const TTofTrack*  TDstEvent::getTofTrack(Int_t i) const {
00147         if(Int_t(i) >=m_tofTrackCol->GetEntries())
00148                 return 0;
00149         return (TTofTrack*) m_tofTrackCol->At(i);
00150 }
00152 void  TDstEvent::addMucTrack(TMucTrack * Track){
00153     m_mucTrackCol->Add(Track);
00154 }
00155 
00156 
00157 const TMucTrack*  TDstEvent::getMucTrack(Int_t i) const {
00158         if(Int_t(i) >=m_mucTrackCol->GetEntries())
00159                 return 0;
00160         return (TMucTrack*) m_mucTrackCol->At(i);
00161 }
00163 void  TDstEvent::addMdcDedx(TMdcDedx * Track){
00164     m_mdcDedxCol->Add(Track);
00165 }
00166 
00167 
00168 const TMdcDedx*  TDstEvent::getMdcDedx(Int_t i) const {
00169         if(Int_t(i) >=m_mdcDedxCol->GetEntries())
00170                 return 0;
00171         return (TMdcDedx*) m_mdcDedxCol->At(i);
00172 }
00173 
00174 // Ext
00175 void  TDstEvent::addExtTrack(TExtTrack * Track){
00176     m_extTrackCol->Add(Track);
00177 }
00178 
00179 const TExtTrack*  TDstEvent::getExtTrack(Int_t i) const {
00180         if(Int_t(i) >=m_extTrackCol->GetEntries())
00181               return 0;
00182       return (TExtTrack*) m_extTrackCol->At(i);
00183 }
00184 
00185 //MdcKal
00186 void  TDstEvent::addMdcKalTrack(TMdcKalTrack * Track){
00187     m_mdcKalTrackCol->Add(Track);
00188 }
00189 
00190 const TMdcKalTrack*  TDstEvent::getMdcKalTrack(Int_t i) const {
00191      if(Int_t(i) >=m_mdcKalTrackCol->GetEntries())
00192         return 0;
00193      return (TMdcKalTrack*) m_mdcKalTrackCol->At(i);
00194 }
00195 

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