From fe4a497fbd56c6976ad7b84165b887076b8f1600 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Jacazio?= Date: Sat, 27 Dec 2025 07:30:21 +0100 Subject: [PATCH 1/3] Clean remaining usage of PIDResponse.h - Using PIDResponseTOF and PIDResponseTPC --- Common/DataModel/CMakeLists.txt | 1 - Common/DataModel/PIDResponse.h | 45 ------------------- DPG/Tasks/AOTTrack/qaEventTrack.h | 6 +-- .../AOTTrack/qaEventTrackLiteProducer.cxx | 24 +++++----- DPG/Tasks/TOF/tofSkimsTableCreator.h | 5 ++- DPG/Tasks/TPC/tpcSkimsTableCreator.h | 1 + DPG/Tasks/TPC/tpcTreeCreatorLight.h | 6 +-- PWGCF/DataModel/FemtoDerived.h | 3 +- PWGCF/DataModel/SPTableZDC.h | 1 - PWGCF/Femto3D/Core/femto3dPairTask.h | 12 ++--- PWGCF/Femto3D/DataModel/PIDutils.h | 4 +- PWGCF/Femto3D/DataModel/singletrackselector.h | 13 +++--- .../Core/femtoDreamTrackSelection.h | 1 - .../Core/FemtoUniverseTrackSelection.h | 2 + PWGCF/FemtoUniverse/DataModel/FemtoDerived.h | 3 +- .../Core/FemtoWorldTrackSelection.h | 12 +++-- .../FemtoWorld/DataModel/FemtoWorldDerived.h | 17 ++++--- PWGDQ/DataModel/ReducedInfoTables.h | 1 - PWGLF/DataModel/EPCalibrationTables.h | 6 +-- PWGLF/DataModel/FilterF1ProtonTables.h | 6 +-- PWGLF/DataModel/LFCKSSpinalignmentTables.h | 1 - PWGLF/DataModel/LFF1Tables.h | 6 +-- PWGLF/DataModel/LFParticleIdentification.h | 7 +-- PWGLF/DataModel/LFResonanceTables.h | 13 +++--- PWGLF/DataModel/LFSpincorrelationTables.h | 1 - PWGLF/DataModel/ReducedDoublePhiTables.h | 10 ++--- PWGLF/DataModel/ReducedF1ProtonTables.h | 10 ++--- PWGLF/DataModel/ReducedHeptaQuarkTables.h | 14 +++--- PWGLF/DataModel/ReducedLambdaLambdaTables.h | 10 ++--- PWGLF/DataModel/SPCalibrationTables.h | 6 +-- PWGLF/DataModel/ZDCCalTables.h | 1 - PWGLF/DataModel/cascqaanalysis.h | 16 ++++--- PWGLF/DataModel/lambdaJetpolarization.h | 16 ++++--- PWGLF/DataModel/spectraTOF.h | 30 +++++++------ PWGLF/TableProducer/Common/spvector.cxx | 1 + PWGLF/TableProducer/Common/zdcvector.cxx | 1 + PWGLF/TableProducer/Nuspex/hyperRecoTask.cxx | 3 +- .../Strangeness/sigma0builder.cxx | 11 +++-- PWGLF/Tasks/Nuspex/nucleitpcpbpb.cxx | 5 ++- PWGLF/Tasks/Nuspex/piKpRAA.cxx | 3 +- PWGLF/Tasks/QC/hypertriton3bodyQa.cxx | 3 +- PWGLF/Tasks/Resonances/chk892pp.cxx | 3 +- .../Tasks/Resonances/phianalysisrun3_PbPb.cxx | 3 +- PWGLF/Tasks/Resonances/phitutorial.cxx | 3 +- PWGLF/Tasks/Resonances/phitutorial_step0.cxx | 3 +- PWGLF/Tasks/Resonances/phitutorial_step1.cxx | 3 +- PWGLF/Tasks/Resonances/phitutorial_step2.cxx | 3 +- PWGLF/Tasks/Resonances/phitutorial_step3.cxx | 3 +- .../Strangeness/lambdaJetpolarization.cxx | 3 +- PWGLF/Tasks/Strangeness/sigmaanalysis.cxx | 1 - PWGLF/Tasks/Strangeness/v0ptinvmassplots.cxx | 2 +- PWGLF/Utils/nucleiUtils.h | 14 +++--- PWGUD/Core/UDHelpers.h | 1 - PWGUD/DataModel/SGTables.h | 9 ++-- PWGUD/DataModel/UDTables.h | 3 +- Tutorials/OpenData/flowAnalysis.cxx | 19 ++++---- Tutorials/PWGEM/emcclustertutorial.cxx | 36 +++++++-------- Tutorials/PWGUD/UDTutorial_01.cxx | 10 +++-- Tutorials/PWGUD/UDTutorial_02a.cxx | 8 ++-- Tutorials/PWGUD/UDTutorial_02b.cxx | 11 +++-- Tutorials/PWGUD/UDTutorial_03a.cxx | 12 ++--- Tutorials/PWGUD/UDTutorial_03b.cxx | 12 ++--- Tutorials/Skimming/DataModel/LFDerived.h | 3 ++ Tutorials/Skimming/spectraNucleiAnalyser.cxx | 14 +++--- Tutorials/Skimming/spectraNucleiProvider.cxx | 16 ++++--- Tutorials/Skimming/spectraNucleiReference.cxx | 15 +++---- Tutorials/Skimming/spectraTPCAnalyser.cxx | 15 ++++--- Tutorials/Skimming/spectraTPCProvider.cxx | 16 ++++--- Tutorials/Skimming/spectraTPCReference.cxx | 13 +++--- Tutorials/Skimming/spectraUPCAnalyser.cxx | 15 ++++--- Tutorials/Skimming/spectraUPCProvider.cxx | 16 +++---- Tutorials/src/pidTpcTof.cxx | 5 ++- 72 files changed, 313 insertions(+), 314 deletions(-) delete mode 100644 Common/DataModel/PIDResponse.h mode change 100755 => 100644 PWGCF/Femto3D/Core/femto3dPairTask.h diff --git a/Common/DataModel/CMakeLists.txt b/Common/DataModel/CMakeLists.txt index dc9001e61ff..f70f2a66d16 100644 --- a/Common/DataModel/CMakeLists.txt +++ b/Common/DataModel/CMakeLists.txt @@ -15,7 +15,6 @@ o2physics_add_header_only_library(DataModel EventSelection.h FT0Corrected.h Multiplicity.h - PIDResponse.h PIDResponseITS.h PIDResponseTOF.h PIDResponseTPC.h diff --git a/Common/DataModel/PIDResponse.h b/Common/DataModel/PIDResponse.h deleted file mode 100644 index a2b3c0f7390..00000000000 --- a/Common/DataModel/PIDResponse.h +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. -// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -// All rights not expressly granted are reserved. -// -// This software is distributed under the terms of the GNU General Public -// License v3 (GPL Version 3), copied verbatim in the file "COPYING". -// -// In applying this license CERN does not waive the privileges and immunities -// granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction. - -/// -/// \file PIDResponse.h -/// \author Nicolò Jacazio nicolo.jacazio@cern.ch -/// \brief Set of tables, tasks and utilities to provide the interface between -/// the analysis data model and the PID response. This is interim. To be removed -/// - -#ifndef COMMON_DATAMODEL_PIDRESPONSE_H_ -#define COMMON_DATAMODEL_PIDRESPONSE_H_ - -#include "Common/DataModel/PIDResponseTOF.h" // FIXME: remove -#include "Common/DataModel/PIDResponseTPC.h" // FIXME: remove - -namespace o2::aod -{ -namespace pidutils -{ -// Function to pack a float into a binned value in table (interim solution) -template -void packInTable(const float& valueToBin, T& table) -{ - binningType::packInTable(valueToBin, table); -} - -// Function to unpack a binned value into a float -template -float unPackInTable(const typename binningType::binned_t& valueToUnpack) -{ - return binningType::unPackInTable(valueToUnpack); -} -} // namespace pidutils -} // namespace o2::aod - -#endif // COMMON_DATAMODEL_PIDRESPONSE_H_ diff --git a/DPG/Tasks/AOTTrack/qaEventTrack.h b/DPG/Tasks/AOTTrack/qaEventTrack.h index e2230e37c87..42cbe5455ca 100644 --- a/DPG/Tasks/AOTTrack/qaEventTrack.h +++ b/DPG/Tasks/AOTTrack/qaEventTrack.h @@ -17,10 +17,10 @@ /// \brief Header file for QA tasks for the track and the event properties. /// -#include "Framework/AnalysisDataModel.h" -#include "Framework/ASoAHelpers.h" #include "Common/DataModel/TrackSelectionTables.h" -#include "Common/DataModel/PIDResponse.h" + +#include "Framework/ASoAHelpers.h" +#include "Framework/AnalysisDataModel.h" // Output table declaration namespace o2::aod diff --git a/DPG/Tasks/AOTTrack/qaEventTrackLiteProducer.cxx b/DPG/Tasks/AOTTrack/qaEventTrackLiteProducer.cxx index 0184d5b39f0..2c2ab18a49d 100644 --- a/DPG/Tasks/AOTTrack/qaEventTrackLiteProducer.cxx +++ b/DPG/Tasks/AOTTrack/qaEventTrackLiteProducer.cxx @@ -19,22 +19,24 @@ #include "qaEventTrack.h" -#include +#include "Common/Core/TrackSelection.h" +#include "Common/Core/TrackSelectionDefaults.h" +#include "Common/Core/trackUtilities.h" +#include "Common/DataModel/EventSelection.h" +#include "Common/DataModel/McCollisionExtra.h" +#include "Common/DataModel/Multiplicity.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/TrackSelectionTables.h" -#include "TRandom.h" +#include "Framework/AnalysisDataModel.h" #include "Framework/AnalysisTask.h" #include "Framework/HistogramRegistry.h" #include "Framework/runDataProcessing.h" -#include "Framework/AnalysisDataModel.h" #include "ReconstructionDataFormats/DCA.h" -#include "Common/Core/trackUtilities.h" -#include "Common/DataModel/McCollisionExtra.h" -#include "Common/DataModel/EventSelection.h" -#include "Common/DataModel/TrackSelectionTables.h" -#include "Common/DataModel/Multiplicity.h" -#include "Common/Core/TrackSelection.h" -#include "Common/Core/TrackSelectionDefaults.h" -#include "Common/TableProducer/PID/pidTOFBase.h" + +#include "TRandom.h" + +#include using namespace o2; using namespace o2::framework; diff --git a/DPG/Tasks/TOF/tofSkimsTableCreator.h b/DPG/Tasks/TOF/tofSkimsTableCreator.h index 4f0ec48ed06..f1dd4ccfb3e 100644 --- a/DPG/Tasks/TOF/tofSkimsTableCreator.h +++ b/DPG/Tasks/TOF/tofSkimsTableCreator.h @@ -19,9 +19,10 @@ #ifndef DPG_TASKS_TOF_TOFSKIMSTABLECREATOR_H_ #define DPG_TASKS_TOF_TOFSKIMSTABLECREATOR_H_ -#include "Common/TableProducer/PID/pidTOFBase.h" -#include "Common/DataModel/PIDResponse.h" #include "Common/DataModel/FT0Corrected.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/TableProducer/PID/pidTOFBase.h" + #include "Framework/AnalysisDataModel.h" namespace o2::aod diff --git a/DPG/Tasks/TPC/tpcSkimsTableCreator.h b/DPG/Tasks/TPC/tpcSkimsTableCreator.h index 61017c27d1c..0d05ce33348 100644 --- a/DPG/Tasks/TPC/tpcSkimsTableCreator.h +++ b/DPG/Tasks/TPC/tpcSkimsTableCreator.h @@ -20,6 +20,7 @@ #ifndef DPG_TASKS_TPC_TPCSKIMSTABLECREATOR_H_ #define DPG_TASKS_TPC_TPCSKIMSTABLECREATOR_H_ +#include "Common/Core/trackUtilities.h" #include "Common/DataModel/OccupancyTables.h" #include diff --git a/DPG/Tasks/TPC/tpcTreeCreatorLight.h b/DPG/Tasks/TPC/tpcTreeCreatorLight.h index df02c1de1ec..2af95cf2256 100644 --- a/DPG/Tasks/TPC/tpcTreeCreatorLight.h +++ b/DPG/Tasks/TPC/tpcTreeCreatorLight.h @@ -17,10 +17,10 @@ #ifndef DPG_TASKS_TPC_TPCTREECREATORLIGHT_H_ #define DPG_TASKS_TPC_TPCTREECREATORLIGHT_H_ -#include "Framework/AnalysisTask.h" -#include "Framework/AnalysisDataModel.h" #include "Common/Core/trackUtilities.h" -#include "Common/DataModel/PIDResponse.h" + +#include "Framework/AnalysisDataModel.h" +#include "Framework/AnalysisTask.h" enum ParticleSpecies { kPionTrack = BIT(0), diff --git a/PWGCF/DataModel/FemtoDerived.h b/PWGCF/DataModel/FemtoDerived.h index 2c6999853d4..16e52a2e262 100644 --- a/PWGCF/DataModel/FemtoDerived.h +++ b/PWGCF/DataModel/FemtoDerived.h @@ -16,7 +16,8 @@ #include "PWGHF/DataModel/CandidateSelectionTables.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/TrackSelectionTables.h" #include "Framework/ASoA.h" diff --git a/PWGCF/DataModel/SPTableZDC.h b/PWGCF/DataModel/SPTableZDC.h index 6e732ee562e..1410b038e4f 100644 --- a/PWGCF/DataModel/SPTableZDC.h +++ b/PWGCF/DataModel/SPTableZDC.h @@ -18,7 +18,6 @@ #define PWGCF_DATAMODEL_SPTABLEZDC_H_ #include "Common/Core/RecoDecay.h" -#include "Common/DataModel/PIDResponse.h" #include "Common/DataModel/TrackSelectionTables.h" #include "Framework/AnalysisDataModel.h" diff --git a/PWGCF/Femto3D/Core/femto3dPairTask.h b/PWGCF/Femto3D/Core/femto3dPairTask.h old mode 100755 new mode 100644 index db5949f4ae0..1fd450ac28b --- a/PWGCF/Femto3D/Core/femto3dPairTask.h +++ b/PWGCF/Femto3D/Core/femto3dPairTask.h @@ -20,18 +20,18 @@ // #include "Framework/ASoA.h" // #include "Framework/DataTypes.h" // #include "Framework/AnalysisDataModel.h" -// #include "Common/DataModel/PIDResponse.h" // #include "Framework/Logger.h" // #include "Common/DataModel/Multiplicity.h" -#include -#include +#include "CommonConstants/MathConstants.h" +#include "CommonConstants/PhysicsConstants.h" + +#include "TDatabasePDG.h" #include "TLorentzVector.h" #include "TVector3.h" -#include "TDatabasePDG.h" -#include "CommonConstants/PhysicsConstants.h" -#include "CommonConstants/MathConstants.h" +#include +#include double particle_mass(const int PDGcode) { diff --git a/PWGCF/Femto3D/DataModel/PIDutils.h b/PWGCF/Femto3D/DataModel/PIDutils.h index 9e28f7b5863..74a3b7ef15a 100644 --- a/PWGCF/Femto3D/DataModel/PIDutils.h +++ b/PWGCF/Femto3D/DataModel/PIDutils.h @@ -19,10 +19,12 @@ #ifndef PWGCF_FEMTO3D_DATAMODEL_PIDUTILS_H_ #define PWGCF_FEMTO3D_DATAMODEL_PIDUTILS_H_ +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" + #include #include #include -#include "Common/DataModel/PIDResponse.h" namespace o2::aod::singletrackselector { diff --git a/PWGCF/Femto3D/DataModel/singletrackselector.h b/PWGCF/Femto3D/DataModel/singletrackselector.h index d7f4f0822d3..cce33ef19aa 100644 --- a/PWGCF/Femto3D/DataModel/singletrackselector.h +++ b/PWGCF/Femto3D/DataModel/singletrackselector.h @@ -17,16 +17,17 @@ #define PWGCF_FEMTO3D_DATAMODEL_SINGLETRACKSELECTOR_H_ // #include -#include -#include +#include "PWGCF/Femto3D/DataModel/PIDutils.h" + +#include "Common/DataModel/Multiplicity.h" +#include "Common/DataModel/PIDResponseITS.h" #include "Framework/ASoA.h" #include "Framework/AnalysisDataModel.h" -#include "Common/DataModel/PIDResponse.h" -#include "Common/DataModel/PIDResponseITS.h" #include "Framework/Logger.h" -#include "Common/DataModel/Multiplicity.h" -#include "PWGCF/Femto3D/DataModel/PIDutils.h" + +#include +#include namespace o2::aod { diff --git a/PWGCF/FemtoDream/Core/femtoDreamTrackSelection.h b/PWGCF/FemtoDream/Core/femtoDreamTrackSelection.h index b0041a2e12d..5c9780d2e82 100644 --- a/PWGCF/FemtoDream/Core/femtoDreamTrackSelection.h +++ b/PWGCF/FemtoDream/Core/femtoDreamTrackSelection.h @@ -22,7 +22,6 @@ #include "Common/Core/TrackSelection.h" #include "Common/Core/TrackSelectionDefaults.h" -#include "Common/DataModel/PIDResponse.h" #include "Common/DataModel/PIDResponseITS.h" #include "Common/DataModel/TrackSelectionTables.h" diff --git a/PWGCF/FemtoUniverse/Core/FemtoUniverseTrackSelection.h b/PWGCF/FemtoUniverse/Core/FemtoUniverseTrackSelection.h index 51c711c8165..3aee759b29b 100644 --- a/PWGCF/FemtoUniverse/Core/FemtoUniverseTrackSelection.h +++ b/PWGCF/FemtoUniverse/Core/FemtoUniverseTrackSelection.h @@ -23,6 +23,8 @@ #include "Common/Core/TrackSelection.h" #include "Common/Core/TrackSelectionDefaults.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/TrackSelectionTables.h" #include "Framework/HistogramRegistry.h" diff --git a/PWGCF/FemtoUniverse/DataModel/FemtoDerived.h b/PWGCF/FemtoUniverse/DataModel/FemtoDerived.h index 4fe562d7fef..c9b158ce1b5 100644 --- a/PWGCF/FemtoUniverse/DataModel/FemtoDerived.h +++ b/PWGCF/FemtoUniverse/DataModel/FemtoDerived.h @@ -17,7 +17,8 @@ #define PWGCF_FEMTOUNIVERSE_DATAMODEL_FEMTODERIVED_H_ #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/TrackSelectionTables.h" #include "Framework/ASoA.h" diff --git a/PWGCF/FemtoWorld/Core/FemtoWorldTrackSelection.h b/PWGCF/FemtoWorld/Core/FemtoWorldTrackSelection.h index 1853be4bd3c..22869bde36f 100644 --- a/PWGCF/FemtoWorld/Core/FemtoWorldTrackSelection.h +++ b/PWGCF/FemtoWorld/Core/FemtoWorldTrackSelection.h @@ -18,14 +18,18 @@ #ifndef FEMTOWORLDTRACKSELECTION_H_ #define FEMTOWORLDTRACKSELECTION_H_ +#include "PWGCF/FemtoWorld/Core/FemtoWorldObjectSelection.h" #include "PWGCF/FemtoWorld/DataModel/FemtoWorldDerived.h" -#include "Common/DataModel/TrackSelectionTables.h" + #include "Common/Core/TrackSelection.h" #include "Common/Core/TrackSelectionDefaults.h" -#include "PWGCF/FemtoWorld/Core/FemtoWorldObjectSelection.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" +#include "Common/DataModel/TrackSelectionTables.h" -#include "ReconstructionDataFormats/PID.h" #include "Framework/HistogramRegistry.h" +#include "ReconstructionDataFormats/PID.h" + #include #include @@ -278,7 +282,7 @@ class FemtoWorldTrackSelection : public FemtoWorldObjectSelection void FemtoWorldTrackSelection::init(HistogramRegistry* registry) diff --git a/PWGCF/FemtoWorld/DataModel/FemtoWorldDerived.h b/PWGCF/FemtoWorld/DataModel/FemtoWorldDerived.h index d112f11c2ab..923729d7e84 100644 --- a/PWGCF/FemtoWorld/DataModel/FemtoWorldDerived.h +++ b/PWGCF/FemtoWorld/DataModel/FemtoWorldDerived.h @@ -12,16 +12,19 @@ #ifndef PWGCF_FEMTOWORLD_DATAMODEL_FEMTOWORLDDERIVED_H_ #define PWGCF_FEMTOWORLD_DATAMODEL_FEMTOWORLDDERIVED_H_ -#include -#include "Framework/ASoA.h" -#include "MathUtils/Utils.h" -#include "Framework/DataTypes.h" +#include "Common/DataModel/Centrality.h" #include "Common/DataModel/Multiplicity.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" +#include "Common/DataModel/TrackSelectionTables.h" + +#include "Framework/ASoA.h" #include "Framework/AnalysisDataModel.h" +#include "Framework/DataTypes.h" #include "Framework/Expressions.h" -#include "Common/DataModel/TrackSelectionTables.h" -#include "Common/DataModel/PIDResponse.h" -#include "Common/DataModel/Centrality.h" +#include "MathUtils/Utils.h" + +#include namespace o2::aod { diff --git a/PWGDQ/DataModel/ReducedInfoTables.h b/PWGDQ/DataModel/ReducedInfoTables.h index 95214a8f83e..d2c18ba97ad 100644 --- a/PWGDQ/DataModel/ReducedInfoTables.h +++ b/PWGDQ/DataModel/ReducedInfoTables.h @@ -20,7 +20,6 @@ #include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" #include "Common/DataModel/Qvectors.h" #include "Framework/ASoA.h" diff --git a/PWGLF/DataModel/EPCalibrationTables.h b/PWGLF/DataModel/EPCalibrationTables.h index 8954ccd1c9e..4f32d4f91f0 100644 --- a/PWGLF/DataModel/EPCalibrationTables.h +++ b/PWGLF/DataModel/EPCalibrationTables.h @@ -16,13 +16,13 @@ #ifndef PWGLF_DATAMODEL_EPCALIBRATIONTABLES_H_ #define PWGLF_DATAMODEL_EPCALIBRATIONTABLES_H_ -#include - -#include "Common/DataModel/PIDResponse.h" #include "Common/Core/RecoDecay.h" #include "Common/DataModel/TrackSelectionTables.h" + #include "Framework/AnalysisDataModel.h" +#include + namespace o2::aod { namespace epcalibrationtable diff --git a/PWGLF/DataModel/FilterF1ProtonTables.h b/PWGLF/DataModel/FilterF1ProtonTables.h index 0475e7cebb5..ff90b328d9e 100644 --- a/PWGLF/DataModel/FilterF1ProtonTables.h +++ b/PWGLF/DataModel/FilterF1ProtonTables.h @@ -16,13 +16,13 @@ #ifndef PWGLF_DATAMODEL_FILTERF1PROTONTABLES_H_ #define PWGLF_DATAMODEL_FILTERF1PROTONTABLES_H_ -#include - -#include "Common/DataModel/PIDResponse.h" #include "Common/Core/RecoDecay.h" #include "Common/DataModel/TrackSelectionTables.h" + #include "Framework/AnalysisDataModel.h" +#include + namespace o2::aod { namespace filtering diff --git a/PWGLF/DataModel/LFCKSSpinalignmentTables.h b/PWGLF/DataModel/LFCKSSpinalignmentTables.h index 6593d22fe6b..1e0e2a6de64 100644 --- a/PWGLF/DataModel/LFCKSSpinalignmentTables.h +++ b/PWGLF/DataModel/LFCKSSpinalignmentTables.h @@ -20,7 +20,6 @@ #include "Common/Core/RecoDecay.h" #include "Common/DataModel/Centrality.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" #include "Common/DataModel/TrackSelectionTables.h" #include "Framework/ASoA.h" diff --git a/PWGLF/DataModel/LFF1Tables.h b/PWGLF/DataModel/LFF1Tables.h index 947e9f0c3a8..2532f182306 100644 --- a/PWGLF/DataModel/LFF1Tables.h +++ b/PWGLF/DataModel/LFF1Tables.h @@ -16,13 +16,13 @@ #ifndef PWGLF_DATAMODEL_LFF1TABLES_H_ #define PWGLF_DATAMODEL_LFF1TABLES_H_ -#include - -#include "Common/DataModel/PIDResponse.h" #include "Common/Core/RecoDecay.h" #include "Common/DataModel/TrackSelectionTables.h" + #include "Framework/AnalysisDataModel.h" +#include + namespace o2::aod { /// F1 Collisions diff --git a/PWGLF/DataModel/LFParticleIdentification.h b/PWGLF/DataModel/LFParticleIdentification.h index 5a688e4c97c..43a455b333c 100644 --- a/PWGLF/DataModel/LFParticleIdentification.h +++ b/PWGLF/DataModel/LFParticleIdentification.h @@ -19,12 +19,7 @@ #ifndef PWGLF_DATAMODEL_LFPARTICLEIDENTIFICATION_H_ #define PWGLF_DATAMODEL_LFPARTICLEIDENTIFICATION_H_ -// O2 includes -#include "Framework/ASoA.h" -#include "Framework/AnalysisDataModel.h" -#include "Common/DataModel/PIDResponse.h" -#include "ReconstructionDataFormats/PID.h" -#include "Framework/Logger.h" +#include "Common/DataModel/PIDResponseTPC.h" namespace o2::aod { diff --git a/PWGLF/DataModel/LFResonanceTables.h b/PWGLF/DataModel/LFResonanceTables.h index b8f60a6fc7a..fcbe3b6378a 100644 --- a/PWGLF/DataModel/LFResonanceTables.h +++ b/PWGLF/DataModel/LFResonanceTables.h @@ -22,15 +22,18 @@ #ifndef PWGLF_DATAMODEL_LFRESONANCETABLES_H_ #define PWGLF_DATAMODEL_LFRESONANCETABLES_H_ -#include -#include +#include "PWGLF/DataModel/LFStrangenessTables.h" -#include "Common/DataModel/PIDResponse.h" #include "Common/Core/RecoDecay.h" -#include "PWGLF/DataModel/LFStrangenessTables.h" +#include "Common/DataModel/Multiplicity.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/TrackSelectionTables.h" + #include "Framework/AnalysisDataModel.h" -#include "Common/DataModel/Multiplicity.h" + +#include +#include namespace o2::aod { diff --git a/PWGLF/DataModel/LFSpincorrelationTables.h b/PWGLF/DataModel/LFSpincorrelationTables.h index f875736d794..b7161eb3654 100644 --- a/PWGLF/DataModel/LFSpincorrelationTables.h +++ b/PWGLF/DataModel/LFSpincorrelationTables.h @@ -18,7 +18,6 @@ #include "Common/Core/RecoDecay.h" #include "Common/DataModel/Centrality.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" #include "Common/DataModel/TrackSelectionTables.h" #include "Framework/ASoA.h" diff --git a/PWGLF/DataModel/ReducedDoublePhiTables.h b/PWGLF/DataModel/ReducedDoublePhiTables.h index 76cc65312a7..080dc6004bb 100644 --- a/PWGLF/DataModel/ReducedDoublePhiTables.h +++ b/PWGLF/DataModel/ReducedDoublePhiTables.h @@ -15,15 +15,15 @@ #ifndef PWGLF_DATAMODEL_REDUCEDDOUBLEPHITABLES_H_ #define PWGLF_DATAMODEL_REDUCEDDOUBLEPHITABLES_H_ -#include - +#include "Common/Core/RecoDecay.h" #include "Common/DataModel/Centrality.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" -#include "Common/Core/RecoDecay.h" #include "Common/DataModel/TrackSelectionTables.h" -#include "Framework/AnalysisDataModel.h" + #include "Framework/ASoA.h" +#include "Framework/AnalysisDataModel.h" + +#include namespace o2::aod { diff --git a/PWGLF/DataModel/ReducedF1ProtonTables.h b/PWGLF/DataModel/ReducedF1ProtonTables.h index 2f806c4bd1b..992a0eb547a 100644 --- a/PWGLF/DataModel/ReducedF1ProtonTables.h +++ b/PWGLF/DataModel/ReducedF1ProtonTables.h @@ -16,15 +16,15 @@ #ifndef PWGLF_DATAMODEL_REDUCEDF1PROTONTABLES_H_ #define PWGLF_DATAMODEL_REDUCEDF1PROTONTABLES_H_ -#include - +#include "Common/Core/RecoDecay.h" #include "Common/DataModel/Centrality.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" -#include "Common/Core/RecoDecay.h" #include "Common/DataModel/TrackSelectionTables.h" -#include "Framework/AnalysisDataModel.h" + #include "Framework/ASoA.h" +#include "Framework/AnalysisDataModel.h" + +#include namespace o2::aod { diff --git a/PWGLF/DataModel/ReducedHeptaQuarkTables.h b/PWGLF/DataModel/ReducedHeptaQuarkTables.h index b547933cb59..029a236ea13 100644 --- a/PWGLF/DataModel/ReducedHeptaQuarkTables.h +++ b/PWGLF/DataModel/ReducedHeptaQuarkTables.h @@ -15,22 +15,22 @@ #ifndef PWGLF_DATAMODEL_REDUCEDHEPTAQUARKTABLES_H_ #define PWGLF_DATAMODEL_REDUCEDHEPTAQUARKTABLES_H_ -#include - +#include "Common/Core/RecoDecay.h" #include "Common/DataModel/Centrality.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" -#include "Common/Core/RecoDecay.h" #include "Common/DataModel/TrackSelectionTables.h" -#include "Framework/AnalysisDataModel.h" + #include "Framework/ASoA.h" +#include "Framework/AnalysisDataModel.h" + +#include namespace o2::aod { namespace redhqevent { -DECLARE_SOA_COLUMN(NumPhi, numPhi, int); //! Number of negative K -DECLARE_SOA_COLUMN(NumLambda, numLambda, int); //! Number of lambda +DECLARE_SOA_COLUMN(NumPhi, numPhi, int); //! Number of negative K +DECLARE_SOA_COLUMN(NumLambda, numLambda, int); //! Number of lambda DECLARE_SOA_COLUMN(Centrality, centrality, float); //! } // namespace redhqevent DECLARE_SOA_TABLE(RedHQEvents, "AOD", "REDHQEVENT", diff --git a/PWGLF/DataModel/ReducedLambdaLambdaTables.h b/PWGLF/DataModel/ReducedLambdaLambdaTables.h index 88ea8fb0530..d0e91e43085 100644 --- a/PWGLF/DataModel/ReducedLambdaLambdaTables.h +++ b/PWGLF/DataModel/ReducedLambdaLambdaTables.h @@ -15,15 +15,15 @@ #ifndef PWGLF_DATAMODEL_REDUCEDLAMBDALAMBDATABLES_H_ #define PWGLF_DATAMODEL_REDUCEDLAMBDALAMBDATABLES_H_ -#include - +#include "Common/Core/RecoDecay.h" #include "Common/DataModel/Centrality.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" -#include "Common/Core/RecoDecay.h" #include "Common/DataModel/TrackSelectionTables.h" -#include "Framework/AnalysisDataModel.h" + #include "Framework/ASoA.h" +#include "Framework/AnalysisDataModel.h" + +#include namespace o2::aod { diff --git a/PWGLF/DataModel/SPCalibrationTables.h b/PWGLF/DataModel/SPCalibrationTables.h index 2b417ce8758..6000055c1f1 100644 --- a/PWGLF/DataModel/SPCalibrationTables.h +++ b/PWGLF/DataModel/SPCalibrationTables.h @@ -17,13 +17,13 @@ #ifndef PWGLF_DATAMODEL_SPCALIBRATIONTABLES_H_ #define PWGLF_DATAMODEL_SPCALIBRATIONTABLES_H_ -#include - -#include "Common/DataModel/PIDResponse.h" #include "Common/Core/RecoDecay.h" #include "Common/DataModel/TrackSelectionTables.h" + #include "Framework/AnalysisDataModel.h" +#include + namespace o2::aod { namespace spcalibrationtable diff --git a/PWGLF/DataModel/ZDCCalTables.h b/PWGLF/DataModel/ZDCCalTables.h index 0f2c4e0afb6..0e3a61d1e4d 100644 --- a/PWGLF/DataModel/ZDCCalTables.h +++ b/PWGLF/DataModel/ZDCCalTables.h @@ -18,7 +18,6 @@ #define PWGLF_DATAMODEL_ZDCCALTABLES_H_ #include "Common/Core/RecoDecay.h" -#include "Common/DataModel/PIDResponse.h" #include "Common/DataModel/TrackSelectionTables.h" #include "Framework/AnalysisDataModel.h" diff --git a/PWGLF/DataModel/cascqaanalysis.h b/PWGLF/DataModel/cascqaanalysis.h index 4cb9176f99e..4b1fe3000e3 100644 --- a/PWGLF/DataModel/cascqaanalysis.h +++ b/PWGLF/DataModel/cascqaanalysis.h @@ -16,17 +16,19 @@ #ifndef PWGLF_DATAMODEL_CASCQAANALYSIS_H_ #define PWGLF_DATAMODEL_CASCQAANALYSIS_H_ -#include "Framework/runDataProcessing.h" -#include "Framework/AnalysisTask.h" -#include "Common/DataModel/TrackSelectionTables.h" #include "PWGLF/DataModel/LFStrangenessTables.h" + +#include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" -#include "Common/DataModel/PIDResponse.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/Centrality.h" -#include "TRandom.h" -#include "Math/Vector4D.h" +#include "Common/DataModel/TrackSelectionTables.h" + +#include "Framework/AnalysisTask.h" +#include "Framework/runDataProcessing.h" + #include "Math/Boost.h" +#include "Math/Vector4D.h" +#include "TRandom.h" namespace o2::aod { diff --git a/PWGLF/DataModel/lambdaJetpolarization.h b/PWGLF/DataModel/lambdaJetpolarization.h index 41bd7e26b15..55a06538986 100644 --- a/PWGLF/DataModel/lambdaJetpolarization.h +++ b/PWGLF/DataModel/lambdaJetpolarization.h @@ -16,17 +16,19 @@ #ifndef PWGLF_DATAMODEL_LAMBDAJETPOLARIZATION_H_ #define PWGLF_DATAMODEL_LAMBDAJETPOLARIZATION_H_ -#include "Framework/runDataProcessing.h" -#include "Framework/AnalysisTask.h" -#include "Common/DataModel/TrackSelectionTables.h" #include "PWGLF/DataModel/LFStrangenessTables.h" + +#include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" -#include "Common/DataModel/PIDResponse.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/Centrality.h" -#include "TRandom.h" -#include "Math/Vector4D.h" +#include "Common/DataModel/TrackSelectionTables.h" + +#include "Framework/AnalysisTask.h" +#include "Framework/runDataProcessing.h" + #include "Math/Boost.h" +#include "Math/Vector4D.h" +#include "TRandom.h" namespace o2::aod { diff --git a/PWGLF/DataModel/spectraTOF.h b/PWGLF/DataModel/spectraTOF.h index 9cf4b789295..35811d322cd 100644 --- a/PWGLF/DataModel/spectraTOF.h +++ b/PWGLF/DataModel/spectraTOF.h @@ -19,27 +19,29 @@ #ifndef PWGLF_DATAMODEL_SPECTRATOF_H_ #define PWGLF_DATAMODEL_SPECTRATOF_H_ -#include +#include "PWGLF/DataModel/LFParticleIdentification.h" -// O2 includes -#include "ReconstructionDataFormats/Track.h" -#include "Framework/runDataProcessing.h" +#include "Common/Core/TrackSelection.h" +#include "Common/Core/TrackSelectionDefaults.h" +#include "Common/DataModel/Centrality.h" +#include "Common/DataModel/EventSelection.h" +#include "Common/DataModel/FT0Corrected.h" +#include "Common/DataModel/Multiplicity.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" +#include "Common/DataModel/TrackSelectionTables.h" + +#include "Framework/AnalysisDataModel.h" #include "Framework/AnalysisTask.h" #include "Framework/HistogramRegistry.h" -#include "Framework/AnalysisDataModel.h" #include "Framework/StaticFor.h" -#include "Common/DataModel/PIDResponse.h" -#include "Common/DataModel/TrackSelectionTables.h" -#include "Common/DataModel/EventSelection.h" -#include "Common/DataModel/Centrality.h" -#include "Common/DataModel/Multiplicity.h" -#include "Common/Core/TrackSelection.h" -#include "Common/DataModel/FT0Corrected.h" -#include "Common/Core/TrackSelectionDefaults.h" -#include "PWGLF/DataModel/LFParticleIdentification.h" +#include "Framework/runDataProcessing.h" +#include "ReconstructionDataFormats/Track.h" #include "TPDGCode.h" +#include + static constexpr o2::track::PID::ID Np = 9; static constexpr int NCharges = 2; static constexpr o2::track::PID::ID NpCharge = Np * NCharges; diff --git a/PWGLF/TableProducer/Common/spvector.cxx b/PWGLF/TableProducer/Common/spvector.cxx index 5689a5e13ef..17af2282ef4 100644 --- a/PWGLF/TableProducer/Common/spvector.cxx +++ b/PWGLF/TableProducer/Common/spvector.cxx @@ -22,6 +22,7 @@ #include "Common/DataModel/EventSelection.h" #include "Common/DataModel/FT0Corrected.h" #include "Common/DataModel/Multiplicity.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/Qvectors.h" #include "Common/DataModel/TrackSelectionTables.h" diff --git a/PWGLF/TableProducer/Common/zdcvector.cxx b/PWGLF/TableProducer/Common/zdcvector.cxx index f7a811a7b9e..995b0cc8448 100644 --- a/PWGLF/TableProducer/Common/zdcvector.cxx +++ b/PWGLF/TableProducer/Common/zdcvector.cxx @@ -22,6 +22,7 @@ #include "Common/DataModel/EventSelection.h" #include "Common/DataModel/FT0Corrected.h" #include "Common/DataModel/Multiplicity.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/Qvectors.h" #include "Common/DataModel/TrackSelectionTables.h" diff --git a/PWGLF/TableProducer/Nuspex/hyperRecoTask.cxx b/PWGLF/TableProducer/Nuspex/hyperRecoTask.cxx index 338f8bc971f..209798a3aed 100644 --- a/PWGLF/TableProducer/Nuspex/hyperRecoTask.cxx +++ b/PWGLF/TableProducer/Nuspex/hyperRecoTask.cxx @@ -24,19 +24,20 @@ #include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" #include "Common/DataModel/Multiplicity.h" +#include "Common/DataModel/PIDResponseTOF.h" #include "Common/TableProducer/PID/pidTOFBase.h" #include "CCDB/BasicCCDBManager.h" #include "DCAFitter/DCAFitterN.h" #include "DataFormatsParameters/GRPMagField.h" #include "DataFormatsParameters/GRPObject.h" -#include "MathUtils/BetheBlochAleph.h" #include "DetectorsBase/GeometryManager.h" #include "DetectorsBase/Propagator.h" #include "Framework/ASoAHelpers.h" #include "Framework/AnalysisDataModel.h" #include "Framework/AnalysisTask.h" #include "Framework/runDataProcessing.h" +#include "MathUtils/BetheBlochAleph.h" #include "ReconstructionDataFormats/Track.h" #include diff --git a/PWGLF/TableProducer/Strangeness/sigma0builder.cxx b/PWGLF/TableProducer/Strangeness/sigma0builder.cxx index dcbf8f8f31c..6baa5d29e44 100644 --- a/PWGLF/TableProducer/Strangeness/sigma0builder.cxx +++ b/PWGLF/TableProducer/Strangeness/sigma0builder.cxx @@ -31,7 +31,6 @@ #include "Common/Core/trackUtilities.h" #include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" -#include "Common/DataModel/PIDResponse.h" #include "Common/DataModel/TrackSelectionTables.h" #include "CCDB/BasicCCDBManager.h" @@ -84,8 +83,8 @@ struct sigma0builder { Produces sigma0mccores; // Reco sigma0 MC properties Produces sigma0mclabel; // Link of reco sigma0 to mcparticles - Produces sigma0Gens; // Generated sigma0s - Produces sigma0GenCollRefs; // references collisions from sigma0Gens[ + Produces sigma0Gens; // Generated sigma0s + Produces sigma0GenCollRefs; // references collisions from sigma0Gens[ //__________________________________________________ // Pi0 specific @@ -709,8 +708,8 @@ struct sigma0builder { auto const& MCMothersList_v02 = MCParticle_v02.template mothers_as(); if (!MCMothersList_v01.empty() && !MCMothersList_v02.empty()) { // Are there mothers? - auto const& MCMother_v01 = MCMothersList_v01.front(); // First mother - auto const& MCMother_v02 = MCMothersList_v02.front(); // First mother + auto const& MCMother_v01 = MCMothersList_v01.front(); // First mother + auto const& MCMother_v02 = MCMothersList_v02.front(); // First mother if (MCMother_v01.globalIndex() == MCMother_v02.globalIndex()) { // Is it the same mother? @@ -1261,7 +1260,7 @@ struct sigma0builder { // Pi0 if (fillPi0Tables && MCGenInfo.IsPi0) { pi0Gens(MCGenInfo.IsProducedByGenerator, MCGenInfo.MCPt, mcParticle.y()); // optional table to store generated pi0 candidates. Be careful, this is a large table! - pi0GenCollRefs(MCGenInfo.MCCollId); // link to stramccollision table + pi0GenCollRefs(MCGenInfo.MCCollId); // link to stramccollision table } // Sigma0/ASigma0 diff --git a/PWGLF/Tasks/Nuspex/nucleitpcpbpb.cxx b/PWGLF/Tasks/Nuspex/nucleitpcpbpb.cxx index 2f7aa796ec3..237c91ca787 100644 --- a/PWGLF/Tasks/Nuspex/nucleitpcpbpb.cxx +++ b/PWGLF/Tasks/Nuspex/nucleitpcpbpb.cxx @@ -22,20 +22,21 @@ #include "Common/DataModel/Centrality.h" #include "Common/DataModel/CollisionAssociationTables.h" #include "Common/DataModel/EventSelection.h" -#include "Common/DataModel/PIDResponse.h" #include "Common/DataModel/PIDResponseITS.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/TrackSelectionTables.h" #include "CCDB/BasicCCDBManager.h" #include "DataFormatsParameters/GRPMagField.h" #include "DataFormatsParameters/GRPObject.h" -#include "MathUtils/BetheBlochAleph.h" #include "DetectorsBase/GeometryManager.h" #include "DetectorsBase/Propagator.h" #include "Framework/ASoAHelpers.h" #include "Framework/AnalysisDataModel.h" #include "Framework/AnalysisTask.h" #include "Framework/runDataProcessing.h" +#include "MathUtils/BetheBlochAleph.h" #include "ReconstructionDataFormats/Track.h" #include diff --git a/PWGLF/Tasks/Nuspex/piKpRAA.cxx b/PWGLF/Tasks/Nuspex/piKpRAA.cxx index b6328ecc744..f20fdddc9c2 100644 --- a/PWGLF/Tasks/Nuspex/piKpRAA.cxx +++ b/PWGLF/Tasks/Nuspex/piKpRAA.cxx @@ -26,7 +26,8 @@ #include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/TrackSelectionTables.h" #include "CommonConstants/MathConstants.h" diff --git a/PWGLF/Tasks/QC/hypertriton3bodyQa.cxx b/PWGLF/Tasks/QC/hypertriton3bodyQa.cxx index c0b2c1dfd55..1820bc935da 100644 --- a/PWGLF/Tasks/QC/hypertriton3bodyQa.cxx +++ b/PWGLF/Tasks/QC/hypertriton3bodyQa.cxx @@ -22,7 +22,8 @@ #include "Common/Core/trackUtilities.h" #include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" -#include "Common/DataModel/PIDResponse.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/TrackSelectionTables.h" #include "Common/TableProducer/PID/pidTOFBase.h" diff --git a/PWGLF/Tasks/Resonances/chk892pp.cxx b/PWGLF/Tasks/Resonances/chk892pp.cxx index fd4e7d8d75d..1f73460f09e 100644 --- a/PWGLF/Tasks/Resonances/chk892pp.cxx +++ b/PWGLF/Tasks/Resonances/chk892pp.cxx @@ -35,7 +35,8 @@ #include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/TrackSelectionTables.h" #include "CCDB/BasicCCDBManager.h" diff --git a/PWGLF/Tasks/Resonances/phianalysisrun3_PbPb.cxx b/PWGLF/Tasks/Resonances/phianalysisrun3_PbPb.cxx index d3a4430b660..d4458be9b3b 100644 --- a/PWGLF/Tasks/Resonances/phianalysisrun3_PbPb.cxx +++ b/PWGLF/Tasks/Resonances/phianalysisrun3_PbPb.cxx @@ -19,7 +19,8 @@ #include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/TrackSelectionTables.h" #include "CCDB/BasicCCDBManager.h" diff --git a/PWGLF/Tasks/Resonances/phitutorial.cxx b/PWGLF/Tasks/Resonances/phitutorial.cxx index 5e93f7c39bc..705ead18669 100644 --- a/PWGLF/Tasks/Resonances/phitutorial.cxx +++ b/PWGLF/Tasks/Resonances/phitutorial.cxx @@ -16,7 +16,8 @@ #include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/TrackSelectionTables.h" #include "Framework/ASoA.h" diff --git a/PWGLF/Tasks/Resonances/phitutorial_step0.cxx b/PWGLF/Tasks/Resonances/phitutorial_step0.cxx index 16394389c91..475c18aa7ce 100644 --- a/PWGLF/Tasks/Resonances/phitutorial_step0.cxx +++ b/PWGLF/Tasks/Resonances/phitutorial_step0.cxx @@ -16,7 +16,8 @@ #include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/TrackSelectionTables.h" #include "Framework/ASoA.h" diff --git a/PWGLF/Tasks/Resonances/phitutorial_step1.cxx b/PWGLF/Tasks/Resonances/phitutorial_step1.cxx index 32b1760b809..0c679729e70 100644 --- a/PWGLF/Tasks/Resonances/phitutorial_step1.cxx +++ b/PWGLF/Tasks/Resonances/phitutorial_step1.cxx @@ -16,7 +16,8 @@ #include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/TrackSelectionTables.h" #include "Framework/ASoA.h" diff --git a/PWGLF/Tasks/Resonances/phitutorial_step2.cxx b/PWGLF/Tasks/Resonances/phitutorial_step2.cxx index 0a97f6d1afe..9bbd282d6c9 100644 --- a/PWGLF/Tasks/Resonances/phitutorial_step2.cxx +++ b/PWGLF/Tasks/Resonances/phitutorial_step2.cxx @@ -16,7 +16,8 @@ #include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/TrackSelectionTables.h" #include "Framework/ASoA.h" diff --git a/PWGLF/Tasks/Resonances/phitutorial_step3.cxx b/PWGLF/Tasks/Resonances/phitutorial_step3.cxx index 1ccf59aa9c2..34f4d8213a8 100644 --- a/PWGLF/Tasks/Resonances/phitutorial_step3.cxx +++ b/PWGLF/Tasks/Resonances/phitutorial_step3.cxx @@ -16,7 +16,8 @@ #include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/TrackSelectionTables.h" #include "Framework/ASoA.h" diff --git a/PWGLF/Tasks/Strangeness/lambdaJetpolarization.cxx b/PWGLF/Tasks/Strangeness/lambdaJetpolarization.cxx index 402f7ba017f..fb7dd90f33b 100644 --- a/PWGLF/Tasks/Strangeness/lambdaJetpolarization.cxx +++ b/PWGLF/Tasks/Strangeness/lambdaJetpolarization.cxx @@ -24,7 +24,8 @@ #include "Common/Core/trackUtilities.h" #include "Common/DataModel/CollisionAssociationTables.h" #include "Common/DataModel/EventSelection.h" -#include "Common/DataModel/PIDResponse.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Framework/ASoA.h" #include "Framework/AnalysisDataModel.h" diff --git a/PWGLF/Tasks/Strangeness/sigmaanalysis.cxx b/PWGLF/Tasks/Strangeness/sigmaanalysis.cxx index 3b6bd0b0730..25baa565705 100644 --- a/PWGLF/Tasks/Strangeness/sigmaanalysis.cxx +++ b/PWGLF/Tasks/Strangeness/sigmaanalysis.cxx @@ -30,7 +30,6 @@ #include "Common/Core/trackUtilities.h" #include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" -#include "Common/DataModel/PIDResponse.h" #include "Common/DataModel/TrackSelectionTables.h" #include "CCDB/BasicCCDBManager.h" diff --git a/PWGLF/Tasks/Strangeness/v0ptinvmassplots.cxx b/PWGLF/Tasks/Strangeness/v0ptinvmassplots.cxx index 01439b81844..c64d5f60f07 100644 --- a/PWGLF/Tasks/Strangeness/v0ptinvmassplots.cxx +++ b/PWGLF/Tasks/Strangeness/v0ptinvmassplots.cxx @@ -25,7 +25,7 @@ This analysis includes three processes, one for Real Data and two for MC at the #include "PWGLF/Utils/inelGt.h" #include "Common/DataModel/EventSelection.h" -#include "Common/DataModel/PIDResponse.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "CommonConstants/PhysicsConstants.h" #include "CommonUtils/StringUtils.h" diff --git a/PWGLF/Utils/nucleiUtils.h b/PWGLF/Utils/nucleiUtils.h index c6783df13a8..193daaeeaca 100644 --- a/PWGLF/Utils/nucleiUtils.h +++ b/PWGLF/Utils/nucleiUtils.h @@ -14,15 +14,15 @@ #include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" -#include "Common/DataModel/PIDResponse.h" #include "Common/DataModel/PIDResponseITS.h" +#include "Common/DataModel/PIDResponseTOF.h" #include "Common/TableProducer/PID/pidTOFBase.h" -#include "MathUtils/BetheBlochAleph.h" #include "DetectorsBase/GeometryManager.h" #include "DetectorsBase/Propagator.h" #include "Framework/HistogramRegistry.h" #include "Framework/HistogramSpec.h" +#include "MathUtils/BetheBlochAleph.h" #include "TMCProcess.h" @@ -534,11 +534,11 @@ class PidManager float pScaled = p * mMomScaling[0] + mMomScaling[1]; float betaGamma = pScaled / masses[mSpecies]; return o2::common::BetheBlochAleph(betaGamma, - mTpcBetheBlochParams[0], - mTpcBetheBlochParams[1], - mTpcBetheBlochParams[2], - mTpcBetheBlochParams[3], - mTpcBetheBlochParams[4]); + mTpcBetheBlochParams[0], + mTpcBetheBlochParams[1], + mTpcBetheBlochParams[2], + mTpcBetheBlochParams[3], + mTpcBetheBlochParams[4]); } template diff --git a/PWGUD/Core/UDHelpers.h b/PWGUD/Core/UDHelpers.h index a4137784ac5..1248164dd0f 100644 --- a/PWGUD/Core/UDHelpers.h +++ b/PWGUD/Core/UDHelpers.h @@ -20,7 +20,6 @@ #include "PWGUD/Core/UPCHelpers.h" #include "Common/DataModel/EventSelection.h" -#include "Common/DataModel/PIDResponse.h" #include "Common/DataModel/TrackSelectionTables.h" #include "CommonConstants/LHCConstants.h" diff --git a/PWGUD/DataModel/SGTables.h b/PWGUD/DataModel/SGTables.h index bf9ef68da96..ddca7abf0fd 100644 --- a/PWGUD/DataModel/SGTables.h +++ b/PWGUD/DataModel/SGTables.h @@ -12,14 +12,15 @@ #ifndef PWGUD_DATAMODEL_SGTABLES_H_ #define PWGUD_DATAMODEL_SGTABLES_H_ -#include -#include +#include "Common/DataModel/TrackSelectionTables.h" + #include "Framework/ASoA.h" #include "Framework/AnalysisDataModel.h" #include "Framework/DataTypes.h" #include "MathUtils/Utils.h" -#include "Common/DataModel/PIDResponse.h" -#include "Common/DataModel/TrackSelectionTables.h" + +#include +#include namespace o2::aod { diff --git a/PWGUD/DataModel/UDTables.h b/PWGUD/DataModel/UDTables.h index 8a4251ec74d..65fdc63eb4b 100644 --- a/PWGUD/DataModel/UDTables.h +++ b/PWGUD/DataModel/UDTables.h @@ -21,7 +21,8 @@ #ifndef PWGUD_DATAMODEL_UDTABLES_H_ #define PWGUD_DATAMODEL_UDTABLES_H_ -#include "Common/DataModel/PIDResponse.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/TrackSelectionTables.h" #include "Framework/ASoA.h" diff --git a/Tutorials/OpenData/flowAnalysis.cxx b/Tutorials/OpenData/flowAnalysis.cxx index dc5e180b300..29190eee67e 100644 --- a/Tutorials/OpenData/flowAnalysis.cxx +++ b/Tutorials/OpenData/flowAnalysis.cxx @@ -15,20 +15,23 @@ /// \author /// \since -#include -#include -#include -#include -#include -#include -#include #include #include +#include #include +#include +#include #include -#include + #include #include +#include +#include +#include +#include + +#include +#include using namespace o2; using namespace o2::framework; diff --git a/Tutorials/PWGEM/emcclustertutorial.cxx b/Tutorials/PWGEM/emcclustertutorial.cxx index a047206e70d..2e2df5912c1 100644 --- a/Tutorials/PWGEM/emcclustertutorial.cxx +++ b/Tutorials/PWGEM/emcclustertutorial.cxx @@ -9,6 +9,23 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. +#include "PWGJE/DataModel/EMCALClusters.h" + +#include "Common/DataModel/Centrality.h" +#include "Common/DataModel/EventSelection.h" + +#include "CommonDataFormat/InteractionRecord.h" +#include "DataFormatsEMCAL/AnalysisCluster.h" +#include "DataFormatsEMCAL/Cell.h" +#include "DataFormatsEMCAL/Constants.h" +#include "EMCALBase/Geometry.h" +#include "EMCALCalib/BadChannelMap.h" +#include "Framework/ASoA.h" +#include "Framework/AnalysisDataModel.h" +#include "Framework/AnalysisTask.h" +#include "Framework/HistogramRegistry.h" +#include "Framework/runDataProcessing.h" + #include #include #include @@ -17,25 +34,6 @@ #include #include -#include "Framework/runDataProcessing.h" -#include "Framework/AnalysisTask.h" -#include "Framework/AnalysisDataModel.h" -#include "Framework/ASoA.h" -#include "Framework/HistogramRegistry.h" - -#include "Common/DataModel/EventSelection.h" -#include "Common/DataModel/Centrality.h" -#include "Common/DataModel/PIDResponse.h" - -#include "EMCALBase/Geometry.h" -#include "EMCALCalib/BadChannelMap.h" -#include "PWGJE/DataModel/EMCALClusters.h" -#include "DataFormatsEMCAL/Cell.h" -#include "DataFormatsEMCAL/Constants.h" -#include "DataFormatsEMCAL/AnalysisCluster.h" - -#include "CommonDataFormat/InteractionRecord.h" - // \struct ClusterTutorial /// \brief Skeleton task for EMCal cluster tutorial /// \author Florian Jonas , Oak Ridge National Laoratory; Joshua König , Goethe-University Frankfurt; Marvin Hemmer , Goethe-University Frankfurt diff --git a/Tutorials/PWGUD/UDTutorial_01.cxx b/Tutorials/PWGUD/UDTutorial_01.cxx index c2cbf7b4f13..d19accd1ee8 100644 --- a/Tutorials/PWGUD/UDTutorial_01.cxx +++ b/Tutorials/PWGUD/UDTutorial_01.cxx @@ -13,13 +13,15 @@ // \author Paul Buehler, paul.buehler@oeaw.ac.at // \since April 2023 -#include "Framework/runDataProcessing.h" +#include "PWGUD/Core/UDHelpers.h" +#include "PWGUD/DataModel/UDTables.h" + +#include "Common/DataModel/PIDResponseTOF.h" + #include "Framework/AnalysisTask.h" +#include "Framework/runDataProcessing.h" #include "TVector3.h" -#include "Common/DataModel/PIDResponse.h" -#include "PWGUD/DataModel/UDTables.h" -#include "PWGUD/Core/UDHelpers.h" using namespace o2; using namespace o2::framework; diff --git a/Tutorials/PWGUD/UDTutorial_02a.cxx b/Tutorials/PWGUD/UDTutorial_02a.cxx index 75aa83c87a7..847191d3626 100644 --- a/Tutorials/PWGUD/UDTutorial_02a.cxx +++ b/Tutorials/PWGUD/UDTutorial_02a.cxx @@ -13,14 +13,14 @@ // \author Paul Buehler, paul.buehler@oeaw.ac.at // \since April 2023 -#include "Framework/runDataProcessing.h" +#include "PWGUD/Core/UDHelpers.h" +#include "PWGUD/DataModel/UDTables.h" + #include "Framework/AnalysisTask.h" +#include "Framework/runDataProcessing.h" #include "TDatabasePDG.h" #include "TLorentzVector.h" -#include "Common/DataModel/PIDResponse.h" -#include "PWGUD/DataModel/UDTables.h" -#include "PWGUD/Core/UDHelpers.h" using namespace o2; using namespace o2::framework; diff --git a/Tutorials/PWGUD/UDTutorial_02b.cxx b/Tutorials/PWGUD/UDTutorial_02b.cxx index 26a76a98186..ece20563991 100644 --- a/Tutorials/PWGUD/UDTutorial_02b.cxx +++ b/Tutorials/PWGUD/UDTutorial_02b.cxx @@ -13,13 +13,12 @@ // \author Paul Buehler, paul.buehler@oeaw.ac.at // \since April 2023 -#include "Framework/runDataProcessing.h" -#include "Framework/AnalysisTask.h" - -#include "Common/DataModel/PIDResponse.h" -#include "PWGUD/DataModel/UDTables.h" -#include "PWGUD/Core/UDHelpers.h" #include "PWGUD/Core/DGPIDSelector.h" +#include "PWGUD/Core/UDHelpers.h" +#include "PWGUD/DataModel/UDTables.h" + +#include "Framework/AnalysisTask.h" +#include "Framework/runDataProcessing.h" using namespace o2; using namespace o2::framework; diff --git a/Tutorials/PWGUD/UDTutorial_03a.cxx b/Tutorials/PWGUD/UDTutorial_03a.cxx index 9840123236b..4a7c91d0690 100644 --- a/Tutorials/PWGUD/UDTutorial_03a.cxx +++ b/Tutorials/PWGUD/UDTutorial_03a.cxx @@ -13,15 +13,17 @@ // \author Paul Buehler, paul.buehler@oeaw.ac.at // \since October 2023 -#include "Framework/runDataProcessing.h" +#include "PWGUD/Core/UDHelpers.h" + +#include "Common/DataModel/EventSelection.h" +#include "Common/DataModel/PIDResponseTPC.h" +#include "Common/DataModel/TrackSelectionTables.h" + #include "Framework/AnalysisTask.h" +#include "Framework/runDataProcessing.h" #include "TDatabasePDG.h" #include "TLorentzVector.h" -#include "Common/DataModel/EventSelection.h" -#include "Common/DataModel/TrackSelectionTables.h" -#include "Common/DataModel/PIDResponse.h" -#include "PWGUD/Core/UDHelpers.h" using namespace o2; using namespace o2::framework; diff --git a/Tutorials/PWGUD/UDTutorial_03b.cxx b/Tutorials/PWGUD/UDTutorial_03b.cxx index 71a144f1d1e..af5c1e1166e 100644 --- a/Tutorials/PWGUD/UDTutorial_03b.cxx +++ b/Tutorials/PWGUD/UDTutorial_03b.cxx @@ -13,15 +13,17 @@ // \author Paul Buehler, paul.buehler@oeaw.ac.at // \since October 2023 -#include "Framework/runDataProcessing.h" +#include "PWGUD/Core/UDHelpers.h" + +#include "Common/DataModel/EventSelection.h" +#include "Common/DataModel/PIDResponseTPC.h" +#include "Common/DataModel/TrackSelectionTables.h" + #include "Framework/AnalysisTask.h" +#include "Framework/runDataProcessing.h" #include "TDatabasePDG.h" #include "TLorentzVector.h" -#include "Common/DataModel/EventSelection.h" -#include "Common/DataModel/TrackSelectionTables.h" -#include "Common/DataModel/PIDResponse.h" -#include "PWGUD/Core/UDHelpers.h" using namespace o2; using namespace o2::framework; diff --git a/Tutorials/Skimming/DataModel/LFDerived.h b/Tutorials/Skimming/DataModel/LFDerived.h index c89e0da5323..12d7405a98d 100644 --- a/Tutorials/Skimming/DataModel/LFDerived.h +++ b/Tutorials/Skimming/DataModel/LFDerived.h @@ -13,6 +13,9 @@ #ifndef O2_ANALYSIS_LFDERIVED_H #define O2_ANALYSIS_LFDERIVED_H +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" + #include "Framework/ASoA.h" #include "Framework/AnalysisDataModel.h" diff --git a/Tutorials/Skimming/spectraNucleiAnalyser.cxx b/Tutorials/Skimming/spectraNucleiAnalyser.cxx index f0647db20a9..699905c2f9b 100644 --- a/Tutorials/Skimming/spectraNucleiAnalyser.cxx +++ b/Tutorials/Skimming/spectraNucleiAnalyser.cxx @@ -10,16 +10,16 @@ // or submit itself to any jurisdiction. // O2 includes -#include "ReconstructionDataFormats/Track.h" -#include "Framework/runDataProcessing.h" -#include "Framework/AnalysisTask.h" -#include "Framework/AnalysisDataModel.h" -#include "Framework/ASoAHelpers.h" -#include "Common/DataModel/PIDResponse.h" -#include "Common/DataModel/TrackSelectionTables.h" #include "DataModel/LFDerived.h" +#include "Common/DataModel/TrackSelectionTables.h" + +#include "Framework/ASoAHelpers.h" +#include "Framework/AnalysisDataModel.h" +#include "Framework/AnalysisTask.h" #include "Framework/HistogramRegistry.h" +#include "Framework/runDataProcessing.h" +#include "ReconstructionDataFormats/Track.h" #include diff --git a/Tutorials/Skimming/spectraNucleiProvider.cxx b/Tutorials/Skimming/spectraNucleiProvider.cxx index 7a76882fd7a..76a0bb9dc42 100644 --- a/Tutorials/Skimming/spectraNucleiProvider.cxx +++ b/Tutorials/Skimming/spectraNucleiProvider.cxx @@ -11,16 +11,18 @@ /// \author Nima Zardoshti , CERN // O2 includes -#include "ReconstructionDataFormats/Track.h" -#include "Framework/AnalysisTask.h" -#include "Framework/AnalysisDataModel.h" -#include "Framework/ASoAHelpers.h" -#include "Common/DataModel/PIDResponse.h" -#include "Common/DataModel/TrackSelectionTables.h" -#include "MathUtils/Utils.h" #include "DataModel/LFDerived.h" #include "Common/DataModel/EventSelection.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" +#include "Common/DataModel/TrackSelectionTables.h" + +#include "Framework/ASoAHelpers.h" +#include "Framework/AnalysisDataModel.h" +#include "Framework/AnalysisTask.h" +#include "MathUtils/Utils.h" +#include "ReconstructionDataFormats/Track.h" #include diff --git a/Tutorials/Skimming/spectraNucleiReference.cxx b/Tutorials/Skimming/spectraNucleiReference.cxx index 40535297fef..7d3bf950210 100644 --- a/Tutorials/Skimming/spectraNucleiReference.cxx +++ b/Tutorials/Skimming/spectraNucleiReference.cxx @@ -10,18 +10,17 @@ // or submit itself to any jurisdiction. // O2 includes -#include "ReconstructionDataFormats/Track.h" -#include "Framework/runDataProcessing.h" -#include "Framework/AnalysisTask.h" -#include "Framework/AnalysisDataModel.h" -#include "Framework/ASoAHelpers.h" -#include "Common/DataModel/PIDResponse.h" -#include "Common/DataModel/TrackSelectionTables.h" - #include "Common/DataModel/EventSelection.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/TrackSelectionTables.h" +#include "Framework/ASoAHelpers.h" +#include "Framework/AnalysisDataModel.h" +#include "Framework/AnalysisTask.h" #include "Framework/HistogramRegistry.h" +#include "Framework/runDataProcessing.h" +#include "ReconstructionDataFormats/Track.h" #include diff --git a/Tutorials/Skimming/spectraTPCAnalyser.cxx b/Tutorials/Skimming/spectraTPCAnalyser.cxx index 769ad0b885a..348e9d1de7c 100644 --- a/Tutorials/Skimming/spectraTPCAnalyser.cxx +++ b/Tutorials/Skimming/spectraTPCAnalyser.cxx @@ -10,14 +10,15 @@ // or submit itself to any jurisdiction. // O2 includes -#include "ReconstructionDataFormats/Track.h" -#include "Framework/AnalysisTask.h" -#include "Framework/AnalysisDataModel.h" -#include "Framework/ASoAHelpers.h" -#include "Common/DataModel/PIDResponse.h" -#include "Common/DataModel/TrackSelectionTables.h" #include "DataModel/LFDerived.h" +#include "Common/DataModel/TrackSelectionTables.h" + +#include "Framework/ASoAHelpers.h" +#include "Framework/AnalysisDataModel.h" +#include "Framework/AnalysisTask.h" +#include "ReconstructionDataFormats/Track.h" + using namespace o2; using namespace o2::framework; using namespace o2::framework::expressions; @@ -63,7 +64,7 @@ struct TPCSpectraAnalyserTask { histos.fill(HIST(hpt[i]), track.pt()); } - Filter collisionFilter = nabs(aod::collision::posZ) < cfgCutVertex; //collision filters not doing anything now? + Filter collisionFilter = nabs(aod::collision::posZ) < cfgCutVertex; // collision filters not doing anything now? Filter trackFilter = nabs(aod::lftrack::eta) < cfgCutEta; void process(soa::Filtered::iterator const& track) diff --git a/Tutorials/Skimming/spectraTPCProvider.cxx b/Tutorials/Skimming/spectraTPCProvider.cxx index c0bbf087fd3..c79115dd78f 100644 --- a/Tutorials/Skimming/spectraTPCProvider.cxx +++ b/Tutorials/Skimming/spectraTPCProvider.cxx @@ -11,15 +11,17 @@ /// \author Nima Zardoshti , CERN // O2 includes -#include "ReconstructionDataFormats/Track.h" -#include "Framework/AnalysisTask.h" -#include "Framework/AnalysisDataModel.h" -#include "Framework/ASoAHelpers.h" -#include "Common/DataModel/PIDResponse.h" -#include "Common/DataModel/TrackSelectionTables.h" +#include "DataModel/LFDerived.h" + #include "Common/DataModel/EventSelection.h" +#include "Common/DataModel/PIDResponseTPC.h" +#include "Common/DataModel/TrackSelectionTables.h" + +#include "Framework/ASoAHelpers.h" +#include "Framework/AnalysisDataModel.h" +#include "Framework/AnalysisTask.h" #include "MathUtils/Utils.h" -#include "DataModel/LFDerived.h" +#include "ReconstructionDataFormats/Track.h" using namespace o2; using namespace o2::framework; diff --git a/Tutorials/Skimming/spectraTPCReference.cxx b/Tutorials/Skimming/spectraTPCReference.cxx index 5d23fd202dc..6111c5dba92 100644 --- a/Tutorials/Skimming/spectraTPCReference.cxx +++ b/Tutorials/Skimming/spectraTPCReference.cxx @@ -10,13 +10,14 @@ // or submit itself to any jurisdiction. // O2 includes -#include "ReconstructionDataFormats/Track.h" -#include "Framework/AnalysisTask.h" -#include "Framework/AnalysisDataModel.h" -#include "Framework/ASoAHelpers.h" -#include "Common/DataModel/PIDResponse.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/TrackSelectionTables.h" +#include "Framework/ASoAHelpers.h" +#include "Framework/AnalysisDataModel.h" +#include "Framework/AnalysisTask.h" +#include "ReconstructionDataFormats/Track.h" + using namespace o2; using namespace o2::framework; using namespace o2::framework::expressions; @@ -47,7 +48,7 @@ struct TPCSpectraReferenceTask { } } - //Defining filters and input + // Defining filters and input Configurable cfgCutVertex{"cfgCutVertex", 10.0f, "Accepted z-vertex range"}; Configurable cfgCutEta{"cfgCutEta", 0.8f, "Eta range for tracks"}; Configurable cfgCutPt{"cfgCutPt", 0.0f, "Pt range for tracks"}; diff --git a/Tutorials/Skimming/spectraUPCAnalyser.cxx b/Tutorials/Skimming/spectraUPCAnalyser.cxx index cdc6c9a0c4b..740a62dc822 100644 --- a/Tutorials/Skimming/spectraUPCAnalyser.cxx +++ b/Tutorials/Skimming/spectraUPCAnalyser.cxx @@ -10,16 +10,17 @@ // or submit itself to any jurisdiction. // O2 includes -#include "ReconstructionDataFormats/Track.h" -#include "Framework/AnalysisTask.h" -#include "Framework/AnalysisDataModel.h" -#include "Framework/ASoAHelpers.h" -#include "Common/DataModel/PIDResponse.h" -#include "Common/DataModel/TrackSelectionTables.h" #include "DataModel/UDDerived.h" -#include "TLorentzVector.h" +#include "Common/DataModel/TrackSelectionTables.h" + +#include "Framework/ASoAHelpers.h" +#include "Framework/AnalysisDataModel.h" +#include "Framework/AnalysisTask.h" #include "Framework/HistogramRegistry.h" +#include "ReconstructionDataFormats/Track.h" + +#include "TLorentzVector.h" using namespace o2; using namespace o2::framework; diff --git a/Tutorials/Skimming/spectraUPCProvider.cxx b/Tutorials/Skimming/spectraUPCProvider.cxx index 053b7437080..8884c09d99b 100644 --- a/Tutorials/Skimming/spectraUPCProvider.cxx +++ b/Tutorials/Skimming/spectraUPCProvider.cxx @@ -10,18 +10,18 @@ // or submit itself to any jurisdiction. /// \author Nima Zardoshti , CERN -#include "Framework/runDataProcessing.h" -#include "Framework/AnalysisTask.h" -#include "Framework/AnalysisDataModel.h" -#include "Framework/ASoAHelpers.h" -#include "Common/DataModel/PIDResponse.h" -#include "ReconstructionDataFormats/Track.h" +#include "DataModel/UDDerived.h" -#include "Common/DataModel/TrackSelectionTables.h" #include "Common/DataModel/EventSelection.h" +#include "Common/DataModel/TrackSelectionTables.h" + +#include "Framework/ASoAHelpers.h" +#include "Framework/AnalysisDataModel.h" +#include "Framework/AnalysisTask.h" +#include "Framework/runDataProcessing.h" +#include "ReconstructionDataFormats/Track.h" #include -#include "DataModel/UDDerived.h" using namespace o2; using namespace o2::aod::evsel; diff --git a/Tutorials/src/pidTpcTof.cxx b/Tutorials/src/pidTpcTof.cxx index 777c09c1920..dab7d9e425c 100644 --- a/Tutorials/src/pidTpcTof.cxx +++ b/Tutorials/src/pidTpcTof.cxx @@ -17,11 +17,12 @@ // O2 includes #include "Framework/AnalysisTask.h" -#include "Framework/runDataProcessing.h" #include "Framework/StaticFor.h" +#include "Framework/runDataProcessing.h" // O2Physics includes -#include "Common/DataModel/PIDResponse.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" using namespace o2; using namespace o2::aod::pidutils; From 2643f282930bca1c2a3ed357111917ff2393b2df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Jacazio?= Date: Tue, 13 Jan 2026 09:21:04 +0100 Subject: [PATCH 2/3] Replace PIDResponse with PIDResponseTOF and PIDResponseTPC --- PWGLF/Tasks/Resonances/chk892Flow.cxx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/PWGLF/Tasks/Resonances/chk892Flow.cxx b/PWGLF/Tasks/Resonances/chk892Flow.cxx index 901a602c87e..96588b8a1c9 100644 --- a/PWGLF/Tasks/Resonances/chk892Flow.cxx +++ b/PWGLF/Tasks/Resonances/chk892Flow.cxx @@ -23,7 +23,8 @@ #include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" #include "Common/DataModel/Multiplicity.h" -#include "Common/DataModel/PIDResponse.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "Common/DataModel/Qvectors.h" #include "Common/DataModel/TrackSelectionTables.h" From bc4d8d58019af5a452dea410f043b3dbabe718fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Jacazio?= Date: Fri, 16 Jan 2026 12:21:08 +0100 Subject: [PATCH 3/3] Refactor rho770analysis for PID modes and histogram updates Updated the rho770analysis.cxx file to include new PID selection modes, adjust TPC cluster settings, and improve histogram filling with multiplicity. Refactored the handling of particle types and added new includes for better functionality. --- PWGLF/Tasks/Resonances/rho770analysis.cxx | 174 +++++++++++++++------- 1 file changed, 117 insertions(+), 57 deletions(-) diff --git a/PWGLF/Tasks/Resonances/rho770analysis.cxx b/PWGLF/Tasks/Resonances/rho770analysis.cxx index 48ba715031d..f6281910281 100644 --- a/PWGLF/Tasks/Resonances/rho770analysis.cxx +++ b/PWGLF/Tasks/Resonances/rho770analysis.cxx @@ -12,28 +12,42 @@ /// \file rho770analysis.cxx /// \brief rho(770)0 analysis in pp 13 & 13.6 TeV /// \author Hyunji Lim (hyunji.lim@cern.ch) -/// \since 03/12/2025 +/// \since 14/01/2026 #include "PWGLF/DataModel/LFResonanceTables.h" +#include "PWGLF/DataModel/mcCentrality.h" +#include "PWGLF/Utils/inelGt.h" +#include "Common/Core/RecoDecay.h" #include "Common/DataModel/Centrality.h" #include "Common/DataModel/EventSelection.h" +#include "Common/DataModel/PIDResponseTOF.h" +#include "Common/DataModel/PIDResponseTPC.h" #include "CommonConstants/PhysicsConstants.h" #include "DataFormatsParameters/GRPObject.h" #include "Framework/ASoAHelpers.h" #include "Framework/AnalysisTask.h" +#include "Framework/O2DatabasePDGPlugin.h" #include "Framework/runDataProcessing.h" #include -#include "TVector2.h" -#include +#include "Math/Vector4D.h" using namespace o2; using namespace o2::framework; using namespace o2::framework::expressions; using namespace o2::soa; using namespace o2::constants::physics; +using LorentzVectorPxPyPzMVector = ROOT::Math::PxPyPzMVector; +using LorentzVectorPxPyPzEVector = ROOT::Math::PxPyPzEVector; + +enum class TrackPIDMode : int { + TPCOrTOF = 0, + OnlyTPC = 1, + Combined = 2, + TPCWithTOFVeto = 3 +}; struct rho770analysis { SliceCache cache; @@ -62,17 +76,18 @@ struct rho770analysis { // kEtaRange) Configurable cfgPVContributor{"cfgPVContributor", true, "PV contributor track selection"}; // PV Contriuibutor Configurable cfgGlobalTrack{"cfgGlobalTrack", false, "Global track selection"}; // kGoldenChi2 | kDCAxy | kDCAz - Configurable cfgTPCcluster{"cfgTPCcluster", 0, "Number of TPC cluster"}; - Configurable cfgUseTPCRefit{"cfgUseTPCRefit", false, "Require TPC Refit"}; + Configurable cfgTPCcluster{"cfgTPCcluster", 1, "Number of TPC cluster"}; + Configurable cfgUseTPCRefit{"cfgUseTPCRefit", false, "Require TPC Refit"}; // refit is included in global track selection Configurable cfgUseITSRefit{"cfgUseITSRefit", false, "Require ITS Refit"}; Configurable cfgHasTOF{"cfgHasTOF", false, "Require TOF"}; + Configurable cfgTPCRows{"cfgTPCRows", 80, "Minimum Number of TPC Crossed Rows "}; // PID Configurable cMaxTOFnSigmaPion{"cMaxTOFnSigmaPion", 3.0, "TOF nSigma cut for Pion"}; // TOF Configurable cMaxTPCnSigmaPion{"cMaxTPCnSigmaPion", 5.0, "TPC nSigma cut for Pion"}; // TPC - Configurable cMaxTPCnSigmaPionnoTOF{"cMaxTPCnSigmaPionnoTOF", 2.0, "TPC nSigma cut for Pion in no TOF case"}; // TPC + Configurable cMaxTPCnSigmaPionnoTOF{"cMaxTPCnSigmaPionnoTOF", 3.0, "TPC nSigma cut for Pion in no TOF case"}; // TPC Configurable nsigmaCutCombinedPion{"nsigmaCutCombinedPion", 3.0, "Combined nSigma cut for Pion"}; - Configurable selectType{"selectType", 0, "PID selection type"}; + Configurable selectTypeInt{"selectTypeInt", static_cast(TrackPIDMode::OnlyTPC), "Pion PID selection mode: 0=TPCOrTOF, 1=OnlyTPC, 2=Combined, 3=TPCWithTOFVeto"}; // Axis ConfigurableAxis massAxis{"massAxis", {400, 0.2, 2.2}, "Invariant mass axis"}; @@ -99,6 +114,8 @@ struct rho770analysis { histos.add("hInvMass_Kstar_LSpp", "Kstar ++ invariant mass", {HistType::kTHnSparseF, {massKstarAxis, ptAxis, centAxis}}); histos.add("hInvMass_Kstar_LSmm", "Kstar -- invariant mass", {HistType::kTHnSparseF, {massKstarAxis, ptAxis, centAxis}}); + histos.add("QA/hMultiplicityPercent", "Multiplicity percentile of collision", HistType::kTH1F, {centAxis}); + histos.add("QA/Nsigma_TPC_BF", "", {HistType::kTH2F, {pTqaAxis, pidqaAxis}}); histos.add("QA/Nsigma_TOF_BF", "", {HistType::kTH2F, {pTqaAxis, pidqaAxis}}); histos.add("QA/TPC_TOF_BF", "", {HistType::kTH2F, {pidqaAxis, pidqaAxis}}); @@ -128,7 +145,7 @@ struct rho770analysis { { if (std::abs(track.pt()) < cfgMinPt) return false; - if (std::fabs(track.eta()) > cfgMaxEta) + if (std::abs(track.eta()) > cfgMaxEta) return false; if (std::abs(track.dcaXY()) > cfgMaxDCArToPVcut) return false; @@ -150,6 +167,8 @@ struct rho770analysis { return false; if (cfgGlobalTrack && !track.isGlobalTrack()) return false; + if (track.tpcNClsCrossedRows() < cfgTPCRows) + return false; return true; } @@ -157,19 +176,21 @@ struct rho770analysis { template bool selPion(const TrackType track) { - if (selectType == 0) { + const auto mode = static_cast(selectTypeInt.value); + + if (mode == TrackPIDMode::TPCOrTOF) { // TPC or TOF if (std::fabs(track.tpcNSigmaPi()) >= cMaxTPCnSigmaPion || std::fabs(track.tofNSigmaPi()) >= cMaxTOFnSigmaPion) return false; } - if (selectType == 1) { + if (mode == TrackPIDMode::OnlyTPC) { // only TPC if (std::fabs(track.tpcNSigmaPi()) >= cMaxTPCnSigmaPion) return false; } - if (selectType == 2) { + if (mode == TrackPIDMode::Combined) { // combining if (track.tpcNSigmaPi() * track.tpcNSigmaPi() + track.tofNSigmaPi() * track.tofNSigmaPi() >= nsigmaCutCombinedPion * nsigmaCutCombinedPion) return false; } - if (selectType == 3) { + if (mode == TrackPIDMode::TPCWithTOFVeto) { // TPC TOF veto if (track.hasTOF()) { if (std::fabs(track.tpcNSigmaPi()) >= cMaxTPCnSigmaPion || std::fabs(track.tofNSigmaPi()) >= cMaxTOFnSigmaPion) return false; @@ -184,19 +205,21 @@ struct rho770analysis { template bool selKaon(const TrackType track) { - if (selectType == 0) { + const auto mode = static_cast(selectTypeInt.value); + + if (mode == TrackPIDMode::TPCOrTOF) { if (std::fabs(track.tpcNSigmaKa()) >= cMaxTPCnSigmaPion || std::fabs(track.tofNSigmaKa()) >= cMaxTOFnSigmaPion) return false; } - if (selectType == 1) { + if (mode == TrackPIDMode::OnlyTPC) { if (std::fabs(track.tpcNSigmaKa()) >= cMaxTPCnSigmaPion) return false; } - if (selectType == 2) { + if (mode == TrackPIDMode::Combined) { if (track.tpcNSigmaKa() * track.tpcNSigmaKa() + track.tofNSigmaKa() * track.tofNSigmaKa() >= nsigmaCutCombinedPion * nsigmaCutCombinedPion) return false; } - if (selectType == 3) { + if (mode == TrackPIDMode::TPCWithTOFVeto) { if (track.hasTOF()) { if (std::fabs(track.tpcNSigmaKa()) >= cMaxTPCnSigmaPion || std::fabs(track.tofNSigmaKa()) >= cMaxTOFnSigmaPion) return false; @@ -208,10 +231,12 @@ struct rho770analysis { return true; } - template - void fillHistograms(const CollisionType& collision, const TracksType& dTracks) + template + void fillHistograms(const CollisionType& /*collision*/, const CenMult& multiplicity, const TracksType& dTracks) { - TLorentzVector part1, part2, reco; + histos.fill(HIST("QA/hMultiplicityPercent"), multiplicity); + + LorentzVectorPxPyPzMVector part1, part2, reco; for (const auto& [trk1, trk2] : combinations(CombinationsUpperIndexPolicy(dTracks, dTracks))) { if (trk1.index() == trk2.index()) { @@ -232,51 +257,52 @@ struct rho770analysis { continue; if (selPion(trk1) && selPion(trk2)) { - part1.SetXYZM(trk1.px(), trk1.py(), trk1.pz(), massPi); - part2.SetXYZM(trk2.px(), trk2.py(), trk2.pz(), massPi); + + part1 = LorentzVectorPxPyPzMVector(trk1.px(), trk1.py(), trk1.pz(), massPi); + part2 = LorentzVectorPxPyPzMVector(trk2.px(), trk2.py(), trk2.pz(), massPi); reco = part1 + part2; if (reco.Rapidity() > cfgMaxRap || reco.Rapidity() < cfgMinRap) continue; if (trk1.sign() * trk2.sign() < 0) { - histos.fill(HIST("hInvMass_rho770_US"), reco.M(), reco.Pt(), collision.cent()); - histos.fill(HIST("hInvMass_K0s_US"), reco.M(), reco.Pt(), collision.cent()); + histos.fill(HIST("hInvMass_rho770_US"), reco.M(), reco.Pt(), multiplicity); + histos.fill(HIST("hInvMass_K0s_US"), reco.M(), reco.Pt(), multiplicity); if constexpr (IsMC) { if (trk1.motherId() != trk2.motherId()) continue; - if (std::abs(trk1.pdgCode()) == 211 && std::abs(trk2.pdgCode()) == 211) { - if (std::abs(trk1.motherPDG()) == 113) { - histos.fill(HIST("MCL/hpT_rho770_REC"), reco.M(), reco.Pt(), collision.cent()); - } else if (std::abs(trk1.motherPDG()) == 223) { - histos.fill(HIST("MCL/hpT_omega_REC"), reco.M(), reco.Pt(), collision.cent()); - } else if (std::abs(trk1.motherPDG()) == 310) { - histos.fill(HIST("MCL/hpT_K0s_REC"), reco.M(), reco.Pt(), collision.cent()); - histos.fill(HIST("MCL/hpT_K0s_pipi_REC"), reco.M(), reco.Pt(), collision.cent()); + if (std::abs(trk1.pdgCode()) == kPiPlus && std::abs(trk2.pdgCode()) == kPiPlus) { + if (std::abs(trk1.motherPDG()) == kRho770_0) { + histos.fill(HIST("MCL/hpT_rho770_REC"), reco.M(), reco.Pt(), multiplicity); + } else if (std::abs(trk1.motherPDG()) == kOmega) { + histos.fill(HIST("MCL/hpT_omega_REC"), reco.M(), reco.Pt(), multiplicity); + } else if (std::abs(trk1.motherPDG()) == kK0Short) { + histos.fill(HIST("MCL/hpT_K0s_REC"), reco.M(), reco.Pt(), multiplicity); + histos.fill(HIST("MCL/hpT_K0s_pipi_REC"), reco.M(), reco.Pt(), multiplicity); } - } else if ((std::abs(trk1.pdgCode()) == 211 && std::abs(trk2.pdgCode()) == 321) || (std::abs(trk1.pdgCode()) == 321 && std::abs(trk2.pdgCode()) == 211)) { - if (std::abs(trk1.motherPDG()) == 313) { - histos.fill(HIST("MCL/hpT_Kstar_REC"), reco.M(), reco.Pt(), collision.cent()); + } else if ((std::abs(trk1.pdgCode()) == kPiPlus && std::abs(trk2.pdgCode()) == kKPlus) || (std::abs(trk1.pdgCode()) == kKPlus && std::abs(trk2.pdgCode()) == kPiPlus)) { + if (std::abs(trk1.motherPDG()) == kK0Star892) { + histos.fill(HIST("MCL/hpT_Kstar_REC"), reco.M(), reco.Pt(), multiplicity); } } } } else if (trk1.sign() > 0 && trk2.sign() > 0) { - histos.fill(HIST("hInvMass_rho770_LSpp"), reco.M(), reco.Pt(), collision.cent()); - histos.fill(HIST("hInvMass_K0s_LSpp"), reco.M(), reco.Pt(), collision.cent()); + histos.fill(HIST("hInvMass_rho770_LSpp"), reco.M(), reco.Pt(), multiplicity); + histos.fill(HIST("hInvMass_K0s_LSpp"), reco.M(), reco.Pt(), multiplicity); } else if (trk1.sign() < 0 && trk2.sign() < 0) { - histos.fill(HIST("hInvMass_rho770_LSmm"), reco.M(), reco.Pt(), collision.cent()); - histos.fill(HIST("hInvMass_K0s_LSmm"), reco.M(), reco.Pt(), collision.cent()); + histos.fill(HIST("hInvMass_rho770_LSmm"), reco.M(), reco.Pt(), multiplicity); + histos.fill(HIST("hInvMass_K0s_LSmm"), reco.M(), reco.Pt(), multiplicity); } } if ((selPion(trk1) && selKaon(trk2)) || (selKaon(trk1) && selPion(trk2))) { if (selPion(trk1) && selKaon(trk2)) { - part1.SetXYZM(trk1.px(), trk1.py(), trk1.pz(), massPi); - part2.SetXYZM(trk2.px(), trk2.py(), trk2.pz(), massKa); + part1 = LorentzVectorPxPyPzMVector(trk1.px(), trk1.py(), trk1.pz(), massPi); + part2 = LorentzVectorPxPyPzMVector(trk2.px(), trk2.py(), trk2.pz(), massKa); } else if (selKaon(trk1) && selPion(trk2)) { - part1.SetXYZM(trk1.px(), trk1.py(), trk1.pz(), massKa); - part2.SetXYZM(trk2.px(), trk2.py(), trk2.pz(), massPi); + part1 = LorentzVectorPxPyPzMVector(trk1.px(), trk1.py(), trk1.pz(), massKa); + part2 = LorentzVectorPxPyPzMVector(trk2.px(), trk2.py(), trk2.pz(), massPi); } reco = part1 + part2; @@ -284,21 +310,21 @@ struct rho770analysis { continue; if (trk1.sign() * trk2.sign() < 0) { - histos.fill(HIST("hInvMass_Kstar_US"), reco.M(), reco.Pt(), collision.cent()); + histos.fill(HIST("hInvMass_Kstar_US"), reco.M(), reco.Pt(), multiplicity); if constexpr (IsMC) { if (trk1.motherId() != trk2.motherId()) continue; - if ((std::abs(trk1.pdgCode()) == 211 && std::abs(trk2.pdgCode()) == 321) || (std::abs(trk1.pdgCode()) == 321 && std::abs(trk2.pdgCode()) == 211)) { - if (std::abs(trk1.motherPDG()) == 313) { - histos.fill(HIST("MCL/hpT_Kstar_Kpi_REC"), reco.M(), reco.Pt(), collision.cent()); + if ((std::abs(trk1.pdgCode()) == kPiPlus && std::abs(trk2.pdgCode()) == kKPlus) || (std::abs(trk1.pdgCode()) == kKPlus && std::abs(trk2.pdgCode()) == kPiPlus)) { + if (std::abs(trk1.motherPDG()) == kK0Star892) { + histos.fill(HIST("MCL/hpT_Kstar_Kpi_REC"), reco.M(), reco.Pt(), multiplicity); } } } } else if (trk1.sign() > 0 && trk2.sign() > 0) { - histos.fill(HIST("hInvMass_Kstar_LSpp"), reco.M(), reco.Pt(), collision.cent()); + histos.fill(HIST("hInvMass_Kstar_LSpp"), reco.M(), reco.Pt(), multiplicity); } else if (trk1.sign() < 0 && trk2.sign() < 0) { - histos.fill(HIST("hInvMass_Kstar_LSmm"), reco.M(), reco.Pt(), collision.cent()); + histos.fill(HIST("hInvMass_Kstar_LSmm"), reco.M(), reco.Pt(), multiplicity); } } } @@ -306,32 +332,66 @@ struct rho770analysis { void processData(aod::ResoCollision const& collision, aod::ResoTracks const& resotracks) { - fillHistograms(collision, resotracks); + auto multiplicity = collision.cent(); + fillHistograms(collision, multiplicity, resotracks); } PROCESS_SWITCH(rho770analysis, processData, "Process Event for data", true); - void processMCLight(aod::ResoCollision const& collision, soa::Join const& resotracks) + void processMCLight(ResoMCCols::iterator const& collision, + aod::ResoCollisionColls const& collisionIndex, + soa::Join const& collisionsMC, + soa::Join const& resotracks, + soa::Join const&) { - fillHistograms(collision, resotracks); + float multiplicity; + auto linkRow = collisionIndex.iteratorAt(collision.globalIndex()); + auto collId = linkRow.collisionId(); // Take original collision global index matched with resoCollision + + auto coll = collisionsMC.iteratorAt(collId); // Take original collision matched with resoCollision + + if (!coll.isInelGt0()) // Check reco INELgt0 (at least one PV track in |eta| < 1) about the collision + return; + + auto mcColl = coll.mcCollision_as>(); + multiplicity = mcColl.centFT0M(); + + if (!collision.isInAfterAllCuts()) + return; + + fillHistograms(collision, multiplicity, resotracks); } PROCESS_SWITCH(rho770analysis, processMCLight, "Process Event for MC", false); - void processMCTrue(ResoMCCols::iterator const& collision, aod::ResoMCParents const& resoParents) + void processMCTrue(ResoMCCols::iterator const& collision, + aod::ResoCollisionColls const& collisionIndex, + aod::ResoMCParents const& resoParents, + aod::ResoCollisionCandidatesMC const& collisionsMC, + soa::Join const&) { - auto multiplicity = collision.cent(); + float multiplicity; + auto linkRow = collisionIndex.iteratorAt(collision.globalIndex()); + auto collId = linkRow.collisionId(); // Take original collision global index matched with resoCollision + + auto coll = collisionsMC.iteratorAt(collId); // Take original collision matched with resoCollision + + if (!coll.isInelGt0()) // Check reco INELgt0 (at least one PV track in |eta| < 1) about the collision + return; + + auto mcColl = coll.mcCollision_as>(); + multiplicity = mcColl.centFT0M(); for (const auto& part : resoParents) { // loop over all pre-filtered MC particles - if (std::abs(part.pdgCode()) != 113) + if (std::abs(part.pdgCode()) != kRho770_0) continue; if (!part.producedByGenerator()) continue; if (part.y() < cfgMinRap || part.y() > cfgMaxRap) continue; - if (!(std::abs(part.daughterPDG1()) == 211 && std::abs(part.daughterPDG2()) == 211)) + if (!(std::abs(part.daughterPDG1()) == kPiPlus && std::abs(part.daughterPDG2()) == kPiPlus)) continue; - TLorentzVector truthpar; - truthpar.SetPxPyPzE(part.px(), part.py(), part.pz(), part.e()); + LorentzVectorPxPyPzEVector truthpar; + truthpar = LorentzVectorPxPyPzEVector(part.px(), part.py(), part.pz(), part.e()); auto mass = truthpar.M(); histos.fill(HIST("MCL/hpT_rho770_GEN"), 0, mass, part.pt(), multiplicity);