3333#include " Framework/OutputObjHeader.h"
3434#include " Framework/runDataProcessing.h"
3535
36- #include < map>
37- #include < string>
38- #include < vector>
39-
40- using namespace o2 ::aod;
41- using namespace o2 ::framework;
42- using namespace o2 ::framework::expressions;
4336using namespace o2 ::analysis::femto;
4437
4538struct FemtoCascadeQa {
4639
47- using FemtoCollisions = o2::soa::Join<FCols, FColMasks, FColPos, FColSphericities, FColMults>;
40+ using FemtoCollisions = o2::soa::Join<o2::aod:: FCols, o2::aod:: FColMasks, o2::aod:: FColPos, o2::aod:: FColSphericities, o2::aod:: FColMults>;
4841 using FilteredFemtoCollisions = o2::soa::Filtered<FemtoCollisions>;
4942 using FilteredFemtoCollision = FilteredFemtoCollisions::iterator;
5043
51- using FemtoCollisionsWithLabel = o2::soa::Join<FemtoCollisions, FColLabels>;
44+ using FemtoCollisionsWithLabel = o2::soa::Join<FemtoCollisions, o2::aod:: FColLabels>;
5245 using FilteredFemtoCollisionsWithLabel = o2::soa::Filtered<FemtoCollisionsWithLabel>;
5346 using FilteredFemtoCollisionWithLabel = FilteredFemtoCollisionsWithLabel::iterator;
5447
55- using FemtoXis = o2::soa::Join<FXis, FXiMasks, FXiExtras>;
56- using FemtoOmegas = o2::soa::Join<FOmegas, FOmegaMasks, FOmegaExtras>;
57- using FemtoTracks = o2::soa::Join<FTracks, FTrackDcas, FTrackExtras, FTrackPids>;
48+ using FemtoXis = o2::soa::Join<o2::aod:: FXis, o2::aod:: FXiMasks, o2::aod:: FXiExtras>;
49+ using FemtoOmegas = o2::soa::Join<o2::aod:: FOmegas, o2::aod:: FOmegaMasks, o2::aod:: FOmegaExtras>;
50+ using FemtoTracks = o2::soa::Join<o2::aod:: FTracks, o2::aod:: FTrackDcas, o2::aod:: FTrackExtras, o2::aod:: FTrackPids>;
5851
59- using FemtoXisWithLabel = o2::soa::Join<FemtoXis, FXiLabels>;
60- using FemtoOmegasWithLabel = o2::soa::Join<FemtoOmegas, FOmegaLabels>;
61- using FemtoTracksWithLabel = o2::soa::Join<FemtoTracks, FTrackLabels>;
52+ using FemtoXisWithLabel = o2::soa::Join<FemtoXis, o2::aod:: FXiLabels>;
53+ using FemtoOmegasWithLabel = o2::soa::Join<FemtoOmegas, o2::aod:: FOmegaLabels>;
54+ using FemtoTracksWithLabel = o2::soa::Join<FemtoTracks, o2::aod:: FTrackLabels>;
6255
63- SliceCache cache;
56+ o2::framework:: SliceCache cache;
6457
6558 // setup collisions
6659 collisionbuilder::ConfCollisionSelection collisionSelection;
67- Filter collisionFilter = MAKE_COLLISION_FILTER(collisionSelection);
60+ o2::framework::expressions:: Filter collisionFilter = MAKE_COLLISION_FILTER(collisionSelection);
6861 colhistmanager::CollisionHistManager colHistManager;
6962 colhistmanager::ConfCollisionBinning confCollisionBinning;
7063 colhistmanager::ConfCollisionQaBinning confCollisionQaBinning;
@@ -75,11 +68,11 @@ struct FemtoCascadeQa {
7568 particlecleaner::ConfXiCleaner1 confXiCleaner;
7669 particlecleaner::ParticleCleaner xiCleaner;
7770
78- Partition<FemtoXis> xiPartition = MAKE_CASCADE_PARTITION(confXiSelection);
79- Preslice<FemtoXis> preColXis = femtobase::stored::fColId ;
71+ o2::framework:: Partition<FemtoXis> xiPartition = MAKE_CASCADE_PARTITION(confXiSelection);
72+ o2::framework:: Preslice<FemtoXis> preColXis = o2::aod:: femtobase::stored::fColId ;
8073
81- Partition<FemtoXisWithLabel> xiWithLabelPartition = MAKE_CASCADE_PARTITION(confXiSelection);
82- Preslice<FemtoXisWithLabel> perColXisWithLabel = femtobase::stored::fColId ;
74+ o2::framework:: Partition<FemtoXisWithLabel> xiWithLabelPartition = MAKE_CASCADE_PARTITION(confXiSelection);
75+ o2::framework:: Preslice<FemtoXisWithLabel> perColXisWithLabel = o2::aod:: femtobase::stored::fColId ;
8376
8477 cascadehistmanager::ConfXiBinning confXiBinning;
8578 cascadehistmanager::ConfXiQaBinning confXiQaBinning;
@@ -97,11 +90,11 @@ struct FemtoCascadeQa {
9790 particlecleaner::ConfOmegaCleaner1 confOmegaCleaner;
9891 particlecleaner::ParticleCleaner omegaCleaner;
9992
100- Partition<FemtoOmegas> omegaPartition = MAKE_CASCADE_PARTITION(confOmegaSelection);
101- Preslice<FemtoOmegas> preColOmegas = femtobase::stored::fColId ;
93+ o2::framework:: Partition<FemtoOmegas> omegaPartition = MAKE_CASCADE_PARTITION(confOmegaSelection);
94+ o2::framework:: Preslice<FemtoOmegas> preColOmegas = o2::aod:: femtobase::stored::fColId ;
10295
103- Partition<FemtoOmegasWithLabel> omegaWithLabelPartition = MAKE_CASCADE_PARTITION(confOmegaSelection);
104- Preslice<FemtoOmegasWithLabel> perColOmegasWithLabel = femtobase::stored::fColId ;
96+ o2::framework:: Partition<FemtoOmegasWithLabel> omegaWithLabelPartition = MAKE_CASCADE_PARTITION(confOmegaSelection);
97+ o2::framework:: Preslice<FemtoOmegasWithLabel> perColOmegasWithLabel = o2::aod:: femtobase::stored::fColId ;
10598
10699 cascadehistmanager::ConfOmegaBinning confOmegaBinning;
107100 cascadehistmanager::ConfOmegaQaBinning confOmegaQaBinning;
@@ -121,42 +114,51 @@ struct FemtoCascadeQa {
121114 trackhistmanager::ConfCascadeBachelorBinning confBachelorBinning;
122115 trackhistmanager::ConfCascadeBachelorQaBinning confBachelorQaBinning;
123116
124- HistogramRegistry hRegistry{" FemtoCascadeQA" , {}, OutputObjHandlingPolicy::AnalysisObject};
117+ o2::framework:: HistogramRegistry hRegistry{" FemtoCascadeQA" , {}, o2::framework:: OutputObjHandlingPolicy::AnalysisObject};
125118
126- void init (InitContext&)
119+ void init (o2::framework:: InitContext&)
127120 {
128121 if ((doprocessXi + doprocessXiMc + doprocessOmega + doprocessOmegaMc) > 1 ) {
129122 LOG (fatal) << " Only one process can be activated" ;
130123 }
131124 bool processData = doprocessXi || doprocessOmega;
125+
132126 xiCleaner.init (confXiCleaner);
133127 omegaCleaner.init (confOmegaCleaner);
128+
129+ std::map<colhistmanager::ColHist, std::vector<o2::framework::AxisSpec>> colHistSpec;
130+ std::map<trackhistmanager::TrackHist, std::vector<o2::framework::AxisSpec>> bachelorHistSpec;
131+ std::map<trackhistmanager::TrackHist, std::vector<o2::framework::AxisSpec>> posDaughterHistSpec;
132+ std::map<trackhistmanager::TrackHist, std::vector<o2::framework::AxisSpec>> negDaughterHistSpec;
133+ std::map<cascadehistmanager::CascadeHist, std::vector<o2::framework::AxisSpec>> xiHistSpec;
134+ std::map<cascadehistmanager::CascadeHist, std::vector<o2::framework::AxisSpec>> omegaHistSpec;
135+
134136 if (processData) {
135- auto colHistSpec = colhistmanager::makeColQaHistSpecMap (confCollisionBinning, confCollisionQaBinning);
137+ colHistSpec = colhistmanager::makeColQaHistSpecMap (confCollisionBinning, confCollisionQaBinning);
136138 colHistManager.init <modes::Mode::kAnalysis_Qa >(&hRegistry, colHistSpec, confCollisionQaBinning);
137- auto bachelorHistSpec = trackhistmanager::makeTrackQaHistSpecMap (confBachelorBinning, confBachelorQaBinning);
138- auto posDaughterHistSpec = trackhistmanager::makeTrackQaHistSpecMap (confPosDaughterBinning, confPosDaughterQaBinning);
139- auto negDaughterHistSpec = trackhistmanager::makeTrackQaHistSpecMap (confNegDaughterBinning, confNegDaughterQaBinning);
139+ bachelorHistSpec = trackhistmanager::makeTrackQaHistSpecMap (confBachelorBinning, confBachelorQaBinning);
140+ posDaughterHistSpec = trackhistmanager::makeTrackQaHistSpecMap (confPosDaughterBinning, confPosDaughterQaBinning);
141+ negDaughterHistSpec = trackhistmanager::makeTrackQaHistSpecMap (confNegDaughterBinning, confNegDaughterQaBinning);
140142 if (doprocessXi) {
141- auto xiHistSpec = cascadehistmanager::makeCascadeQaHistSpecMap (confXiBinning, confXiQaBinning);
143+ xiHistSpec = cascadehistmanager::makeCascadeQaHistSpecMap (confXiBinning, confXiQaBinning);
142144 xiHistManager.init <modes::Mode::kAnalysis_Qa >(&hRegistry, xiHistSpec, confXiSelection, confXiQaBinning, bachelorHistSpec, confBachelorQaBinning, posDaughterHistSpec, confPosDaughterQaBinning, negDaughterHistSpec, confNegDaughterQaBinning);
143145 }
144146 if (doprocessOmega) {
145- auto omegaHistSpec = cascadehistmanager::makeCascadeQaHistSpecMap (confOmegaBinning, confOmegaQaBinning);
147+ omegaHistSpec = cascadehistmanager::makeCascadeQaHistSpecMap (confOmegaBinning, confOmegaQaBinning);
146148 omegaHistManager.init <modes::Mode::kAnalysis_Qa >(&hRegistry, omegaHistSpec, confOmegaSelection, confOmegaQaBinning, bachelorHistSpec, confBachelorQaBinning, posDaughterHistSpec, confPosDaughterQaBinning, negDaughterHistSpec, confNegDaughterQaBinning);
147149 }
148150 } else {
149- auto colHistSpec = colhistmanager::makeColMcQaHistSpecMap (confCollisionBinning, confCollisionQaBinning);
151+ colHistSpec = colhistmanager::makeColMcQaHistSpecMap (confCollisionBinning, confCollisionQaBinning);
150152 colHistManager.init <modes::Mode::kAnalysis_Qa_Mc >(&hRegistry, colHistSpec, confCollisionQaBinning);
151- auto bachelorHistSpec = trackhistmanager::makeTrackMcQaHistSpecMap (confBachelorBinning, confBachelorQaBinning);
152- auto posDaughterHistSpec = trackhistmanager::makeTrackMcQaHistSpecMap (confPosDaughterBinning, confPosDaughterQaBinning);
153- auto negDaughterHistSpec = trackhistmanager::makeTrackMcQaHistSpecMap (confNegDaughterBinning, confNegDaughterQaBinning);
153+ bachelorHistSpec = trackhistmanager::makeTrackMcQaHistSpecMap (confBachelorBinning, confBachelorQaBinning);
154+ posDaughterHistSpec = trackhistmanager::makeTrackMcQaHistSpecMap (confPosDaughterBinning, confPosDaughterQaBinning);
155+ negDaughterHistSpec = trackhistmanager::makeTrackMcQaHistSpecMap (confNegDaughterBinning, confNegDaughterQaBinning);
154156 if (doprocessXiMc) {
155- auto xiHistSpec = cascadehistmanager::makeCascadeMcQaHistSpecMap (confXiBinning, confXiQaBinning);
157+ xiHistSpec = cascadehistmanager::makeCascadeMcQaHistSpecMap (confXiBinning, confXiQaBinning);
156158 xiHistManager.init <modes::Mode::kAnalysis_Qa_Mc >(&hRegistry, xiHistSpec, confXiSelection, confXiQaBinning, bachelorHistSpec, confBachelorQaBinning, posDaughterHistSpec, confPosDaughterQaBinning, negDaughterHistSpec, confNegDaughterQaBinning);
157159 }
158160 if (doprocessOmegaMc) {
159- auto omegaHistSpec = cascadehistmanager::makeCascadeMcQaHistSpecMap (confOmegaBinning, confOmegaQaBinning);
161+ omegaHistSpec = cascadehistmanager::makeCascadeMcQaHistSpecMap (confOmegaBinning, confOmegaQaBinning);
160162 omegaHistManager.init <modes::Mode::kAnalysis_Qa_Mc >(&hRegistry, omegaHistSpec, confOmegaSelection, confOmegaQaBinning, bachelorHistSpec, confBachelorQaBinning, posDaughterHistSpec, confPosDaughterQaBinning, negDaughterHistSpec, confNegDaughterQaBinning);
161163 }
162164 }
@@ -166,17 +168,17 @@ struct FemtoCascadeQa {
166168 void processXi (FilteredFemtoCollision const & col, FemtoXis const & /* xis*/ , FemtoTracks const & tracks)
167169 {
168170 colHistManager.fill <modes::Mode::kAnalysis_Qa >(col);
169- auto xiSlice = xiPartition->sliceByCached (femtobase::stored::fColId , col.globalIndex (), cache);
171+ auto xiSlice = xiPartition->sliceByCached (o2::aod:: femtobase::stored::fColId , col.globalIndex (), cache);
170172 for (auto const & xi : xiSlice) {
171173 xiHistManager.fill <modes::Mode::kAnalysis_Qa >(xi, tracks);
172174 }
173175 }
174176 PROCESS_SWITCH (FemtoCascadeQa, processXi, " Process Xis" , true );
175177
176- void processXiMc (FilteredFemtoCollisionWithLabel const & col, FMcCols const & mcCols, FemtoTracksWithLabel const & tracks, FemtoXisWithLabel const & /* xis*/ , FMcParticles const & mcParticles, FMcMothers const & mcMothers, FMcPartMoths const & mcPartonicMothers)
178+ void processXiMc (FilteredFemtoCollisionWithLabel const & col, o2::aod:: FMcCols const & mcCols, FemtoTracksWithLabel const & tracks, FemtoXisWithLabel const & /* xis*/ , o2::aod:: FMcParticles const & mcParticles, o2::aod:: FMcMothers const & mcMothers, o2::aod:: FMcPartMoths const & mcPartonicMothers)
177179 {
178180 colHistManager.fill <modes::Mode::kAnalysis_Qa_Mc >(col, mcCols);
179- auto xiSlice = xiWithLabelPartition->sliceByCached (femtobase::stored::fColId , col.globalIndex (), cache);
181+ auto xiSlice = xiWithLabelPartition->sliceByCached (o2::aod:: femtobase::stored::fColId , col.globalIndex (), cache);
180182 for (auto const & xi : xiSlice) {
181183 if (!xiCleaner.isClean (xi, mcParticles, mcMothers, mcPartonicMothers)) {
182184 continue ;
@@ -189,17 +191,17 @@ struct FemtoCascadeQa {
189191 void processOmega (FilteredFemtoCollision const & col, FemtoOmegas const & /* omegas*/ , FemtoTracks const & tracks)
190192 {
191193 colHistManager.fill <modes::Mode::kAnalysis_Qa >(col);
192- auto omegaSlice = omegaPartition->sliceByCached (femtobase::stored::fColId , col.globalIndex (), cache);
194+ auto omegaSlice = omegaPartition->sliceByCached (o2::aod:: femtobase::stored::fColId , col.globalIndex (), cache);
193195 for (auto const & omega : omegaSlice) {
194196 omegaHistManager.fill <modes::Mode::kAnalysis_Qa >(omega, tracks);
195197 }
196198 }
197199 PROCESS_SWITCH (FemtoCascadeQa, processOmega, " Process Omegas" , false );
198200
199- void processOmegaMc (FilteredFemtoCollisionWithLabel const & col, FMcCols const & mcCols, FemtoTracksWithLabel const & tracks, FemtoOmegasWithLabel const & /* omegas*/ , FMcParticles const & mcParticles, FMcMothers const & mcMothers, FMcPartMoths const & mcPartonicMothers)
201+ void processOmegaMc (FilteredFemtoCollisionWithLabel const & col, o2::aod:: FMcCols const & mcCols, FemtoTracksWithLabel const & tracks, FemtoOmegasWithLabel const & /* omegas*/ , o2::aod:: FMcParticles const & mcParticles, o2::aod:: FMcMothers const & mcMothers, o2::aod:: FMcPartMoths const & mcPartonicMothers)
200202 {
201203 colHistManager.fill <modes::Mode::kAnalysis_Qa_Mc >(col, mcCols);
202- auto omegaSlice = omegaWithLabelPartition->sliceByCached (femtobase::stored::fColId , col.globalIndex (), cache);
204+ auto omegaSlice = omegaWithLabelPartition->sliceByCached (o2::aod:: femtobase::stored::fColId , col.globalIndex (), cache);
203205 for (auto const & omega : omegaSlice) {
204206 if (!omegaCleaner.isClean (omega, mcParticles, mcMothers, mcPartonicMothers)) {
205207 continue ;
@@ -210,9 +212,9 @@ struct FemtoCascadeQa {
210212 PROCESS_SWITCH (FemtoCascadeQa, processOmegaMc, " Process Omegas with MC information" , false );
211213};
212214
213- WorkflowSpec defineDataProcessing (ConfigContext const & cfgc)
215+ o2::framework:: WorkflowSpec defineDataProcessing (o2::framework:: ConfigContext const & cfgc)
214216{
215- WorkflowSpec workflow{
217+ o2::framework:: WorkflowSpec workflow{
216218 adaptAnalysisTask<FemtoCascadeQa>(cfgc),
217219 };
218220 return workflow;
0 commit comments