|
9 | 9 | // granted to it by virtue of its status as an Intergovernmental Organization |
10 | 10 | // or submit itself to any jurisdiction. |
11 | 11 |
|
12 | | -/// \file femtoDreamProducer.cxx |
| 12 | +/// \file producerCharmHadronsTrackFemtoDream.cxx |
13 | 13 | /// \brief Tasks that produces the track tables used for the pairing |
14 | 14 | /// \author Ravindra Singh, GSI, ravindra.singh@cern.ch |
15 | 15 | /// \author Biao Zhang, Heidelberg University, biao.zhang@cern.ch |
@@ -98,6 +98,12 @@ enum DecayChannel { DplusToPiKPi = 0, |
98 | 98 | DstarToD0Pi |
99 | 99 | }; |
100 | 100 |
|
| 101 | +enum class D0CandFlag : uint8_t { |
| 102 | + D0 = 0, |
| 103 | + D0Bar = 1, |
| 104 | + Reflected = 2 |
| 105 | +}; |
| 106 | + |
101 | 107 | struct HfProducerCharmHadronsTrackFemtoDream { |
102 | 108 |
|
103 | 109 | Produces<aod::FDCollisions> outputCollision; |
@@ -586,11 +592,13 @@ struct HfProducerCharmHadronsTrackFemtoDream { |
586 | 592 | bdtScoreFd); |
587 | 593 |
|
588 | 594 | } else if constexpr (Channel == DecayChannel::D0ToPiK) { |
589 | | - int signD0 = 0; |
590 | | - if (candFlag == 0) { |
591 | | - signD0 = +1; // D0 |
592 | | - } else if (candFlag == 1) { |
593 | | - signD0 = -1; // anti-D0 |
| 595 | + int signD0 = -999; |
| 596 | + if (candFlag == static_cast<int>(D0CandFlag::D0)) { |
| 597 | + signD0 = +1; |
| 598 | + } else if (candFlag == static_cast<int>(D0CandFlag::D0Bar)) { |
| 599 | + signD0 = -1; |
| 600 | + } else if (candFlag == static_cast<int>(D0CandFlag::Reflected)) { |
| 601 | + signD0 = 0; |
594 | 602 | } else { |
595 | 603 | LOG(error) << "Unexpected candFlag = " << candFlag; |
596 | 604 | } |
@@ -738,10 +746,12 @@ struct HfProducerCharmHadronsTrackFemtoDream { |
738 | 746 | LOGF(fatal, "Please check your Ml configuration!!"); |
739 | 747 | } |
740 | 748 | } |
741 | | - fillTable(0, candidate.isSelD0(), outputMlD0.at(0), outputMlD0.at(1), outputMlD0.at(2)); |
742 | | - fillTable(1, candidate.isSelD0bar(), outputMlD0bar.at(0), outputMlD0bar.at(1), outputMlD0bar.at(2)); |
743 | | - if (candidate.isSelD0() && candidate.isSelD0bar()) |
| 749 | + if (candidate.isSelD0() && candidate.isSelD0bar()) { |
744 | 750 | fillTable(2, candidate.isSelD0(), outputMlD0.at(0), outputMlD0.at(1), outputMlD0.at(2)); // tag reflection |
| 751 | + } else { |
| 752 | + fillTable(0, candidate.isSelD0(), outputMlD0.at(0), outputMlD0.at(1), outputMlD0.at(2)); |
| 753 | + fillTable(1, candidate.isSelD0bar(), outputMlD0bar.at(0), outputMlD0bar.at(1), outputMlD0bar.at(2)); |
| 754 | + } |
745 | 755 |
|
746 | 756 | } else if constexpr (Channel == DecayChannel::DstarToD0Pi) { |
747 | 757 | if constexpr (UseCharmMl) { |
|
0 commit comments