@@ -336,10 +336,11 @@ struct HfTaskD0 {
336336 ccdb->setLocalObjectValidityChecking ();
337337 }
338338
339- template <int ReconstructionType, bool ApplyMl, typename CandType, typename CollType>
339+ template <int ReconstructionType, bool ApplyMl, typename CandType, typename CollType, typename BCsType >
340340 void processData (CandType const & candidates,
341341 CollType const &,
342- aod::TracksWExtra const &)
342+ aod::TracksWExtra const &,
343+ BCsType const &)
343344 {
344345 for (const auto & candidate : candidates) {
345346 if (!(candidate.hfflag () & 1 << aod::hf_cand_2prong::DecayType::D0ToPiK)) {
@@ -408,7 +409,7 @@ struct HfTaskD0 {
408409 }
409410 if (storeOccupancyAndIR && occEstimator != OccupancyEstimator::None) {
410411 occ = o2::hf_occupancy::getOccupancyColl (collision, occEstimator);
411- auto bc = collision.template foundBC_as <aod::BcFullInfos >();
412+ auto bc = collision.template foundBC_as <BCsType >();
412413 ir = mRateFetcher .fetch (ccdb.service , bc.timestamp (), bc.runNumber (), irSource, true ) * 1 .e -3 ; // kHz
413414 }
414415 }
@@ -514,50 +515,51 @@ struct HfTaskD0 {
514515 }
515516 }
516517 }
517- void processDataWithDCAFitterN (D0Candidates const &, Collisions const & collisions, aod::TracksWExtra const & tracks)
518+ void processDataWithDCAFitterN (D0Candidates const &, Collisions const & collisions, aod::TracksWExtra const & tracks, aod::BcFullInfos const & bcs )
518519 {
519- processData<aod::hf_cand::VertexerType::DCAFitter, false >(selectedD0Candidates, collisions, tracks);
520+ processData<aod::hf_cand::VertexerType::DCAFitter, false >(selectedD0Candidates, collisions, tracks, bcs );
520521 }
521522 PROCESS_SWITCH (HfTaskD0, processDataWithDCAFitterN, " process taskD0 with DCAFitterN" , true );
522523
523- void processDataWithDCAFitterNCent (D0Candidates const &, CollisionsCent const & collisions, aod::TracksWExtra const & tracks)
524+ void processDataWithDCAFitterNCent (D0Candidates const &, CollisionsCent const & collisions, aod::TracksWExtra const & tracks, aod::BcFullInfos const & bcs )
524525 {
525- processData<aod::hf_cand::VertexerType::DCAFitter, false >(selectedD0Candidates, collisions, tracks);
526+ processData<aod::hf_cand::VertexerType::DCAFitter, false >(selectedD0Candidates, collisions, tracks, bcs );
526527 }
527528 PROCESS_SWITCH (HfTaskD0, processDataWithDCAFitterNCent, " process taskD0 with DCAFitterN and centrality" , false );
528529
529- void processDataWithKFParticle (D0CandidatesKF const &, Collisions const & collisions, aod::TracksWExtra const & tracks)
530+ void processDataWithKFParticle (D0CandidatesKF const &, Collisions const & collisions, aod::TracksWExtra const & tracks, aod::BcFullInfos const & bcs )
530531 {
531- processData<aod::hf_cand::VertexerType::KfParticle, false >(selectedD0CandidatesKF, collisions, tracks);
532+ processData<aod::hf_cand::VertexerType::KfParticle, false >(selectedD0CandidatesKF, collisions, tracks, bcs );
532533 }
533534 PROCESS_SWITCH (HfTaskD0, processDataWithKFParticle, " process taskD0 with KFParticle" , false );
534535 // TODO: add processKFParticleCent
535536
536- void processDataWithDCAFitterNMl (D0CandidatesMl const &, Collisions const & collisions, aod::TracksWExtra const & tracks)
537+ void processDataWithDCAFitterNMl (D0CandidatesMl const &, Collisions const & collisions, aod::TracksWExtra const & tracks, aod::BcFullInfos const & bcs )
537538 {
538- processData<aod::hf_cand::VertexerType::DCAFitter, true >(selectedD0CandidatesMl, collisions, tracks);
539+ processData<aod::hf_cand::VertexerType::DCAFitter, true >(selectedD0CandidatesMl, collisions, tracks, bcs );
539540 }
540541 PROCESS_SWITCH (HfTaskD0, processDataWithDCAFitterNMl, " process taskD0 with DCAFitterN and ML selections" , false );
541542
542- void processDataWithDCAFitterNMlCent (D0CandidatesMl const &, CollisionsCent const & collisions, aod::TracksWExtra const & tracks)
543+ void processDataWithDCAFitterNMlCent (D0CandidatesMl const &, CollisionsCent const & collisions, aod::TracksWExtra const & tracks, aod::BcFullInfos const & bcs )
543544 {
544- processData<aod::hf_cand::VertexerType::DCAFitter, true >(selectedD0CandidatesMl, collisions, tracks);
545+ processData<aod::hf_cand::VertexerType::DCAFitter, true >(selectedD0CandidatesMl, collisions, tracks, bcs );
545546 }
546547 PROCESS_SWITCH (HfTaskD0, processDataWithDCAFitterNMlCent, " process taskD0 with DCAFitterN and ML selections and centrality" , false );
547548
548- void processDataWithKFParticleMl (D0CandidatesMlKF const &, Collisions const & collisions, aod::TracksWExtra const & tracks)
549+ void processDataWithKFParticleMl (D0CandidatesMlKF const &, Collisions const & collisions, aod::TracksWExtra const & tracks, aod::BcFullInfos const & bcs )
549550 {
550- processData<aod::hf_cand::VertexerType::KfParticle, true >(selectedD0CandidatesMlKF, collisions, tracks);
551+ processData<aod::hf_cand::VertexerType::KfParticle, true >(selectedD0CandidatesMlKF, collisions, tracks, bcs );
551552 }
552553 PROCESS_SWITCH (HfTaskD0, processDataWithKFParticleMl, " process taskD0 with KFParticle and ML selections" , false );
553554 // TODO: add processKFParticleMlCent
554555
555- template <int ReconstructionType, bool ApplyMl, typename CandType, typename CollType>
556+ template <int ReconstructionType, bool ApplyMl, typename CandType, typename CollType, typename BCsType >
556557 void processMc (CandType const & candidates,
557558 soa::Join<aod::McParticles, aod::HfCand2ProngMcGen> const & mcParticles,
558559 TracksSelQuality const &,
559560 CollType const & collisions,
560- aod::McCollisions const &)
561+ aod::McCollisions const &,
562+ BCsType const &)
561563 {
562564 // MC rec.
563565 for (const auto & candidate : candidates) {
@@ -578,7 +580,7 @@ struct HfTaskD0 {
578580 }
579581 if (storeOccupancyAndIR && occEstimator != OccupancyEstimator::None) {
580582 occ = o2::hf_occupancy::getOccupancyColl (collision, occEstimator);
581- auto bc = collision.template foundBC_as <aod::BcFullInfos >();
583+ auto bc = collision.template foundBC_as <BCsType >();
582584 ir = mRateFetcher .fetch (ccdb.service , bc.timestamp (), bc.runNumber (), irSource, true ) * 1 .e -3 ; // kHz
583585 }
584586 float massD0, massD0bar;
@@ -911,29 +913,32 @@ struct HfTaskD0 {
911913 soa::Join<aod::McParticles, aod::HfCand2ProngMcGen> const & mcParticles,
912914 TracksSelQuality const & tracks,
913915 CollisionsWithMcLabels const & collisions,
914- aod::McCollisions const & mcCollisions)
916+ aod::McCollisions const & mcCollisions,
917+ aod::BcFullInfos const & bcs)
915918 {
916- processMc<aod::hf_cand::VertexerType::DCAFitter, false >(selectedD0CandidatesMc, mcParticles, tracks, collisions, mcCollisions);
919+ processMc<aod::hf_cand::VertexerType::DCAFitter, false >(selectedD0CandidatesMc, mcParticles, tracks, collisions, mcCollisions, bcs );
917920 }
918921 PROCESS_SWITCH (HfTaskD0, processMcWithDCAFitterN, " Process MC with DCAFitterN" , false );
919922
920923 void processMcWithDCAFitterNCent (D0CandidatesMc const &,
921924 soa::Join<aod::McParticles, aod::HfCand2ProngMcGen> const & mcParticles,
922925 TracksSelQuality const & tracks,
923926 CollisionsWithMcLabelsCent const & collisions,
924- aod::McCollisions const & mcCollisions)
927+ aod::McCollisions const & mcCollisions,
928+ aod::BcFullInfos const & bcs)
925929 {
926- processMc<aod::hf_cand::VertexerType::DCAFitter, false >(selectedD0CandidatesMc, mcParticles, tracks, collisions, mcCollisions);
930+ processMc<aod::hf_cand::VertexerType::DCAFitter, false >(selectedD0CandidatesMc, mcParticles, tracks, collisions, mcCollisions, bcs );
927931 }
928932 PROCESS_SWITCH (HfTaskD0, processMcWithDCAFitterNCent, " Process MC with DCAFitterN and centrality" , false );
929933
930934 void processMcWithKFParticle (D0CandidatesMcKF const &,
931935 soa::Join<aod::McParticles, aod::HfCand2ProngMcGen> const & mcParticles,
932936 TracksSelQuality const & tracks,
933937 CollisionsWithMcLabels const & collisions,
934- aod::McCollisions const & mcCollisions)
938+ aod::McCollisions const & mcCollisions,
939+ aod::BcFullInfos const & bcs)
935940 {
936- processMc<aod::hf_cand::VertexerType::KfParticle, false >(selectedD0CandidatesMcKF, mcParticles, tracks, collisions, mcCollisions);
941+ processMc<aod::hf_cand::VertexerType::KfParticle, false >(selectedD0CandidatesMcKF, mcParticles, tracks, collisions, mcCollisions, bcs );
937942 }
938943 PROCESS_SWITCH (HfTaskD0, processMcWithKFParticle, " Process MC with KFParticle" , false );
939944 // TODO: add the processMcWithKFParticleCent
@@ -942,29 +947,32 @@ struct HfTaskD0 {
942947 soa::Join<aod::McParticles, aod::HfCand2ProngMcGen> const & mcParticles,
943948 TracksSelQuality const & tracks,
944949 CollisionsWithMcLabels const & collisions,
945- aod::McCollisions const & mcCollisions)
950+ aod::McCollisions const & mcCollisions,
951+ aod::BcFullInfos const & bcs)
946952 {
947- processMc<aod::hf_cand::VertexerType::DCAFitter, true >(selectedD0CandidatesMlMc, mcParticles, tracks, collisions, mcCollisions);
953+ processMc<aod::hf_cand::VertexerType::DCAFitter, true >(selectedD0CandidatesMlMc, mcParticles, tracks, collisions, mcCollisions, bcs );
948954 }
949955 PROCESS_SWITCH (HfTaskD0, processMcWithDCAFitterNMl, " Process MC with DCAFitterN and ML selection" , false );
950956
951957 void processMcWithDCAFitterNMlCent (D0CandidatesMlMc const &,
952958 soa::Join<aod::McParticles, aod::HfCand2ProngMcGen> const & mcParticles,
953959 TracksSelQuality const & tracks,
954960 CollisionsWithMcLabelsCent const & collisions,
955- aod::McCollisions const & mcCollisions)
961+ aod::McCollisions const & mcCollisions,
962+ aod::BcFullInfos const & bcs)
956963 {
957- processMc<aod::hf_cand::VertexerType::DCAFitter, true >(selectedD0CandidatesMlMc, mcParticles, tracks, collisions, mcCollisions);
964+ processMc<aod::hf_cand::VertexerType::DCAFitter, true >(selectedD0CandidatesMlMc, mcParticles, tracks, collisions, mcCollisions, bcs );
958965 }
959966 PROCESS_SWITCH (HfTaskD0, processMcWithDCAFitterNMlCent, " Process MC with DCAFitterN and ML selection and centrality" , false );
960967
961968 void processMcWithKFParticleMl (D0CandidatesMlMcKF const &,
962969 soa::Join<aod::McParticles, aod::HfCand2ProngMcGen> const & mcParticles,
963970 TracksSelQuality const & tracks,
964971 CollisionsWithMcLabels const & collisions,
965- aod::McCollisions const & mcCollisions)
972+ aod::McCollisions const & mcCollisions,
973+ aod::BcFullInfos const & bcs)
966974 {
967- processMc<aod::hf_cand::VertexerType::KfParticle, true >(selectedD0CandidatesMlMcKF, mcParticles, tracks, collisions, mcCollisions);
975+ processMc<aod::hf_cand::VertexerType::KfParticle, true >(selectedD0CandidatesMlMcKF, mcParticles, tracks, collisions, mcCollisions, bcs );
968976 }
969977 PROCESS_SWITCH (HfTaskD0, processMcWithKFParticleMl, " Process MC with KFParticle and ML selections" , false );
970978 // TODO: add the processMcWithKFParticleMlCent
0 commit comments