27 #include "FairRootManager.h"
28 #include "setup/CbmStsSetup.h"
66 fIoman = FairRootManager::Instance();
72 static_cast<TClonesArray*
>(
fIoman->GetObject(
"StsCluster"));
77 static_cast<TClonesArray*
>(
fIoman->GetObject(
"TrdCluster"));
79 static_cast<TClonesArray*
>(
fIoman->GetObject(
"TrdDigiMatch"));
92 for (Int_t
i = 0;
i < nofStsHits; ++
i) {
103 for (Int_t j = 0; j < nofFrontDigis; ++j) {
104 Int_t stsDigiInd = frontCluster->
GetDigi(j);
107 const CbmMatch* match = stsDigi->GetMatch();
110 for (Int_t k = 0; k < nofLinks; ++k) {
116 Int_t trackId = stsPoint->GetTrackID();
118 mcTrack.
stsHits[stationNumber].insert(
i);
126 for (Int_t j = 0; j < nofBackDigis; ++j) {
127 Int_t stsDigiInd = backCluster->
GetDigi(j);
130 const CbmMatch* match = stsDigi->GetMatch();
133 for (Int_t k = 0; k < nofLinks; ++k) {
139 Int_t trackId = stsPoint->GetTrackID();
141 mcTrack.
stsHits[stationNumber].insert(
i);
148 for (Int_t
i = 0;
i < nofTrdHits; ++
i) {
152 Int_t clusterId = trdHit->
GetRefId();
157 for (Int_t j = 0; j < nofDigis; ++j) {
158 Int_t digiId = cluster->
GetDigi(j);
163 for (Int_t k = 0; k < nofLinks; ++k) {
169 Int_t trackId = trdPoint->GetTrackID();
171 mcTrack.
trdHits[stationNumber].insert(
i);
176 for (
int i = 0;
i < nofMCTracks; ++
i) {
182 if (!mcTrack.
isRef)
continue;
184 for (
int j = 0; j < 2; ++j) {
185 if (mcTrack.
stsHits[j].empty()) {
186 mcTrack.
isRef =
false;
191 if (!mcTrack.
isRef)
continue;
193 for (
int j = 0; j < 4; ++j) {
194 if (mcTrack.
trdHits[j].empty()) {
195 mcTrack.
isRef =
false;
216 return fMCTracks[trackInd].stsHits[stNo].find(hitInd)
217 !=
fMCTracks[trackInd].stsHits[stNo].end();
221 return fMCTracks[trackInd].trdHits[stNo].find(hitInd)
222 !=
fMCTracks[trackInd].trdHits[stNo].end();