Skip to content

Commit f1c3bca

Browse files
committed
[PWGEM,PWGHF] Clean up code-check errors and warnings
1 parent e40292b commit f1c3bca

18 files changed

Lines changed: 280 additions & 322 deletions

PWGEM/PhotonMeson/TableProducer/createPCM.cxx

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
/// \file createPCM.cxx
1313
/// \brief This code produces photon data tables.
1414
/// \author Daiki Sekihata <daiki.sekihata@cern.ch>, Tokyo
15+
/// \note legacy code, please use the photonconversionbuilder tasks.
1516

1617
#include "PWGEM/PhotonMeson/DataModel/gammaTables.h"
1718
#include "PWGEM/PhotonMeson/Utils/PCMUtilities.h"
@@ -35,6 +36,7 @@
3536
#include <Framework/AnalysisDataModel.h>
3637
#include <Framework/AnalysisHelpers.h>
3738
#include <Framework/AnalysisTask.h>
39+
#include <Framework/Concepts.h>
3840
#include <Framework/Configurable.h>
3941
#include <Framework/HistogramRegistry.h>
4042
#include <Framework/HistogramSpec.h>
@@ -113,9 +115,9 @@ struct createPCM {
113115
Configurable<float> max_r_req_its{"max_r_req_its", 16.0, "min Rxy for V0 with ITS hits"};
114116
Configurable<float> min_r_tpconly{"min_r_tpconly", 32.0, "min Rxy for V0 with TPConly tracks"};
115117

116-
int mRunNumber;
117-
float d_bz;
118-
Service<o2::ccdb::BasicCCDBManager> ccdb;
118+
int mRunNumber = 0;
119+
float d_bz = 0;
120+
Service<o2::ccdb::BasicCCDBManager> ccdb{};
119121
o2::base::MatLayerCylSet* lut = nullptr;
120122
o2::vertexing::DCAFitterN<2> fitter;
121123
// Material correction in the DCA fitter
@@ -213,7 +215,7 @@ struct createPCM {
213215
}
214216
}
215217

