BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
TDstEvent.cxx
Go to the documentation of this file.
1#include "RootEventData/TDstEvent.h"
2#include "TCollection.h" // Declares TIter
3
5
6// Allocate the TObjArray just once
7
8TObjArray* TDstEvent::s_staticMdcTrackCol = 0;
9TObjArray* TDstEvent::s_staticEmcTrackCol = 0;
10TObjArray* TDstEvent::s_staticTofTrackCol = 0;
11TObjArray* TDstEvent::s_staticMucTrackCol = 0;
12TObjArray* TDstEvent::s_staticMdcDedxCol = 0;
13TObjArray* TDstEvent::s_staticExtTrackCol = 0;
14TObjArray* TDstEvent::s_staticMdcKalTrackCol = 0;
15
16//***************************************************************
18 // Dst Track
19
20 if ( !s_staticMdcTrackCol ) { s_staticMdcTrackCol = new TObjArray(); }
21 m_mdcTrackCol = s_staticMdcTrackCol;
22
23 if ( !s_staticEmcTrackCol ) { s_staticEmcTrackCol = new TObjArray(); }
24 m_emcTrackCol = s_staticEmcTrackCol;
25
26 if ( !s_staticTofTrackCol ) { s_staticTofTrackCol = new TObjArray(); }
27 m_tofTrackCol = s_staticTofTrackCol;
28
29 if ( !s_staticMucTrackCol ) { s_staticMucTrackCol = new TObjArray(); }
30 m_mucTrackCol = s_staticMucTrackCol;
31
32 if ( !s_staticMdcDedxCol ) { s_staticMdcDedxCol = new TObjArray(); }
33 m_mdcDedxCol = s_staticMdcDedxCol;
34
35 if ( !s_staticExtTrackCol ) { s_staticExtTrackCol = new TObjArray(); }
36 m_extTrackCol = s_staticExtTrackCol;
37
38 if ( !s_staticMdcKalTrackCol ) { s_staticMdcKalTrackCol = new TObjArray(); }
39 m_mdcKalTrackCol = s_staticMdcKalTrackCol;
40
41 Clear();
42}
43
44//*****************************************************************
46
47 /**************************** Dst Track *************************/
48 if ( m_mdcTrackCol == s_staticMdcTrackCol ) s_staticMdcTrackCol = 0;
49 m_mdcTrackCol->Delete();
50 delete m_mdcTrackCol;
51 m_mdcTrackCol = 0;
52
53 if ( m_emcTrackCol == s_staticEmcTrackCol ) s_staticEmcTrackCol = 0;
54 m_emcTrackCol->Delete();
55 delete m_emcTrackCol;
56 m_emcTrackCol = 0;
57
58 if ( m_tofTrackCol == s_staticTofTrackCol ) s_staticTofTrackCol = 0;
59 m_tofTrackCol->Delete();
60 delete m_tofTrackCol;
61 m_tofTrackCol = 0;
62
63 if ( m_mucTrackCol == s_staticMucTrackCol ) s_staticMucTrackCol = 0;
64 m_mucTrackCol->Delete();
65 delete m_mucTrackCol;
66 m_mucTrackCol = 0;
67
68 if ( m_mdcDedxCol == s_staticMdcDedxCol ) s_staticMdcDedxCol = 0;
69 m_mdcDedxCol->Delete();
70 delete m_mdcDedxCol;
71 m_mdcDedxCol = 0;
72
73 if ( m_extTrackCol == s_staticExtTrackCol ) s_staticExtTrackCol = 0;
74 m_extTrackCol->Delete();
75 delete m_extTrackCol;
76 m_extTrackCol = 0;
77
78 if ( m_mdcKalTrackCol == s_staticMdcKalTrackCol ) s_staticMdcKalTrackCol = 0;
79 m_mdcKalTrackCol->Delete();
80 delete m_mdcKalTrackCol;
81 m_mdcKalTrackCol = 0;
82}
83
84//*****************************************************************
86
87//*****************************************************************
88void TDstEvent::Clear( Option_t* option ) {}
89
90//*****************************************************************************
91void TDstEvent::Print( Option_t* option ) const { TObject::Print( option ); }
92
93/**************** Dst Track ************************/
94/// Mdc
95void TDstEvent::addMdcTrack( TMdcTrack* Track ) { m_mdcTrackCol->Add( Track ); }
96
97const TMdcTrack* TDstEvent::getMdcTrack( Int_t i ) const {
98 if ( Int_t( i ) >= m_mdcTrackCol->GetEntries() ) return 0;
99 return (TMdcTrack*)m_mdcTrackCol->At( i );
100}
101/// Emc
102void TDstEvent::addEmcTrack( TEmcTrack* Track ) { m_emcTrackCol->Add( Track ); }
103
104const TEmcTrack* TDstEvent::getEmcTrack( Int_t i ) const {
105 if ( Int_t( i ) >= m_emcTrackCol->GetEntries() ) return 0;
106 return (TEmcTrack*)m_emcTrackCol->At( i );
107}
108
109/// Tof
110void TDstEvent::addTofTrack( TTofTrack* Track ) { m_tofTrackCol->Add( Track ); }
111
112const TTofTrack* TDstEvent::getTofTrack( Int_t i ) const {
113 if ( Int_t( i ) >= m_tofTrackCol->GetEntries() ) return 0;
114 return (TTofTrack*)m_tofTrackCol->At( i );
115}
116/// Muc
117void TDstEvent::addMucTrack( TMucTrack* Track ) { m_mucTrackCol->Add( Track ); }
118
119const TMucTrack* TDstEvent::getMucTrack( Int_t i ) const {
120 if ( Int_t( i ) >= m_mucTrackCol->GetEntries() ) return 0;
121 return (TMucTrack*)m_mucTrackCol->At( i );
122}
123/// Dedx
124void TDstEvent::addMdcDedx( TMdcDedx* Track ) { m_mdcDedxCol->Add( Track ); }
125
126const TMdcDedx* TDstEvent::getMdcDedx( Int_t i ) const {
127 if ( Int_t( i ) >= m_mdcDedxCol->GetEntries() ) return 0;
128 return (TMdcDedx*)m_mdcDedxCol->At( i );
129}
130
131// Ext
132void TDstEvent::addExtTrack( TExtTrack* Track ) { m_extTrackCol->Add( Track ); }
133
134const TExtTrack* TDstEvent::getExtTrack( Int_t i ) const {
135 if ( Int_t( i ) >= m_extTrackCol->GetEntries() ) return 0;
136 return (TExtTrack*)m_extTrackCol->At( i );
137}
138
139// MdcKal
140void TDstEvent::addMdcKalTrack( TMdcKalTrack* Track ) { m_mdcKalTrackCol->Add( Track ); }
141
143 if ( Int_t( i ) >= m_mdcKalTrackCol->GetEntries() ) return 0;
144 return (TMdcKalTrack*)m_mdcKalTrackCol->At( i );
145}
ClassImp(TDstEvent)
void addMdcTrack(TMdcTrack *Track)
Add a TkrTrack into the Mdc data collection.
Definition TDstEvent.cxx:95
const TMdcDedx * getMdcDedx(Int_t i) const
retrieve a TofTrack From the collection, using the index into the array
void addEmcTrack(TEmcTrack *Track)
Add a TkrTrack into the Emc data collection.
void initialize()
Definition TDstEvent.cxx:85
const TEmcTrack * getEmcTrack(Int_t i) const
retrieve a EmcTrack from the collection, using the index into the array
void addExtTrack(TExtTrack *Track)
Add a ExtTrack into the Ext Data collection.
void addMdcKalTrack(TMdcKalTrack *Track)
void addMucTrack(TMucTrack *Track)
Add a MucTrack into the TOF Data collection.
void Print(Option_t *option="") const
Definition TDstEvent.cxx:91
const TExtTrack * getExtTrack(Int_t i) const
retrieve a MucTrack From the collection, using the index into the array
void addMdcDedx(TMdcDedx *Track)
Add a Dedx into the TOF Data collection.
const TMdcKalTrack * getMdcKalTrack(Int_t i) const
virtual ~TDstEvent()
Definition TDstEvent.cxx:45
const TTofTrack * getTofTrack(Int_t i) const
retrieve a TofTrack From the collection, using the index into the array
const TMucTrack * getMucTrack(Int_t i) const
retrieve a MucTrack From the collection, using the index into the array
const TMdcTrack * getMdcTrack(Int_t i) const
retrieve a MdcTrack from the collection, using the index into the array
Definition TDstEvent.cxx:97
void Clear(Option_t *option="")
Definition TDstEvent.cxx:88
void addTofTrack(TTofTrack *Track)
Add a TofTrack into the TOF Data collection.