23 #include <TMatrixFSym.h>
24 #include <TObjArray.h>
25 #include <TParticle.h>
28 #include "FairMCPoint.h"
29 #include "FairRootManager.h"
30 #include "FairTrackParam.h"
32 #include "FairMCEventHeader.h"
40 #include "CbmTofHit.h"
52 , fTracks(new TObjArray(1))
57 fTracks->SetOwner(kTRUE);
63 , fTracks(new TObjArray(1))
126 fGlobalTracks = (TClonesArray*) man->GetObject(
"GlobalTrack");
127 fTrdTracks = (TClonesArray*) man->GetObject(
"TrdTrack");
128 fStsTracks = (TClonesArray*) man->GetObject(
"StsTrack");
129 fMuchTracks = (TClonesArray*) man->GetObject(
"MuchTrack");
130 fRichRings = (TClonesArray*) man->GetObject(
"RichRing");
140 fMCHeader = (FairMCEventHeader*) man->GetObject(
"MCEventHeader.");
141 fMCTracks = (TClonesArray*) man->GetObject(
"MCTrack");
142 fStsMatches = (TClonesArray*) man->GetObject(
"StsTrackMatch");
143 fMuchMatches = (TClonesArray*) man->GetObject(
"MuchTrackMatch");
144 fTrdMatches = (TClonesArray*) man->GetObject(
"TrdTrackMatch");
145 fRichMatches = (TClonesArray*) man->GetObject(
"RichRingMatch");
147 fMvdHits = (TClonesArray*) man->GetObject(
"MvdHit");
148 fStsHits = (TClonesArray*) man->GetObject(
"StsHit");
149 fMuchHits = (TClonesArray*) man->GetObject(
"MuchPixelHit");
151 fTrdHits = (TClonesArray*) man->GetObject(
"TrdHit");
152 fRichHits = (TClonesArray*) man->GetObject(
"RichHit");
153 fTofHits = (TClonesArray*) man->GetObject(
"TofHit");
156 (TClonesArray*) man->GetObject(
"MvdHitMatch");
164 fMvdPoints = (TClonesArray*) man->GetObject(
"MvdPoint");
165 fStsPoints = (TClonesArray*) man->GetObject(
"StsPoint");
166 fRichPoints = (TClonesArray*) man->GetObject(
"RichPoint");
167 fMuchPoints = (TClonesArray*) man->GetObject(
"MuchPoint");
168 fTrdPoints = (TClonesArray*) man->GetObject(
"TrdPoint");
169 fTofPoints = (TClonesArray*) man->GetObject(
"TofPoint");
171 fTrdCluster = (TClonesArray*) man->GetObject(
"TrdCluster");
175 fFastTracks = (TClonesArray*) man->GetObject(
"FastTrack");
191 "check %s: has %d points in %p \n",
196 "check %s: has %d points in %p \n",
201 "check %s: has %d points in %p \n",
206 "check %s: has %d points in %p \n",
211 "check %s: has %d points in %p \n",
217 "check %s: has %d hitMatches in %p \n",
222 "check %s: has %d hitMatches in %p \n",
227 "check %s: has %d hitMatches in %p \n",
232 "check %s: has %d hitMatches in %p \n",
237 "check %s: has %d hitMatches in %p \n",
243 "check %s: has %d hits in %p \n",
248 "check %s: has %d hits in %p \n",
253 "check %s: has %d hits in %p \n",
258 "check %s: has %d hits in %p \n",
263 "check %s: has %d hits in %p \n",
335 Int_t istsMC = (stsMatch && stsMatch->
GetNofHits() > 0
341 Int_t imuchMC = (muchMatch && muchMatch->
GetNofHits() > 0
351 Int_t irichMC = (richMatch && richMatch->
GetNofHits() > 0
358 FairMCPoint* tofPoint = 0x0;
360 tofPoint =
static_cast<FairMCPoint*
>(
362 Int_t itofMC = (tofPoint ? tofPoint->GetTrackID() : -1);
377 if (mcTrack &&
fMCTracks) matches[iMC]++;
399 if (iMC < 0) iMC = -999;
418 TParticle* ftrk =
static_cast<TParticle*
>(
fFastTracks->UncheckedAt(
i));
422 Int_t iMC = ftrk->GetFirstMother();
427 if (mcTrack &&
fMCTracks) matches[iMC]++;
447 Fatal(
"PairAnalysisEvent::GetTrack",
448 "Event initialisation failed somehow !!!");
491 return (
GetHits(det)->GetEntriesFast());
503 return (
GetPoints(det)->GetEntriesFast());
597 for (Int_t iHit = 0; iHit < nofMvdHits; iHit++) {
600 if (!hitMatch)
continue;
602 for (Int_t iLink = 0; iLink < nofLinks; iLink++) {
604 const FairMCPoint* point =
606 if (NULL == point)
continue;