|
34 | 34 | #include "Common/DataModel/PIDResponseITS.h" |
35 | 35 | #include "Common/DataModel/PIDResponseTOF.h" |
36 | 36 | #include "Common/DataModel/PIDResponseTPC.h" |
| 37 | +#include "Common/DataModel/Qvectors.h" |
37 | 38 | #include "Common/DataModel/TrackSelectionTables.h" |
38 | 39 |
|
39 | 40 | #include <CCDB/BasicCCDBManager.h> |
@@ -77,7 +78,7 @@ using Run3FullPidTracks = |
77 | 78 | o2::aod::pidTOFbeta, o2::aod::pidTOFmass>; |
78 | 79 | using Run3McRecoTracks = soa::Join<Run3FullPidTracks, o2::aod::McTrackLabels>; |
79 | 80 |
|
80 | | -using Run3Vzeros = o2::soa::Join<o2::aod::V0Datas, o2::aod::V0TOFPIDs, o2::aod::V0TOFNSigmas>; |
| 81 | +using Run3Vzeros = o2::soa::Join<o2::aod::V0Datas, o2::aod::V0TOFNSigmas>; |
81 | 82 | using Run3RecoVzeros = o2::soa::Join<Run3Vzeros, o2::aod::McV0Labels>; |
82 | 83 |
|
83 | 84 | using Run3D0s = soa::Join<aod::HfCand2Prong, aod::HfSelD0, aod::HfMlD0>; |
@@ -204,13 +205,15 @@ struct FemtoProducer { |
204 | 205 | // ---- guard: enabled tables vs. enabled process function ------------------ |
205 | 206 | if ((xiBuilder.fillAnyTable() || omegaBuilder.fillAnyTable()) && |
206 | 207 | (!doprocessTracksV0sCascadesRun3pp && !doprocessTracksV0sCascadesRun3PbPb && |
| 208 | + !doprocessTracksV0sCascadesRun3PbPbWithEventShape && |
207 | 209 | !doprocessTracksV0sCascadesKinksRun3pp && !doprocessTracksV0sCascadesRun3ppMc && |
208 | 210 | !doprocessTracksV0sCascadesRun3PbPbMc)) { |
209 | 211 | LOG(fatal) << "At least one cascade table is enabled, but wrong process function is enabled. Breaking..."; |
210 | 212 | } |
211 | 213 | if ((lambdaBuilder.fillAnyTable() || antilambdaBuilder.fillAnyTable() || k0shortBuilder.fillAnyTable()) && |
212 | 214 | (!doprocessTracksV0sCascadesRun3pp && !doprocessTracksV0sCascadesRun3PbPb && |
213 | 215 | !doprocessTracksV0sRun3pp && !doprocessTracksV0sCascadesKinksRun3pp && |
| 216 | + !doprocessTracksV0sCascadesRun3PbPbWithEventShape && |
214 | 217 | !doprocessTracksV0sRun3ppMc && !doprocessTracksV0sRun3PbPb && !doprocessTracksV0sRun3PbPbMc && |
215 | 218 | !doprocessTracksV0sCascadesRun3ppMc && !doprocessTracksV0sCascadesRun3PbPbMc && |
216 | 219 | !doprocessTracksV0sKinksRun3ppMc)) { |
@@ -285,6 +288,7 @@ struct FemtoProducer { |
285 | 288 | static_cast<int>(doprocessTracksV0sRun3PbPb) + |
286 | 289 | static_cast<int>(doprocessTracksV0sCascadesRun3pp) + |
287 | 290 | static_cast<int>(doprocessTracksV0sCascadesRun3PbPb) + |
| 291 | + static_cast<int>(doprocessTracksV0sCascadesRun3PbPbWithEventShape) + |
288 | 292 | static_cast<int>(doprocessTracksKinksRun3pp) + |
289 | 293 | static_cast<int>(doprocessTracksV0sCascadesKinksRun3pp) + |
290 | 294 | static_cast<int>(doprocessTracksD0sRun3pp) + |
@@ -531,6 +535,23 @@ struct FemtoProducer { |
531 | 535 | } |
532 | 536 | PROCESS_SWITCH(FemtoProducer, processTracksV0sCascadesRun3PbPb, "Provide tracks, v0s and cascades in PbPb collisions", false); |
533 | 537 |
|
| 538 | + void processTracksV0sCascadesRun3PbPbWithEventShape(rawinputs::Run3PbPbCollisionsWithEventShape::iterator const& col, |
| 539 | + o2::aod::BCsWithTimestamps const& bcs, |
| 540 | + rawinputs::Run3FullPidTracks const& tracks, |
| 541 | + rawinputs::Run3Vzeros const& v0s, |
| 542 | + rawinputs::Run3Cascades const& cascades) |
| 543 | + { |
| 544 | + if (!processCollisions<modes::System::kPbPb_Run3>(col, bcs, tracks)) { |
| 545 | + return; |
| 546 | + } |
| 547 | + auto tracksWithItsPid = o2::soa::Attach<rawinputs::Run3FullPidTracks, o2::aod::pidits::ITSNSigmaEl, o2::aod::pidits::ITSNSigmaPi, o2::aod::pidits::ITSNSigmaKa, |
| 548 | + o2::aod::pidits::ITSNSigmaPr, o2::aod::pidits::ITSNSigmaDe, o2::aod::pidits::ITSNSigmaTr, o2::aod::pidits::ITSNSigmaHe>(tracks); |
| 549 | + processTracks<modes::System::kPbPb_Run3>(col, tracksWithItsPid); |
| 550 | + processV0s<modes::System::kPbPb_Run3>(col, tracks, v0s); |
| 551 | + processCascades<modes::System::kPbPb_Run3>(col, tracks, cascades); |
| 552 | + } |
| 553 | + PROCESS_SWITCH(FemtoProducer, processTracksV0sCascadesRun3PbPbWithEventShape, "Provide tracks, v0s and cascades in PbPb collisions with event shape information", false); |
| 554 | + |
534 | 555 | void processTracksKinksRun3pp(rawinputs::Run3PpCollisions::iterator const& col, |
535 | 556 | o2::aod::BCsWithTimestamps const& bcs, |
536 | 557 | rawinputs::Run3FullPidTracks const& tracks, |
|
0 commit comments