Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 13 additions & 13 deletions PWGCF/TableProducer/filter2Prong.cxx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.

Check failure on line 1 in PWGCF/TableProducer/filter2Prong.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[doc/file]

Provide mandatory file documentation.
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
// All rights not expressly granted are reserved.
//
Expand All @@ -9,7 +9,7 @@
// granted to it by virtue of its status as an Intergovernmental Organization
// or submit itself to any jurisdiction.

/// \author Jasper Parkkila <jasper.parkkila@cern.ch>

Check failure on line 12 in PWGCF/TableProducer/filter2Prong.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[doc/file]

Documentation for \file is missing, incorrect or misplaced.

Check failure on line 12 in PWGCF/TableProducer/filter2Prong.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[doc/file]

Documentation for \brief is missing, incorrect or misplaced.

#include <experimental/type_traits>
#include <vector>
Expand Down Expand Up @@ -81,15 +81,15 @@
return; // rejected collision
if (cfgVerbosity > 0 && candidates.size() > 0)
LOGF(info, "Candidates for collision: %lu, cfcollisions: %lu, CFTracks: %lu", candidates.size(), cfcollisions.size(), cftracks.size());
for (auto& c : candidates) {
for (const auto& c : candidates) {
int prongCFId[2] = {-1, -1};
for (auto& cftrack : cftracks) {
for (const auto& cftrack : cftracks) {
if (c.prong0Id() == cftrack.trackId()) {
prongCFId[0] = cftrack.globalIndex();
break;
}
}
for (auto& cftrack : cftracks) {
for (const auto& cftrack : cftracks) {
if (c.prong1Id() == cftrack.trackId()) {
prongCFId[1] = cftrack.globalIndex();
break;
Expand All @@ -106,10 +106,10 @@
prongCFId[0], prongCFId[1], c.pt(), c.eta(), c.phi(), hfHelper.invMassD0ToPiK(c), aod::cf2prongtrack::D0ToPiK);
if constexpr (std::experimental::is_detected<HasMLProb, typename HFCandidatesType::iterator>::value) {
mlvecd.clear();
for (float val : c.mlProbD0())
for (const float val : c.mlProbD0())

Check failure on line 109 in PWGCF/TableProducer/filter2Prong.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[const-ref-in-for-loop]

Use constant references for non-modified iterators in range-based for loops.
mlvecd.push_back(val);
mlvecdbar.clear();
for (float val : c.mlProbD0bar())
for (const float val : c.mlProbD0bar())

Check failure on line 112 in PWGCF/TableProducer/filter2Prong.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[const-ref-in-for-loop]

Use constant references for non-modified iterators in range-based for loops.
mlvecdbar.push_back(val);
output2ProngTrackmls(cfcollisions.begin().globalIndex(), mlvecd, mlvecdbar);
}
Expand All @@ -120,10 +120,10 @@
prongCFId[0], prongCFId[1], c.pt(), c.eta(), c.phi(), hfHelper.invMassD0barToKPi(c), aod::cf2prongtrack::D0barToKPi);
if constexpr (std::experimental::is_detected<HasMLProb, typename HFCandidatesType::iterator>::value) {
mlvecd.clear();
for (float val : c.mlProbD0())
for (const float val : c.mlProbD0())

Check failure on line 123 in PWGCF/TableProducer/filter2Prong.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[const-ref-in-for-loop]

Use constant references for non-modified iterators in range-based for loops.
mlvecd.push_back(val);
mlvecdbar.clear();
for (float val : c.mlProbD0bar())
for (const float val : c.mlProbD0bar())

Check failure on line 126 in PWGCF/TableProducer/filter2Prong.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[const-ref-in-for-loop]

Use constant references for non-modified iterators in range-based for loops.
mlvecdbar.push_back(val);
output2ProngTrackmls(cfcollisions.begin().globalIndex(), mlvecd, mlvecdbar);
}
Expand All @@ -146,15 +146,15 @@
void processMC(aod::McCollisions::iterator const&, aod::CFMcParticleRefs const& cfmcparticles, aod::McParticles const& mcparticles)
{
// The main filter outputs the primary MC particles. Here we just resolve the daughter indices that are needed for the efficiency matching.
for (auto& r : cfmcparticles) {
for (const auto& r : cfmcparticles) {
const auto& mcParticle = mcparticles.iteratorAt(r.mcParticleId());
if (mcParticle.daughtersIds().size() != 2) {

Check failure on line 151 in PWGCF/TableProducer/filter2Prong.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[magic-number]

Avoid magic numbers in expressions. Assign the value to a clearly named variable or constant.
output2ProngMcParts(-1, -1);
continue;
}
int prongCFId[2] = {-1, -1};
for (uint i = 0; i < 2; ++i) {

Check failure on line 156 in PWGCF/TableProducer/filter2Prong.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[magic-number]

Avoid magic numbers in expressions. Assign the value to a clearly named variable or constant.
for (auto& cfmcpart : cfmcparticles) {
for (const auto& cfmcpart : cfmcparticles) {
if (mcParticle.daughtersIds()[i] == cfmcpart.mcParticleId()) {
prongCFId[i] = cfmcpart.globalIndex();
break;
Expand All @@ -172,16 +172,16 @@
{
if (cfcollisions.size() <= 0 || cftracks.size() <= 0)
return; // rejected collision
for (auto& cftrack1 : cftracks) {
auto p1 = tracks.iteratorAt(cftrack1.trackId());
for (const auto& cftrack1 : cftracks) {
const auto& p1 = tracks.iteratorAt(cftrack1.trackId() - tracks.begin().globalIndex());
if (p1.sign() != 1)
continue;
if (sigmaFormula->Eval(o2::aod::pidutils::tpcNSigma(cfgImPart1PID, p1), o2::aod::pidutils::tofNSigma(cfgImPart1PID, p1)) <= 0.0f)
continue;
for (auto& cftrack2 : cftracks) {
for (const auto& cftrack2 : cftracks) {
if (cftrack2.globalIndex() == cftrack1.globalIndex())
continue;
auto p2 = tracks.iteratorAt(cftrack2.trackId());
const auto& p2 = tracks.iteratorAt(cftrack2.trackId() - tracks.begin().globalIndex());
if (p2.sign() != -1)
continue;
if (sigmaFormula->Eval(o2::aod::pidutils::tpcNSigma(cfgImPart2PID, p2), o2::aod::pidutils::tofNSigma(cfgImPart2PID, p2)) <= 0.0f)
Expand All @@ -204,5 +204,5 @@
WorkflowSpec defineDataProcessing(ConfigContext const& cfgc)
{
return WorkflowSpec{
adaptAnalysisTask<Filter2Prong>(cfgc, TaskName{"filter-2prong"})};

Check failure on line 207 in PWGCF/TableProducer/filter2Prong.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/o2-task]

Device names filter-2prong and filter2-prong generated from the specified task name filter-2prong and from the struct name Filter2Prong, respectively, differ in hyphenation. Consider fixing capitalisation of the struct name to Filter2Prong and removing TaskName.
}
Loading