216-
template <typename TTrack>
218+
template <o2::soa::is_iterator TTrack>
217219
bool reconstructV0(TTrack const& ele, TTrack const& pos)
218220
{
219221
bool isITSonly_pos = pos.hasITS() && !pos.hasTPC();
@@ -257,7 +259,7 @@ struct createPCM {
257259
return false;
258260
}
259261

260-
float xyz[3] = {0.f, 0.f, 0.f};
262+
std::array<float, 3> xyz = {0.f, 0.f, 0.f};
261263
Vtx_recalculation(o2::base::Propagator::Instance(), pos, ele, xyz, matCorr);
262264
float recalculatedVtxR = std::sqrt(std::pow(xyz[0], 2) + std::pow(xyz[1], 2));
263265
// LOGF(info, "recalculated vtx : x = %f , y = %f , z = %f", xyz[0], xyz[1], xyz[2]);
@@ -275,7 +277,7 @@ struct createPCM {
275277
return true;
276278
}
277279

278-
template <typename TCollision, typename TTrack>
280+
template <o2::soa::is_iterator TCollision, o2::soa::is_iterator TTrack>
279281
void fillV0Table(TCollision const& collision, TTrack const& ele, TTrack const& pos, const bool filltable)
280282
{
281283
std::array<float, 3> pVtx = {collision.posX(), collision.posY(), collision.posZ()};
@@ -323,7 +325,7 @@ struct createPCM {
323325
}
324326

325327
registry.fill(HIST("hV0xy"), svpos[0], svpos[1]); // this should have worst resolution
326-
float xyz_tmp[3] = {0.f, 0.f, 0.f};
328+
std::array<float, 3> xyz_tmp = {0.f, 0.f, 0.f};
327329
Vtx_recalculation(o2::base::Propagator::Instance(), pos, ele, xyz_tmp, matCorr);
328330
registry.fill(HIST("hV0xy_recalculated"), xyz_tmp[0], xyz_tmp[1]); // this should have good resolution
329331

@@ -343,7 +345,7 @@ struct createPCM {
343345
}
344346

345347
std::pair<int8_t, std::set<uint8_t>> its_ib_Requirement = {0, {0, 1, 2}}; // no hit on 3 ITS ib layers.
346-
template <typename TTrack>
348+
template <o2::soa::is_iterator TTrack>
347349
bool isSelected(TTrack const& track)
348350
{
349351
if (track.pt() < minpt || std::abs(track.eta()) > maxeta) {
@@ -420,7 +422,7 @@ struct createPCM {
420422
// registry.fill(HIST("hEventCounter"), 1);
421423

422424
int32_t min_sw = std::max(static_cast<int64_t>(0), collision.globalIndex());
423-
int32_t max_sw = std::min(static_cast<int64_t>(min_sw + nsw), static_cast<int64_t>(collisions.size()));
425+
int32_t max_sw = std::min(static_cast<int64_t>(min_sw + nsw), collisions.size());
424426

425427
// LOGF(info, "orphan_posTracks.size() = %d, orphan_negTracks.size() = %d", orphan_posTracks.size(), orphan_negTracks.size());
426428
negTracks_sw.reserve(max_sw - min_sw);
@@ -477,7 +479,7 @@ struct createPCM {
477479
vec_cospa.reserve(max_sw - min_sw);
478480
for (int32_t isw = min_sw; isw < max_sw; isw++) {
479481
auto collision_in_sw = collisions.rawIteratorAt(isw);
480-
if (cospa_map.find(std::make_tuple(pos.globalIndex(), ele.globalIndex(), collision_in_sw.globalIndex())) != cospa_map.end()) {
482+
if (cospa_map.contains(std::make_tuple(pos.globalIndex(), ele.globalIndex(), collision_in_sw.globalIndex()))) {
481483
vec_cospa.emplace_back(cospa_map[std::make_tuple(pos.globalIndex(), ele.globalIndex(), collision_in_sw.globalIndex())]);
482484
} else {
483485
vec_cospa.emplace_back(-999.f);
@@ -516,7 +518,7 @@ struct createPCM {
516518
}
517519
} // end of pca_map loop
518520

519-
if (is_closest_v0 && used_pair_map.find(std::make_pair(pos.globalIndex(), ele.globalIndex())) == used_pair_map.end()) {
521+
if (is_closest_v0 && !used_pair_map.contains(std::make_pair(pos.globalIndex(), ele.globalIndex()))) {
520522
// LOGF(info, "store : pos.globalIndex() = %d , ele.globalIndex() = %d , collision.globalIndex() = %d , cospa = %f , pca = %f", std::get<0>(key), std::get<1>(key), std::get<2>(key), value, pca_map[key]);
521523
fillV0Table(collision_most_prob, ele, pos, true);
522524
used_pair_map[std::make_pair(pos.globalIndex(), ele.globalIndex())] = true;
@@ -563,16 +565,16 @@ struct createPCM {
563565
if (ele.sign() < 0) {
564566
fillV0Table(collision, ele, pos, true);
565567
} else {
566-
fillV0Table(collision, pos, ele, true);
568+
fillV0Table(collision, pos, ele, true); // NOLINT(readability-suspicious-call-argument) in case the ele is actually positivley charged
567569
}
568570
}
569571
} // end of collision loop
570572
} // end of process
571573
PROCESS_SWITCH(createPCM, processTrkCollAsso, "create V0s with track-to-collision associator", false);
572574
};
573575

574-
WorkflowSpec defineDataProcessing(ConfigContext const& cfgc)
576+
WorkflowSpec defineDataProcessing(ConfigContext const& context)
575577
{
576578
return WorkflowSpec{
577-
adaptAnalysisTask<createPCM>(cfgc, TaskName{"v0-finder"})};
579+
adaptAnalysisTask<createPCM>(context, TaskName{"v0-finder"})};
578580
}

PWGEM/PhotonMeson/TableProducer/photonconversionbuilder.cxx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -576,7 +576,7 @@ struct PhotonConversionBuilder {
576576
}
577577

578578
std::array<float, 3> xyz = {0.f, 0.f, 0.f};
579-
Vtx_recalculationParCov(o2::base::Propagator::Instance(), pTrack, nTrack, xyz.data(), matCorr);
579+
Vtx_recalculationParCov(o2::base::Propagator::Instance(), pTrack, nTrack, xyz, matCorr);
580580
float rxy_tmp = RecoDecay::sqrtSumOfSquares(xyz[0], xyz[1]);
581581
if (rxy_tmp > maxX + margin_r_tpc) {
582582
return;

PWGEM/PhotonMeson/TableProducer/skimmerGammaConversion.cxx

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@
4343
#include <Framework/AnalysisDataModel.h>
4444
#include <Framework/AnalysisHelpers.h>
4545
#include <Framework/AnalysisTask.h>
46+
#include <Framework/Concepts.h>
4647
#include <Framework/Configurable.h>
4748
#include <Framework/HistogramRegistry.h>
4849
#include <Framework/HistogramSpec.h>
@@ -58,6 +59,7 @@
5859
#include <KFPVertex.h>
5960
#include <KFParticle.h>
6061

62+
#include <array>
6163
#include <cmath>
6264
#include <cstddef>
6365
#include <map>
@@ -104,7 +106,7 @@ struct skimmerGammaConversion {
104106
};
105107

106108
// declare this here in order to be able to access it from a lambda
107-
std::shared_ptr<TH1> fMotherSizesHisto{};
109+
std::shared_ptr<TH1> fMotherSizesHisto;
108110

109111
enum eV0Confirmation {
110112
kV0In,
@@ -131,7 +133,7 @@ struct skimmerGammaConversion {
131133
Produces<aod::V0DaughterMcParticles> fFuncTableMCTrackInformation;
132134
Produces<aod::MCParticleIndex> fIndexTableMCTrackIndex;
133135

134-
Service<o2::ccdb::BasicCCDBManager> ccdb;
136+
Service<o2::ccdb::BasicCCDBManager> ccdb{};
135137

136138
int runNumber = -1;
137139
o2::base::MatLayerCylSet* lut = nullptr;
@@ -166,7 +168,7 @@ struct skimmerGammaConversion {
166168
}
167169

168170
auto run3grp_timestamp = bc.timestamp();
169-
o2::parameters::GRPObject* grpo = ccdb->getForTimeStamp<o2::parameters::GRPObject>(ccdbPath, run3grp_timestamp);
171+
auto* grpo = ccdb->getForTimeStamp<o2::parameters::GRPObject>(ccdbPath, run3grp_timestamp);
170172
o2::parameters::GRPMagField* grpmag = nullptr;
171173

172174
if (grpo) {
@@ -189,7 +191,7 @@ struct skimmerGammaConversion {
189191
KFParticle::SetField(magneticField);
190192
}
191193

192-
template <typename TTRACK, typename TKFP>
194+
template <o2::soa::is_iterator TTRACK, typename TKFP>
193195
void fillTrackTable(TTRACK const& theTrack, TKFP const& kfp)
194196
{
195197
v0legs(theTrack.collisionId(),
@@ -201,8 +203,8 @@ struct skimmerGammaConversion {
201203
theTrack.itsClusterSizes(), theTrack.itsChi2NCl(), theTrack.detectorMap());
202204
}
203205

204-
template <typename TTRACK>
205-
void fillfFuncTableMCTrackInformation(TTRACK theTrack, bool sameMother)
206+
template <o2::soa::is_iterator TTRACK>
207+
void fillfFuncTableMCTrackInformation(TTRACK const& theTrack, bool sameMother)
206208
{
207209
fFuncTableMCTrackInformation(
208210
theTrack.mcParticle().pdgCode(),
@@ -212,7 +214,7 @@ struct skimmerGammaConversion {
212214
sameMother);
213215
}
214216

215-
template <typename TTrack>
217+
template <o2::soa::is_iterator TTrack>
216218
bool checkV0leg(TTrack const& track)
217219
{
218220
if (track.pt() < minpt || abs(track.eta()) > maxeta) {
@@ -236,24 +238,24 @@ struct skimmerGammaConversion {
236238
return true;
237239
}
238240

239-
template <typename TTrack, typename TCollision, typename TV0>
241+
template <o2::soa::is_table TTrack, o2::soa::is_iterator TCollision, o2::soa::is_iterator TV0>
240242
void fillV0KF(TCollision const& collision, TV0 const& v0)
241243
{
242244
auto pos = v0.template posTrack_as<TTrack>(); // positive daughter
243245
auto ele = v0.template negTrack_as<TTrack>(); // negative daughter
244246

245-
float xyz[3] = {0.f, 0.f, 0.f};
247+
std::array<float, 3> xyz = {0.f, 0.f, 0.f};
246248
Vtx_recalculation(o2::base::Propagator::Instance(), pos, ele, xyz);
247249

248250
KFPTrack kfp_track_pos = createKFPTrackFromTrack(pos);
249251
KFPTrack kfp_track_ele = createKFPTrackFromTrack(ele);
250252
KFParticle kfp_pos(kfp_track_pos, -11);
251253
KFParticle kfp_ele(kfp_track_ele, 11);
252-
const KFParticle* GammaDaughters[2] = {&kfp_pos, &kfp_ele};
254+
std::array<const KFParticle*, 2> GammaDaughters = {&kfp_pos, &kfp_ele};
253255

254256
KFParticle gammaKF;
255257
gammaKF.SetConstructMethod(2);
256-
gammaKF.Construct(GammaDaughters, 2);
258+
gammaKF.Construct(GammaDaughters.data(), 2);
257259
if (kfMassConstrain > -0.1) {
258260
gammaKF.SetNonlinearMassConstraint(kfMassConstrain);
259261
}
@@ -265,7 +267,7 @@ struct skimmerGammaConversion {
265267

266268
// Transport the gamma to the recalculated decay vertex
267269
KFParticle gammaKF_DecayVtx = gammaKF; // with respect to (0,0,0)
268-
gammaKF_DecayVtx.TransportToPoint(xyz);
270+
gammaKF_DecayVtx.TransportToPoint(xyz.data());
269271

270272
//// Apply a topological constraint of the gamma to the PV. Parameters will be given at the primary vertex.
271273
// KFParticle gammaKF_PV = gammaKF_DecayVtx;
@@ -278,8 +280,8 @@ struct skimmerGammaConversion {
278280

279281
KFParticle kfp_pos_DecayVtx = kfp_pos;
280282
KFParticle kfp_ele_DecayVtx = kfp_ele;
281-
kfp_pos_DecayVtx.TransportToPoint(xyz);
282-
kfp_ele_DecayVtx.TransportToPoint(xyz);
283+
kfp_pos_DecayVtx.TransportToPoint(xyz.data());
284+
kfp_ele_DecayVtx.TransportToPoint(xyz.data());
283285

284286
// KFParticle kfp_pos_PV = kfp_pos_DecayVtx;
285287
// KFParticle kfp_ele_PV = kfp_ele_DecayVtx;
@@ -407,7 +409,7 @@ struct skimmerGammaConversion {
407409
}
408410
PROCESS_SWITCH(skimmerGammaConversion, processMc, "process reconstructed and mc info ", false);
409411

410-
template <typename TV0, typename TTRACK>
412+
template <o2::soa::is_iterator TV0, o2::soa::is_iterator TTRACK>
411413
eV0Confirmation isTrueV0(TV0 const& /*theV0*/,
412414
TTRACK const& theTrackPos,
413415
TTRACK const& theTrackNeg)
@@ -516,7 +518,7 @@ struct skimmerGammaConversion {
516518
}
517519
};
518520

519-
WorkflowSpec defineDataProcessing(ConfigContext const& cfgc)
521+
WorkflowSpec defineDataProcessing(ConfigContext const& context)
520522
{
521-
return WorkflowSpec{adaptAnalysisTask<skimmerGammaConversion>(cfgc, TaskName{"skimmer-gamma-conversion"})};
523+
return WorkflowSpec{adaptAnalysisTask<skimmerGammaConversion>(context, TaskName{"skimmer-gamma-conversion"})};
522524
}

PWGEM/PhotonMeson/TableProducer/skimmerGammaConversionTruthOnlyMc.cxx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ struct skimmerGammaConversionTruthOnlyMc {
111111
}
112112
};
113113

114-
WorkflowSpec defineDataProcessing(ConfigContext const& cfgc)
114+
WorkflowSpec defineDataProcessing(ConfigContext const& context)
115115
{
116-
return WorkflowSpec{adaptAnalysisTask<skimmerGammaConversionTruthOnlyMc>(cfgc, TaskName{"skimmer-gamma-conversion-truthonlymc"})};
116+
return WorkflowSpec{adaptAnalysisTask<skimmerGammaConversionTruthOnlyMc>(context, TaskName{"skimmer-gamma-conversion-truthonlymc"})};
117117
}

PWGEM/PhotonMeson/Tasks/CheckMCV0.cxx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ struct CheckMCV0 {
169169
Configurable<std::string> mLUTPath{"lutPath", "GLO/Param/MatLUT", "Path of the Lut parametrization"};
170170
Configurable<std::string> mVtxPath{"mVtxPath", "GLO/Calib/MeanVertex", "Path of the mean vertex file"};
171171
Configurable<std::string> mCCDBUrl{"ccdb-url", "http://alice-ccdb.cern.ch", "url of the ccdb repository"};
172-
Service<o2::ccdb::BasicCCDBManager> mCCDB;
172+
Service<o2::ccdb::BasicCCDBManager> mCCDB{};
173173
int mRunNumber{-1};
174174
o2::base::MatLayerCylSet* mLUT{nullptr};
175175
o2::parameters::GRPMagField* mGRPMagField{nullptr};
@@ -515,7 +515,7 @@ struct CheckMCV0 {
515515
}
516516
};
517517

518-
WorkflowSpec defineDataProcessing(ConfigContext const& cfgc)
518+
WorkflowSpec defineDataProcessing(ConfigContext const& context)
519519
{
520-
return WorkflowSpec{adaptAnalysisTask<CheckMCV0>(cfgc, TaskName{"check-mc-v0"})};
520+
return WorkflowSpec{adaptAnalysisTask<CheckMCV0>(context, TaskName{"check-mc-v0"})};
521521
}

PWGEM/PhotonMeson/Tasks/compconvbuilder.cxx

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
#include <THnSparse.h>
3939
#include <TPDGCode.h>
4040

41+
#include <array>
4142
#include <cstdlib>
4243
#include <optional>
4344
#include <ranges>
@@ -83,11 +84,11 @@ struct Compconvbuilder {
8384
EMOnly = 2,
8485
LFOnly = 3,
8586
Common = 4,
86-
NConversionBuilder
87+
NConversionBuilder = 5
8788
};
8889

89-
static constexpr std::string_view kConversionBuilder[NConversionBuilder] = {"EMBuilder/", "LFBuilder/", "EMOnly/", "LFOnly/", "Common/"};
90-
static constexpr std::string_view kEventTypes[2] = {"before/", "after/"};
90+
static constexpr std::array<std::string_view, NConversionBuilder> kConversionBuilder = {"EMBuilder/", "LFBuilder/", "EMOnly/", "LFOnly/", "Common/"};
91+
static constexpr std::array<std::string_view, 2> kEventTypes = {"before/", "after/"};
9192

9293
EMPhotonEventCut fEMEventCut;
9394
struct : ConfigurableGroup {
@@ -765,9 +766,7 @@ struct Compconvbuilder {
765766

766767
registry.fill(HIST("truePhotons/Sparse_Converted"), d1.vx(), mc.y(), d1.vz(), r, mc.phi(), mc.eta(), mc.pt());
767768

768-
int id1 = mc2trk.count(d1.globalIndex()) ? mc2trk[d1.globalIndex()] : -1;
769-
int id2 = mc2trk.count(d2.globalIndex()) ? mc2trk[d2.globalIndex()] : -1;
770-
if (id1 < 0 || id2 < 0) {
769+
if (!mc2trk.contains(d1.globalIndex()) || !mc2trk.contains(d2.globalIndex())) {
771770
continue;
772771
}
773772
}
@@ -795,8 +794,9 @@ struct Compconvbuilder {
795794
}
796795

797796
for (const auto& collision : collisions) {
798-
if (!fEMEventCut.IsSelected(collision))
797+
if (!fEMEventCut.IsSelected(collision)) {
799798
continue;
799+
}
800800

801801
fillEventInfo<1, EMBuilder>(collision);
802802

@@ -818,22 +818,25 @@ struct Compconvbuilder {
818818
.emmcparticle_as<aod::EMMCParticles>();
819819
int pid = FindCommonMotherFrom2Prongs(posmc, negmc,
820820
kPositron, kElectron, kGamma, mcparticles);
821-
if (pid >= 0)
821+
if (pid >= 0) {
822822
table[pid].emIt = it;
823+
}
823824
}
824825

825826
for (LFIt it = lfSlice.begin(); it != lfSlice.end(); ++it) {
826827
int posTrackIndex = it.posTrackId();
827828
auto negTrackIndex = it.negTrackId();
828829

829-
if (!trackToMcLabel.count(posTrackIndex) || !trackToMcLabel.count(negTrackIndex))
830+
if (!trackToMcLabel.contains(posTrackIndex) || !trackToMcLabel.contains(negTrackIndex)) {
830831
continue;
832+
}
831833
auto posmc = mcparticles.iteratorAt(trackToMcLabel[posTrackIndex]);
832834
auto negmc = mcparticles.iteratorAt(trackToMcLabel[negTrackIndex]);
833835
int pid = FindCommonMotherFrom2Prongs(posmc, negmc,
834836
kPositron, kElectron, kGamma, mcparticles);
835-
if (pid >= 0)
837+
if (pid >= 0) {
836838
table[pid].lfIt = it;
839+
}
837840
}
838841

839842
for (auto const& [pid, entry] : table) {
@@ -872,7 +875,7 @@ struct Compconvbuilder {
872875
PROCESS_SWITCH(Compconvbuilder, processConvV0s, "Process generated converted V0s", false);
873876
};
874877

875-
WorkflowSpec defineDataProcessing(ConfigContext const& cfg)
878+
WorkflowSpec defineDataProcessing(ConfigContext const& context)
876879
{
877-
return WorkflowSpec{adaptAnalysisTask<Compconvbuilder>(cfg)};
880+
return WorkflowSpec{adaptAnalysisTask<Compconvbuilder>(context)};
878881
}

0 commit comments

Comments
 (0)