@@ -206,19 +206,24 @@ class TPCTimeSeries : public Task
206206 indicesITSTPC[tracksITSTPC[i].getRefTPC ().getIndex ()] = {i, idxVtx};
207207 }
208208
209- std::vector<std::tuple<int , float , float >> idxTPCTrackToTOFCluster; // store for each tpc track index the index to the TOF cluster
209+ std::vector<std::tuple<int , float , float ,o2::track::TrackLTIntegral, float >> idxTPCTrackToTOFCluster; // store for each tpc track index the index to the TOF cluster
210210
211211 // get matches to TOF in case skimmed data is produced
212212 if (mUnbinnedWriter ) {
213- idxTPCTrackToTOFCluster = std::vector<std::tuple<int , float , float >>(tracksTPC.size (), {-1 , -999 , -999 });
213+ // getLTIntegralOut(), ///< L,TOF integral calculated during the propagation
214+ // getSignal() mSignal = 0.0; ///< TOF time in ps
215+ o2::track::TrackLTIntegral defLT;
216+ idxTPCTrackToTOFCluster = std::vector<std::tuple<int , float , float ,o2::track::TrackLTIntegral,float >>(tracksTPC.size (), {-1 , -999 , -999 ,defLT,0 });
214217 const std::vector<gsl::span<const o2::dataformats::MatchInfoTOF>> tofMatches{recoData.getTPCTOFMatches (), recoData.getTPCTRDTOFMatches (), recoData.getITSTPCTOFMatches (), recoData.getITSTPCTRDTOFMatches ()};
215218
216219 // loop over ITS-TPC-TRD-TOF and ITS-TPC-TOF tracks an store for each ITS-TPC track the TOF track index
217220 for (const auto & tofMatch : tofMatches) {
218221 for (const auto & tpctofmatch : tofMatch) {
219222 auto refTPC = recoData.getTPCContributorGID (tpctofmatch.getTrackRef ());
220223 if (refTPC.isIndexSet ()) {
221- idxTPCTrackToTOFCluster[refTPC] = {tpctofmatch.getIdxTOFCl (), tpctofmatch.getDXatTOF (), tpctofmatch.getDZatTOF ()};
224+ o2::track::TrackLTIntegral ltIntegral=tpctofmatch.getLTIntegralOut ();
225+ float signal=tpctofmatch.getSignal ();
226+ idxTPCTrackToTOFCluster[refTPC] = {tpctofmatch.getIdxTOFCl (), tpctofmatch.getDXatTOF (), tpctofmatch.getDZatTOF (),ltIntegral,signal};
222227 }
223228 }
224229 }
@@ -1049,7 +1054,7 @@ class TPCTimeSeries : public Task
10491054 return isGoodTrack;
10501055 }
10511056
1052- void fillDCA (const gsl::span<const TrackTPC> tracksTPC, const gsl::span<const o2::dataformats::TrackTPCITS> tracksITSTPC, const gsl::span<const o2::dataformats::PrimaryVertex> vertices, const int iTrk, const int iThread, const std::unordered_map<unsigned int , std::array<int , 2 >>& indicesITSTPC, const gsl::span<const o2::its::TrackITS> tracksITS, const std::vector<std::tuple<int , float , float >>& idxTPCTrackToTOFCluster, const gsl::span<const o2::tof::Cluster> tofClusters)
1057+ void fillDCA (const gsl::span<const TrackTPC> tracksTPC, const gsl::span<const o2::dataformats::TrackTPCITS> tracksITSTPC, const gsl::span<const o2::dataformats::PrimaryVertex> vertices, const int iTrk, const int iThread, const std::unordered_map<unsigned int , std::array<int , 2 >>& indicesITSTPC, const gsl::span<const o2::its::TrackITS> tracksITS, const std::vector<std::tuple<int , float , float ,o2::track::TrackLTIntegral, float >>& idxTPCTrackToTOFCluster, const gsl::span<const o2::tof::Cluster> tofClusters)
10531058 {
10541059 const auto & trackFull = tracksTPC[iTrk];
10551060 const bool isGoodTrack = checkTrack (trackFull);
@@ -1432,6 +1437,8 @@ class TPCTimeSeries : public Task
14321437 << " tpcZDeltaAtTOF=" << tpcZDeltaAtTOF
14331438 << " mDXatTOF=" << std::get<1 >(idxTPCTrackToTOFCluster[iTrk])
14341439 << " mDZatTOF=" << std::get<2 >(idxTPCTrackToTOFCluster[iTrk])
1440+ << " mTOFLength=" << std::get<3 >(idxTPCTrackToTOFCluster[iTrk])
1441+ << " mTOFSignal=" << std::get<4 >(idxTPCTrackToTOFCluster[iTrk])
14351442 // TPC delta param
14361443 << " deltaTPCParamInOutTgl=" << deltaTPCParamInOutTgl
14371444 << " deltaTPCParamInOutQPt=" << deltaTPCParamInOutQPt
0 commit comments