@@ -767,7 +767,30 @@ struct HfTaskCharmHadronsTrackFemtoDream {
767767 : NegativeCharge;
768768
769769 timeStamp = part.timeStamp ();
770-
770+ float tpcNSigma = 999 .f ;
771+ float tofNSigma = 999 .f ;
772+ switch (trackSel.pdgCodeTrack1 .value ) {
773+ case kProton :
774+ tpcNSigma = part.tpcNSigmaPr ();
775+ tofNSigma = part.tofNSigmaPr ();
776+ break ;
777+ case kPiPlus :
778+ tpcNSigma = part.tpcNSigmaPi ();
779+ tofNSigma = part.tofNSigmaPi ();
780+ break ;
781+ case kKPlus :
782+ tpcNSigma = part.tpcNSigmaKa ();
783+ tofNSigma = part.tofNSigmaKa ();
784+ break ;
785+ case kDeuteron :
786+ tpcNSigma = part.tpcNSigmaDe ();
787+ tofNSigma = part.tofNSigmaDe ();
788+ break ;
789+ default :
790+ LOG (fatal) << " Unhandled PDG code in PID switch: "
791+ << trackSel.pdgCodeTrack1 .value ;
792+ break ;
793+ }
771794 rowFemtoResultTrk (
772795 col.globalIndex (),
773796 timeStamp,
@@ -779,8 +802,8 @@ struct HfTaskCharmHadronsTrackFemtoDream {
779802 part.tpcNClsFound (),
780803 part.tpcNClsFindable (),
781804 part.tpcNClsCrossedRows (),
782- part. tpcNSigmaPr () ,
783- part. tofNSigmaPr () );
805+ tpcNSigma ,
806+ tofNSigma );
784807 }
785808
786809 // ---- Fill Collision Table ----
@@ -874,9 +897,12 @@ struct HfTaskCharmHadronsTrackFemtoDream {
874897 auto sliceCharmHad = partitionCharmHadron2Prong->sliceByCached (aod::femtodreamparticle::fdCollisionId, col.globalIndex (), cache);
875898 if (fillTableWithCharm.value && sliceCharmHad.size () == 0 ) {
876899 continue ;
900+ } else {
901+ fillTables<false , DecayChannel::D0ToPiK>(col, sliceTrk1, sliceCharmHad);
902+ }
903+ if (sliceCharmHad.size () > 0 && sliceTrk1.size () > 0 ) {
904+ doSameEvent<false , DecayChannel::D0ToPiK, FilteredCharmCand2Prongs>(sliceCharmHad, sliceTrk1, parts, col);
877905 }
878- fillTables<false , DecayChannel::D0ToPiK>(col, sliceTrk1, sliceCharmHad);
879- doSameEvent<false , DecayChannel::D0ToPiK, FilteredCharmCand2Prongs>(sliceCharmHad, sliceTrk1, parts, col);
880906 }
881907 if (mixSetting.doMixEvent ) {
882908 switch (mixSetting.mixingBinPolicy ) {
@@ -906,9 +932,12 @@ struct HfTaskCharmHadronsTrackFemtoDream {
906932 auto sliceCharmHad = partitionCharmHadronDstar->sliceByCached (aod::femtodreamparticle::fdCollisionId, col.globalIndex (), cache);
907933 if (fillTableWithCharm.value && sliceCharmHad.size () == 0 ) {
908934 continue ;
935+ } else {
936+ fillTables<false , DecayChannel::DstarToD0Pi>(col, sliceTrk1, sliceCharmHad);
937+ }
938+ if (sliceCharmHad.size () > 0 && sliceTrk1.size () > 0 ) {
939+ doSameEvent<false , DecayChannel::DstarToD0Pi, FilteredCharmCandDstars>(sliceCharmHad, sliceTrk1, parts, col);
909940 }
910- fillTables<false , DecayChannel::DstarToD0Pi>(col, sliceTrk1, sliceCharmHad);
911- doSameEvent<false , DecayChannel::DstarToD0Pi, FilteredCharmCandDstars>(sliceCharmHad, sliceTrk1, parts, col);
912941 }
913942 if (mixSetting.doMixEvent ) {
914943 switch (mixSetting.mixingBinPolicy ) {
0 commit comments