44 if (gMC->IsTrackEntering()) {
46 fTime = gMC->TrackTime() * 1.0e09;
47 fLength = gMC->TrackLength();
48 gMC->TrackPosition(fPos);
49 gMC->TrackMomentum(fMom);
53 fELoss += gMC->Edep();
56 if (fELoss > 0 && (gMC->IsTrackExiting() || gMC->IsTrackStop() || gMC->IsTrackDisappeared())) {
57 Int_t fTrackID = gMC->GetStack()->GetCurrentTrackNumber();
58 assert(fTrackID >= 0);
61 gMC->CurrentVolOffID(0, strip);
66 AddPoint(fTrackID,
kTOF701, TVector3(fPos.X(), fPos.Y(), fPos.Z()), TVector3(fMom.Px(), fMom.Py(), fMom.Pz()),
67 fTime, fLength, fELoss, fVolumeID);
121 Int_t nEntries = cl1->GetEntriesFast();
123 TClonesArray& clref = *cl2;
126 for (Int_t
i = 0;
i < nEntries;
i++) {
128 Int_t index = oldpoint->GetTrackID() + offset;
129 oldpoint->SetTrackID(index);
134 cout <<
" -I- BmnTOF701: " << cl2->GetEntriesFast() <<
" merged entries." << endl;
154 FairGeoLoader* geoLoad = FairGeoLoader::Instance();
155 FairGeoInterface* geoFace = geoLoad->getGeoInterface();
157 TOF701Geo->setGeomFile(GetGeometryFileName());
158 geoFace->addGeoModule(TOF701Geo);
160 Bool_t rc = geoFace->readSet(TOF701Geo);
162 TOF701Geo->create(geoLoad->getGeoBuilder());
163 TList* volList = TOF701Geo->getListOfVolumes();
166 FairRun* fRun = FairRun::Instance();
167 FairRuntimeDb* rtdb = FairRun::Instance()->GetRuntimeDb();
172 TListIter iter(volList);
173 FairGeoNode* node =
nullptr;
174 FairGeoVolume* aVol =
nullptr;
176 while ((node = (FairGeoNode*)iter.Next())) {
177 aVol =
dynamic_cast<FairGeoVolume*
>(node);
179 if (node->isSensitive())
180 fSensNodes->AddLast(aVol);
182 fPassNodes->AddLast(aVol);
186 par->setInputVersion(fRun->GetRunId(), 1);
187 ProcessNodes(volList);
BmnTOF1Point * AddPoint(Int_t trackID, Int_t detID, TVector3 pos, TVector3 mom, Double_t tof, Double_t length, Double_t eLoss, Int_t volUID)