Skip to content

Commit 71a23dd

Browse files
committed
Feat: add new process function
1 parent dd03005 commit 71a23dd

2 files changed

Lines changed: 23 additions & 6 deletions

File tree

PWGCF/Femto/Core/collisionBuilder.h

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,6 @@
3434
#include <Framework/HistogramRegistry.h>
3535
#include <Framework/Logger.h>
3636

37-
#include <sys/stat.h>
38-
39-
#include <Rtypes.h>
40-
4137
#include <algorithm>
4238
#include <cmath>
4339
#include <cstddef>
@@ -373,7 +369,7 @@ class CollisionSelection : public baseselection::BaseSelection<float, o2::analys
373369
template <modes::System system, typename T>
374370
void setEventPlane(T const& col)
375371
{
376-
float harmonic = static_cast<float>(mQvecHarmonic);
372+
auto harmonic = static_cast<float>(mQvecHarmonic);
377373
switch (mQvecDetector) {
378374
case modes::QvecDetector::kFT0C:
379375
mEventPlane = RecoDecay::constrainAngle((std::atan2(col.qvecFT0CImVec()[0], col.qvecFT0CReVec()[0])) / harmonic, 0, harmonic); // constrain between 0 and 2pi/harmonic

PWGCF/Femto/TableProducer/femtoProducer.cxx

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
#include "Common/DataModel/PIDResponseITS.h"
3535
#include "Common/DataModel/PIDResponseTOF.h"
3636
#include "Common/DataModel/PIDResponseTPC.h"
37+
#include "Common/DataModel/Qvectors.h"
3738
#include "Common/DataModel/TrackSelectionTables.h"
3839

3940
#include <CCDB/BasicCCDBManager.h>
@@ -77,7 +78,7 @@ using Run3FullPidTracks =
7778
o2::aod::pidTOFbeta, o2::aod::pidTOFmass>;
7879
using Run3McRecoTracks = soa::Join<Run3FullPidTracks, o2::aod::McTrackLabels>;
7980

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>;
8182
using Run3RecoVzeros = o2::soa::Join<Run3Vzeros, o2::aod::McV0Labels>;
8283

8384
using Run3D0s = soa::Join<aod::HfCand2Prong, aod::HfSelD0, aod::HfMlD0>;
@@ -204,13 +205,15 @@ struct FemtoProducer {
204205
// ---- guard: enabled tables vs. enabled process function ------------------
205206
if ((xiBuilder.fillAnyTable() || omegaBuilder.fillAnyTable()) &&
206207
(!doprocessTracksV0sCascadesRun3pp && !doprocessTracksV0sCascadesRun3PbPb &&
208+
!doprocessTracksV0sCascadesRun3PbPbWithEventShape &&
207209
!doprocessTracksV0sCascadesKinksRun3pp && !doprocessTracksV0sCascadesRun3ppMc &&
208210
!doprocessTracksV0sCascadesRun3PbPbMc)) {
209211
LOG(fatal) << "At least one cascade table is enabled, but wrong process function is enabled. Breaking...";
210212
}
211213
if ((lambdaBuilder.fillAnyTable() || antilambdaBuilder.fillAnyTable() || k0shortBuilder.fillAnyTable()) &&
212214
(!doprocessTracksV0sCascadesRun3pp && !doprocessTracksV0sCascadesRun3PbPb &&
213215
!doprocessTracksV0sRun3pp && !doprocessTracksV0sCascadesKinksRun3pp &&
216+
!doprocessTracksV0sCascadesRun3PbPbWithEventShape &&
214217
!doprocessTracksV0sRun3ppMc && !doprocessTracksV0sRun3PbPb && !doprocessTracksV0sRun3PbPbMc &&
215218
!doprocessTracksV0sCascadesRun3ppMc && !doprocessTracksV0sCascadesRun3PbPbMc &&
216219
!doprocessTracksV0sKinksRun3ppMc)) {
@@ -285,6 +288,7 @@ struct FemtoProducer {
285288
static_cast<int>(doprocessTracksV0sRun3PbPb) +
286289
static_cast<int>(doprocessTracksV0sCascadesRun3pp) +
287290
static_cast<int>(doprocessTracksV0sCascadesRun3PbPb) +
291+
static_cast<int>(doprocessTracksV0sCascadesRun3PbPbWithEventShape) +
288292
static_cast<int>(doprocessTracksKinksRun3pp) +
289293
static_cast<int>(doprocessTracksV0sCascadesKinksRun3pp) +
290294
static_cast<int>(doprocessTracksD0sRun3pp) +
@@ -531,6 +535,23 @@ struct FemtoProducer {
531535
}
532536
PROCESS_SWITCH(FemtoProducer, processTracksV0sCascadesRun3PbPb, "Provide tracks, v0s and cascades in PbPb collisions", false);
533537

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+
534555
void processTracksKinksRun3pp(rawinputs::Run3PpCollisions::iterator const& col,
535556
o2::aod::BCsWithTimestamps const& bcs,
536557
rawinputs::Run3FullPidTracks const& tracks,

0 commit comments

Comments
 (0)