BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
TDisTrack.cxx
Go to the documentation of this file.
1#include "RootEventData/TDisTrack.h"
2#include "TCollection.h" // Declares TIter
3#include <iostream>
4
6
7// Allocate the TObjArray just once
8
9//***************************************************************
11 // Dst Track
12 // Rec Track
13 // if (!m_recMdcTrackCol) {
14
15 m_recMdcTrackCol = new TObjArray();
16 // }
17 m_recMdcHitCol = new TObjArray();
18 m_recTofTrackCol = new TObjArray();
19 m_recMucTrackCol = new TObjArray();
20 m_recEmcShowerCol = new TObjArray();
21 /* m_recTofTrackCol = s_staticTofTrackCol;
22
23
24 Clear();*/
25}
26
27//*****************************************************************
29
30 /**************************** Dst Track *************************/
31
32 // delete m_recMdcTrackCol;
33 if ( m_recMdcTrackCol )
34 { // m_recMdcTrackCol->Clear();
35 m_recMdcTrackCol->Delete();
36 delete m_recMdcTrackCol;
37 }
38 m_recMdcTrackCol = 0;
39
40 if ( m_recMdcHitCol )
41 { // m_recMdcHitCol->Clear();
42 m_recMdcHitCol->Delete();
43 delete m_recMdcHitCol;
44 }
45 m_recMdcHitCol = 0;
46
47 if ( m_recTofTrackCol )
48 { // m_recTofTrackCol->Clear();
49 m_recTofTrackCol->Delete();
50 delete m_recTofTrackCol;
51 }
52 m_recTofTrackCol = 0;
53
54 if ( m_recMucTrackCol )
55 { // m_recMucTrackCol->Clear();
56 m_recMucTrackCol->Delete();
57 delete m_recMucTrackCol;
58 }
59 m_recMucTrackCol = 0;
60
61 if ( m_recEmcShowerCol )
62 { // m_recEmcShowerCol->Clear();
63 m_recEmcShowerCol->Delete();
64 delete m_recEmcShowerCol;
65 }
66 m_recEmcShowerCol = 0;
67}
68
69//*****************************************************************
71
72//*****************************************************************
73void TDisTrack::Clear( Option_t* option ) {
74 if ( m_recMdcTrackCol )
75 { // m_recMdcTrackCol->Clear();
76 std::cout << "step1" << std::endl;
77 // m_recMdcTrackCol->Delete();
78 delete m_recMdcTrackCol;
79 }
80 m_recMdcTrackCol = 0;
81
82 if ( m_recMdcHitCol )
83 { // m_recMdcHitCol->Clear();
84 std::cout << "step2" << std::endl;
85 // m_recMdcHitCol->Delete();
86 delete m_recMdcHitCol;
87 }
88 m_recMdcHitCol = 0;
89
90 if ( m_recTofTrackCol )
91 { // m_recTofTrackCol->Clear();
92 std::cout << "step3" << std::endl;
93 // m_recTofTrackCol->Delete();
94 delete m_recTofTrackCol;
95 }
96 m_recTofTrackCol = 0;
97
98 if ( m_recMucTrackCol )
99 { // m_recMucTrackCol->Clear();
100 std::cout << "step4" << std::endl;
101 //; m_recMucTrackCol->Delete();
102 delete m_recMucTrackCol;
103 }
104 m_recMucTrackCol = 0;
105
106 if ( m_recEmcShowerCol )
107 { // m_recEmcShowerCol->Clear();
108 std::cout << "step5" << std::endl;
109 // m_recEmcShowerCol->Delete();
110 delete m_recEmcShowerCol;
111 }
112 m_recEmcShowerCol = 0;
113}
114
115//*****************************************************************************
116void TDisTrack::Print( Option_t* option ) const { TObject::Print( option ); }
117
118/**************** Dst Track ************************/
119/// Mdc
120void TDisTrack::addRecMdcTrack( TRecMdcTrack* Track ) { m_recMdcTrackCol->Add( Track ); }
121
123 if ( Int_t( i ) >= m_recMdcTrackCol->GetEntries() ) return 0;
124 return (TRecMdcTrack*)m_recMdcTrackCol->At( i );
125}
126
127// MdcHits
128void TDisTrack::addRecMdcHit( TRecMdcHit* Hit ) { m_recMdcHitCol->Add( Hit ); }
129
130const TRecMdcHit* TDisTrack::getRecMdcHit( Int_t i ) const {
131 if ( Int_t( i ) >= m_recMdcHitCol->GetEntries() ) return 0;
132 return (TRecMdcHit*)m_recMdcHitCol->At( i );
133}
134
135// TOF
136void TDisTrack::addTofTrack( TRecTofTrack* Track ) { m_recTofTrackCol->Add( Track ); }
137const TRecTofTrack* TDisTrack::getTofTrack( Int_t i ) const {
138 if ( Int_t( i ) >= m_recTofTrackCol->GetEntries() ) return 0;
139 return (TRecTofTrack*)m_recTofTrackCol->At( i );
140}
141
142/// Muc
143void TDisTrack::addMucTrack( TRecMucTrack* Track ) { m_recMucTrackCol->Add( Track ); }
144
145const TRecMucTrack* TDisTrack::getMucTrack( Int_t i ) const {
146 if ( Int_t( i ) >= m_recMucTrackCol->GetEntries() ) return 0;
147 return (TRecMucTrack*)m_recMucTrackCol->At( i );
148}
149
150// EmcShowers
151void TDisTrack::addEmcShower( TRecEmcShower* Track ) { m_recEmcShowerCol->Add( Track ); }
152
153/// retrieve a EmcShower from the collection, using the index into the array
154const TRecEmcShower* TDisTrack::getEmcShower( Int_t i ) const {
155 if ( Int_t( i ) >= m_recEmcShowerCol->GetEntries() ) return 0;
156 return (TRecEmcShower*)m_recEmcShowerCol->At( i );
157}
158
160 std::cout << "getMdcTrackNum step1" << std::endl;
161 if ( m_recMdcTrackCol )
162 {
163 std::cout << "getMdcTrackNum step2" << std::endl;
164 return m_recMdcTrackCol->GetEntries();
165 }
166 std::cout << "getMdcTrackNum step3" << std::endl;
167 return 0;
168}
169
171 std::cout << "getTofTrackNum step1" << std::endl;
172 if ( m_recTofTrackCol )
173 {
174 std::cout << "getTofTrackNum step2" << std::endl;
175 return m_recTofTrackCol->GetEntries();
176 }
177 std::cout << "getTofTrackNum step3" << std::endl;
178 return 0;
179}
180
182 std::cout << "getEmcShowerNum step1" << std::endl;
183 if ( m_recEmcShowerCol )
184 {
185 std::cout << "getEmcShowerNum step2" << std::endl;
186 return m_recEmcShowerCol->GetEntries();
187 }
188 std::cout << "getEmcShowerNum step3" << std::endl;
189 return 0;
190}
191
193 std::cout << "getMucTrackNum step1" << std::endl;
194 if ( m_recMucTrackCol )
195 {
196 std::cout << "getMucTrackNum step2" << std::endl;
197 return m_recMucTrackCol->GetEntries();
198 }
199 std::cout << "getMucTrackNum step3" << std::endl;
200 return 0;
201}
202
204 std::cout << "getMdcHitkNum step1" << std::endl;
205 if ( m_recMdcHitCol )
206 {
207 std::cout << "getMdcHitkNum step2" << std::endl;
208 return m_recMdcHitCol->GetEntries();
209 }
210 std::cout << "getMdcHitkNum step3" << std::endl;
211 return 0;
212}
ClassImp(TDisTrack)
void addRecMdcTrack(TRecMdcTrack *Track)
Add a TkrTrack into the Mdc data collection.
int getMdcHitNum()
const TRecTofTrack * getTofTrack(Int_t i) const
retrieve a TofTrack From the collection, using the index into the array
void initialize()
Definition TDisTrack.cxx:70
const TRecMucTrack * getMucTrack(Int_t i) const
retrieve a MucTrack From the collection, using the index into the array
void addTofTrack(TRecTofTrack *Track)
void addMucTrack(TRecMucTrack *Track)
Add a MucTrack into the TOF Data collection.
void Clear(Option_t *option="")
Definition TDisTrack.cxx:73
const TRecEmcShower * getEmcShower(Int_t i) const
retrieve a EmcShower from the collection, using the index into the array
int getMdcTrackNum()
const TRecMdcHit * getRecMdcHit(Int_t i) const
retrieve a RecMdcHit from the collection, using the index into the array
int getMucTrackNum()
int getEmcShowerNum()
int getTofTrackNum()
void Print(Option_t *option="") const
void addRecMdcHit(TRecMdcHit *Hit)
Add a Rec Mdc Hit into the Mdc data collection.
void addEmcShower(TRecEmcShower *Track)
Add a TkrTrack into the Emc data collection.
const TRecMdcTrack * getRecMdcTrack(Int_t i) const
retrieve a MdcTrack from the collection, using the index into the array
virtual ~TDisTrack()
Definition TDisTrack.cxx:28