@@ -182,9 +182,9 @@ struct HfTaskFlowCharmHadrons {
182182 using CandXic0Data = soa::Filtered<soa::Join<aod::HfCandToXiPiKf, aod::HfSelToXiPiKf>>;
183183 using CandXic0DataWMl = soa::Filtered<soa::Join<aod::HfCandToXiPiKf, aod::HfSelToXiPiKf, aod::HfMlToXiPi>>;
184184 using CandD0DataWMl = soa::Filtered<soa::Join<aod::HfCand2Prong, aod::HfSelD0, aod::HfMlD0>>;
185- using CollsWithSPQvecs = soa::Join<aod::Collisions, o2::aod::BCsWithTimestamps, aod::EvSels, aod::PVMults, aod::QvectorFT0Cs, aod::QvectorFT0As, aod::QvectorFT0Ms, aod::QvectorFV0As, aod::QvectorBPoss, aod::QvectorBNegs, aod::QvectorBTots, aod::CentFV0As, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::CentFT0CVariant2s>;
186- using CollsWithEsEQvecs = soa::Join<aod::Collisions, o2::aod::BCsWithTimestamps, aod::EvSels, aod::PVMults, aod::EseQvecPercs, aod::CentFV0As, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::CentFT0CVariant2s>;
187- using CollsWithSPEsEQvecs = soa::Join<aod::Collisions, o2::aod::BCsWithTimestamps, aod::EvSels, aod::PVMults, aod::EseQvecPercs, aod::QvectorFT0Cs, aod::QvectorFT0As, aod::QvectorFT0Ms, aod::QvectorFV0As, aod::QvectorBPoss, aod::QvectorBNegs, aod::QvectorBTots, aod::CentFV0As, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::CentFT0CVariant2s>;
185+ using CollsWithSPQvecs = soa::Join<aod::Collisions, aod::EvSels, aod::PVMults, aod::QvectorFT0Cs, aod::QvectorFT0As, aod::QvectorFT0Ms, aod::QvectorFV0As, aod::QvectorBPoss, aod::QvectorBNegs, aod::QvectorBTots, aod::CentFV0As, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::CentFT0CVariant2s>;
186+ using CollsWithEsEQvecs = soa::Join<aod::Collisions, aod::EvSels, aod::PVMults, aod::EseQvecPercs, aod::CentFV0As, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::CentFT0CVariant2s>;
187+ using CollsWithSPEsEQvecs = soa::Join<aod::Collisions, aod::EvSels, aod::PVMults, aod::EseQvecPercs, aod::QvectorFT0Cs, aod::QvectorFT0As, aod::QvectorFT0Ms, aod::QvectorFV0As, aod::QvectorBPoss, aod::QvectorBNegs, aod::QvectorBTots, aod::CentFV0As, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::CentFT0CVariant2s>;
188188 using TracksWithExtra = soa::Join<aod::Tracks, aod::TracksExtra>;
189189
190190 Filter filterSelectDsCandidates = aod::hf_sel_candidate_ds::isSelDsToKKPi >= selectionFlag || aod::hf_sel_candidate_ds::isSelDsToPiKK >= selectionFlag;
@@ -621,11 +621,13 @@ struct HfTaskFlowCharmHadrons {
621621 float const amplRedQVec = qVecRedComps[2 ];
622622
623623 if (useOnlineResoCorrection) {
624+ // Access BC information through the collision's BC index.
625+ const auto bc = collision.template bc_as <aod::BCsWithTimestamps>();
624626 // Per-run update
625- if (collision .runNumber () != lastRunNumber) {
626- LOG (info) << " Run number changed from " << lastRunNumber << " to " << collision .runNumber () << " . Updating resolution values." ;
627- qVecResoHelper.update (ccdb, ccdbResoHistPath, resoTripletPath.value , collision .timestamp (), collision .runNumber ());
628- lastRunNumber = collision .runNumber ();
627+ if (bc .runNumber () != lastRunNumber) {
628+ LOG (info) << " Run number changed from " << lastRunNumber << " to " << bc .runNumber () << " . Updating resolution values." ;
629+ qVecResoHelper.update (ccdb, ccdbResoHistPath, resoTripletPath.value , bc .timestamp (), bc .runNumber ());
630+ lastRunNumber = bc .runNumber ();
629631 }
630632 scalarProdReso = qVecResoHelper[static_cast <int >(cent - 0 .5f )]; // Cent is given in X.5f format
631633 }
@@ -840,7 +842,8 @@ struct HfTaskFlowCharmHadrons {
840842 // Ds with ML
841843 void processDsMl (CollsWithSPQvecs::iterator const & collision,
842844 CandDsDataWMl const &,
843- TracksWithExtra const & tracks)
845+ TracksWithExtra const & tracks,
846+ aod::BCsWithTimestamps const & /* bcs*/ )
844847 {
845848 auto candsDsToKKPiWMl = selectedDsToKKPiWMl->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
846849 auto candsDsToPiKKWMl = selectedDsToPiKKWMl->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
@@ -852,7 +855,8 @@ struct HfTaskFlowCharmHadrons {
852855 // Ds with ML EsE
853856 void processDsEsEMl (CollsWithEsEQvecs::iterator const & collision,
854857 CandDsDataWMl const & /* candidatesDs*/ ,
855- TracksWithExtra const & tracks)
858+ TracksWithExtra const & tracks,
859+ aod::BCsWithTimestamps const & /* bcs*/ )
856860 {
857861 auto candsDsToKKPiWMl = selectedDsToKKPiWMl->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
858862 auto candsDsToPiKKWMl = selectedDsToPiKKWMl->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
@@ -864,7 +868,8 @@ struct HfTaskFlowCharmHadrons {
864868 // Ds with ML EsE and SP
865869 void processDsSPEsEMl (CollsWithSPEsEQvecs::iterator const & collision,
866870 CandDsDataWMl const & /* candidatesDs*/ ,
867- TracksWithExtra const & tracks)
871+ TracksWithExtra const & tracks,
872+ aod::BCsWithTimestamps const & /* bcs*/ )
868873 {
869874 auto candsDsToKKPiWMl = selectedDsToKKPiWMl->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
870875 auto candsDsToPiKKWMl = selectedDsToPiKKWMl->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
@@ -876,7 +881,8 @@ struct HfTaskFlowCharmHadrons {
876881 // Dplus with ML
877882 void processDplusMl (CollsWithSPQvecs::iterator const & collision,
878883 CandDplusDataWMl const & candidatesDplus,
879- TracksWithExtra const & tracks)
884+ TracksWithExtra const & tracks,
885+ aod::BCsWithTimestamps const & /* bcs*/ )
880886 {
881887 runFlowAnalysis<RunMode::kSP , DecayChannel::DplusToPiKPi>(collision, candidatesDplus, tracks);
882888 }
@@ -885,7 +891,8 @@ struct HfTaskFlowCharmHadrons {
885891 // Dplus with ML EsE
886892 void processDplusEsEMl (CollsWithEsEQvecs::iterator const & collision,
887893 CandDplusDataWMl const & candidatesDplus,
888- TracksWithExtra const & tracks)
894+ TracksWithExtra const & tracks,
895+ aod::BCsWithTimestamps const & /* bcs*/ )
889896 {
890897 runFlowAnalysis<RunMode::kEsE , DecayChannel::DplusToPiKPi>(collision, candidatesDplus, tracks);
891898 }
@@ -894,7 +901,8 @@ struct HfTaskFlowCharmHadrons {
894901 // Dplus with ML SP and EsE
895902 void processDplusSPEsEMl (CollsWithSPEsEQvecs::iterator const & collision,
896903 CandDplusDataWMl const & candidatesDplus,
897- TracksWithExtra const & tracks)
904+ TracksWithExtra const & tracks,
905+ aod::BCsWithTimestamps const & /* bcs*/ )
898906 {
899907 runFlowAnalysis<RunMode::kSPEsE , DecayChannel::DplusToPiKPi>(collision, candidatesDplus, tracks);
900908 }
@@ -903,7 +911,8 @@ struct HfTaskFlowCharmHadrons {
903911 // D0 with ML
904912 void processD0Ml (CollsWithSPQvecs::iterator const & collision,
905913 CandD0DataWMl const & /* candidatesD0*/ ,
906- TracksWithExtra const & tracks)
914+ TracksWithExtra const & tracks,
915+ aod::BCsWithTimestamps const & /* bcs*/ )
907916 {
908917 auto candsD0ToPiKWMl = selectedD0ToPiKWMl->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
909918 auto candsD0ToKPiWMl = selectedD0ToKPiWMl->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
@@ -915,7 +924,8 @@ struct HfTaskFlowCharmHadrons {
915924 // D0 with ML
916925 void processD0EsEMl (CollsWithEsEQvecs::iterator const & collision,
917926 CandD0DataWMl const & /* candidatesD0*/ ,
918- TracksWithExtra const & tracks)
927+ TracksWithExtra const & tracks,
928+ aod::BCsWithTimestamps const & /* bcs*/ )
919929 {
920930 auto candsD0ToPiKWMl = selectedD0ToPiKWMl->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
921931 auto candsD0ToKPiWMl = selectedD0ToKPiWMl->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
@@ -927,7 +937,8 @@ struct HfTaskFlowCharmHadrons {
927937 // D0 with ML
928938 void processD0SPEsEMl (CollsWithSPEsEQvecs::iterator const & collision,
929939 CandD0DataWMl const & /* candidatesD0*/ ,
930- TracksWithExtra const & tracks)
940+ TracksWithExtra const & tracks,
941+ aod::BCsWithTimestamps const & /* bcs*/ )
931942 {
932943 auto candsD0ToPiKWMl = selectedD0ToPiKWMl->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
933944 auto candsD0ToKPiWMl = selectedD0ToKPiWMl->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
@@ -939,7 +950,8 @@ struct HfTaskFlowCharmHadrons {
939950 // Lc with ML
940951 void processLcMl (CollsWithSPQvecs::iterator const & collision,
941952 CandLcDataWMl const & /* candidatesLc*/ ,
942- TracksWithExtra const & tracks)
953+ TracksWithExtra const & tracks,
954+ aod::BCsWithTimestamps const & /* bcs*/ )
943955 {
944956 auto candsLcToPKPiWMl = selectedLcToPKPiWMl->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
945957 auto candsLcToPiKPWMl = selectedLcToPiKPWMl->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
@@ -951,7 +963,8 @@ struct HfTaskFlowCharmHadrons {
951963 // Xic with ML
952964 void processXicMl (CollsWithSPQvecs::iterator const & collision,
953965 CandXicDataWMl const & /* candidatesXic*/ ,
954- TracksWithExtra const & tracks)
966+ TracksWithExtra const & tracks,
967+ aod::BCsWithTimestamps const & /* bcs*/ )
955968 {
956969 auto candsXicToPKPiWMl = selectedXicToPKPiWMl->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
957970 auto candsXicToPiKPWMl = selectedXicToPiKPWMl->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
@@ -963,7 +976,8 @@ struct HfTaskFlowCharmHadrons {
963976 // Xic0 with ML
964977 void processXic0Ml (CollsWithSPQvecs::iterator const & collision,
965978 CandXic0DataWMl const & /* candidatesXic0*/ ,
966- TracksWithExtra const & tracks)
979+ TracksWithExtra const & tracks,
980+ aod::BCsWithTimestamps const & /* bcs*/ )
967981 {
968982 auto candsXic0WMl = selectedXic0WMl->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
969983 runFlowAnalysis<RunMode::kSP , DecayChannel::Xic0ToXiPi>(collision, candsXic0WMl, tracks);
@@ -973,7 +987,8 @@ struct HfTaskFlowCharmHadrons {
973987 // Xic0
974988 void processXic0 (CollsWithSPQvecs::iterator const & collision,
975989 CandXic0Data const & /* candidatesXic0*/ ,
976- TracksWithExtra const & tracks)
990+ TracksWithExtra const & tracks,
991+ aod::BCsWithTimestamps const & /* bcs*/ )
977992 {
978993 auto candsXic0 = selectedXic0->sliceByCached (aod::hf_cand::collisionId, collision.globalIndex (), cache);
979994 runFlowAnalysis<RunMode::kSP , DecayChannel::Xic0ToXiPi>(collision, candsXic0, tracks);
0 commit comments