Skip to content

Commit 77def82

Browse files
committed
Merge branch 'master' into cpplint
2 parents 14aa863 + fee6ed0 commit 77def82

143 files changed

Lines changed: 20901 additions & 11410 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.pre-commit-config.yaml‎

Lines changed: 36 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,47 @@
22
# See https://pre-commit.com/hooks.html for more hooks
33
repos:
44
- repo: https://github.com/pre-commit/pre-commit-hooks
5-
rev: v6.0.0
5+
rev: 3e8a8703264a2f4a69428a0aa4dcb512790b2c8c # frozen: v6.0.0
66
hooks:
7-
- id: trailing-whitespace
7+
- id: check-added-large-files
8+
- id: check-ast
9+
- id: check-case-conflict
10+
- id: check-executables-have-shebangs
11+
- id: check-merge-conflict
12+
- id: check-symlinks
13+
- id: check-yaml
814
- id: end-of-file-fixer
15+
- id: trailing-whitespace
16+
- repo: https://github.com/shellcheck-py/shellcheck-py
17+
rev: a6564f5d57444e123433a5c9af733e3975c77229 # frozen: v0.11.0.1-1
18+
hooks:
19+
- id: shellcheck
20+
- repo: https://github.com/astral-sh/ruff-pre-commit
21+
rev: f12be1ebaa5351c1fc76472de98db2c3446c8253 # frozen: v0.16.10
22+
hooks:
23+
- id: ruff-check # linter
24+
args: ["--fix"]
25+
- id: ruff-format # formatter
26+
- repo: local
27+
hooks:
28+
- id: format-includes
29+
name: format includes
30+
language: python
31+
entry: Scripts/format_includes.py
32+
types: [c++]
933
- repo: https://github.com/pre-commit/mirrors-clang-format
10-
rev: v20.1.3 # clang-format version (keep synced with https://github.com/alisw/ali-bot/blob/master/.github/workflows/c++-code-formatting.yml)
34+
# clang-format version (keep synced with https://github.com/alisw/ali-bot/blob/master/.github/workflows/c++-code-formatting.yml)
35+
rev: 7ec07eeb4135dc6ecf410d24ac4ead986a5d413d # frozen: v20.1.3
1136
hooks:
1237
- id: clang-format
1338
- repo: https://github.com/cpplint/cpplint
14-
rev: 2.0.2
39+
rev: 350702a4d39395571bd118c9a3cff0a573488d61 # frozen: 2.0.2
1540
hooks:
1641
- id: cpplint
42+
- repo: local
43+
hooks:
44+
- id: O2 linter
45+
name: O2 linter
46+
language: python
47+
entry: Scripts/o2_linter.py
48+
types_or: [c++, cmake, python]

‎ALICE3/Core/DetLayer.h‎

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -108,25 +108,25 @@ struct DetLayer {
108108
TString mName;
109109

110110
// position variables
111-
float mR; // radius in centimeters
112-
float mZ; // mZ dimension in centimeters
111+
float mR{}; // radius in centimeters
112+
float mZ{}; // mZ dimension in centimeters
113113

114114
// material variables
115-
float mX0; // radiation length
116-
float mXrho; // density
115+
float mX0{}; // radiation length
116+
float mXrho{}; // density
117117

118118
// resolution variables for active layers
119-
float mResRPhi; // RPhi resolution in centimeters
120-
float mResZ; // Z resolution in centimeters
119+
float mResRPhi{}; // RPhi resolution in centimeters
120+
float mResZ{}; // Z resolution in centimeters
121121

122122
// efficiency
123-
float mEff; // detection efficiency
123+
float mEff{1.f}; // detection efficiency
124124

125125
// dead regions in phi (in radians)
126126
TGraph* mDeadPhiRegions = nullptr;
127127

128128
// layer type
129-
int mType; // 0: undefined/inert, 1: silicon, 2: gas/tpc
129+
int mType{0}; // 0: undefined/inert, 1: silicon, 2: gas/tpc
130130
};
131131

132132
} // namespace o2::fastsim

‎ALICE3/Core/FastTracker.cxx‎

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -312,6 +312,8 @@ int FastTracker::fastTrack(o2::track::TrackParCov inputTrack, o2::track::TrackPa
312312
nIntercepts = 0;
313313
nSiliconPoints = 0;
314314
nGasPoints = 0;
315+
trackIU = -1.f;
316+
trackOU = -1.f;
315317
std::array<float, 3> posIni{}; // provision for != PV
316318
inputTrack.getXYZGlo(posIni);
317319
const float initialRadius = std::hypot(posIni[0], posIni[1]);
@@ -416,6 +418,9 @@ int FastTracker::fastTrack(o2::track::TrackParCov inputTrack, o2::track::TrackPa
416418
firstLayerReached = il;
417419
}
418420
lastLayerReached = il;
421+
if (layers[il].isTOF()) {
422+
continue; // TOF layers are not used for tracking, but are kept in range for the innermost/outermost update
423+
}
419424
nIntercepts++;
420425
}
421426

@@ -475,7 +480,7 @@ int FastTracker::fastTrack(o2::track::TrackParCov inputTrack, o2::track::TrackPa
475480
continue;
476481
}
477482

478-
if (!layers[il].isInert()) { // only update covm for tracker hits
483+
if (!layers[il].isInert() && !layers[il].isTOF()) { // only update covm for tracker hits
479484
const o2::track::TrackParametrization<float>::dim2_t hitpoint = {xyz1[1], xyz1[2]};
480485
const o2::track::TrackParametrization<float>::dim3_t hitpointcov = {layers[il].getResolutionRPhi() * layers[il].getResolutionRPhi(), 0.f, layers[il].getResolutionZ() * layers[il].getResolutionZ()};
481486

@@ -510,7 +515,14 @@ int FastTracker::fastTrack(o2::track::TrackParCov inputTrack, o2::track::TrackPa
510515
}
511516

512517
hits.push_back(thisHit);
513-
if (!layers[il].isInert()) { // good hit probability calculation
518+
if (!layers[il].isInert()) {
519+
trackIU = std::hypot(spacePoint[0], spacePoint[1]);
520+
if (trackOU < 0.f) {
521+
trackOU = trackIU;
522+
}
523+
}
524+
525+
if (!layers[il].isInert() && !layers[il].isTOF()) { // good hit probability calculation
514526
float sigYCmb = o2::math_utils::sqrt(inwardTrack.getSigmaY2() + layers[il].getResolutionRPhi() * layers[il].getResolutionRPhi());
515527
float sigZCmb = o2::math_utils::sqrt(inwardTrack.getSigmaZ2() + layers[il].getResolutionZ() * layers[il].getResolutionZ());
516528
goodHitProbability[il] = probGoodChiSqHit(layers[il].getRadius() * 100, sigYCmb * 100, sigZCmb * 100);

‎ALICE3/Core/FastTracker.h‎

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ class FastTracker
5858
/// \param phiEnd End angle of the dead region (in radians)
5959
void addDeadPhiRegionInLayer(const std::string& layerName, float phiStart, float phiEnd);
6060
[[nodiscard]] DetLayer getLayer(const int layer) const { return layers[layer]; }
61-
[[nodiscard]] std::vector<DetLayer> getLayers() const { return layers; }
61+
[[nodiscard]] const std::vector<DetLayer>& getLayers() const { return layers; }
6262
[[nodiscard]] int getLayerIndex(const std::string& name) const;
6363
[[nodiscard]] size_t getNLayers() const { return layers.size(); }
6464
[[nodiscard]] bool isLayerInert(const int layer) const { return layers[layer].isInert(); }
@@ -127,6 +127,8 @@ class FastTracker
127127
[[nodiscard]] int getNIntercepts() const { return nIntercepts; }
128128
[[nodiscard]] int getNSiliconPoints() const { return nSiliconPoints; }
129129
[[nodiscard]] int getNGasPoints() const { return nGasPoints; }
130+
[[nodiscard]] float getTrackIU() const { return trackIU; }
131+
[[nodiscard]] float getTrackOU() const { return trackOU; }
130132
[[nodiscard]] float getGoodHitProb(int layer) const
131133
{
132134
return (layer >= 0 && static_cast<size_t>(layer) < goodHitProbability.size()) ? goodHitProbability[layer] : 0.0f;
@@ -172,6 +174,8 @@ class FastTracker
172174
int nIntercepts = 0; /// found in first outward propagation
173175
int nSiliconPoints = 0; /// silicon-based space points added to track
174176
int nGasPoints = 0; /// tpc-based space points added to track
177+
float trackIU = -1.f; /// innermost update: radius of the innermost active-layer hit added to track
178+
float trackOU = -1.f; /// outermost update: radius of the outermost active-layer hit added to track
175179
std::vector<float> goodHitProbability;
176180

177181
ClassDef(FastTracker, 1);

‎ALICE3/Core/GeometryContainer.cxx‎

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919

2020
#include "Common/Core/TableHelper.h"
2121

22-
#include <CCDB/BasicCCDBManager.h>
2322
#include <Framework/InitContext.h>
2423
#include <Framework/Logger.h>
2524

@@ -41,15 +40,15 @@ void GeometryContainer::init(o2::framework::InitContext& initContext)
4140
}
4241
LOG(info) << "Size of detector configuration: " << detectorConfiguration.size();
4342

44-
bool cleanLutWhenLoaded;
45-
const bool foundCleanLutWhenLoaded = common::core::getTaskOptionValue(initContext, "on-the-fly-detector-geometry-provider", "cleanLutWhenLoaded", cleanLutWhenLoaded, false);
43+
bool cleanLut;
44+
const bool foundCleanLutWhenLoaded = common::core::getTaskOptionValue(initContext, "on-the-fly-detector-geometry-provider", "cleanLutWhenLoaded", cleanLut, false);
4645
if (!foundCleanLutWhenLoaded) {
4746
LOG(fatal) << "Could not retrieve foundCleanLutWhenLoaded option from OnTheFlyDetectorGeometryProvider task.";
4847
return;
4948
}
50-
setLutCleanupSetting(cleanLutWhenLoaded);
49+
setLutCleanupSetting(cleanLut);
5150

52-
for (std::string& configFile : detectorConfiguration) {
51+
for (const std::string& configFile : detectorConfiguration) {
5352
LOG(info) << "Detector geometry configuration file used: " << configFile;
5453
addEntry(configFile);
5554
}

‎ALICE3/Core/GeometryContainer.h‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,18 +36,18 @@ struct GeometryEntry {
3636
// Default constructor
3737
GeometryEntry() = default;
3838
explicit GeometryEntry(const std::string& filename, o2::ccdb::BasicCCDBManager* ccdb = nullptr)
39+
: mFileName(ConfigurationParser::accessFile(filename, "./.ALICE3/Configuration/", ccdb))
3940
{
40-
mFileName = ConfigurationParser::accessFile(filename, "./.ALICE3/Configuration/", ccdb);
4141
mConfigurations = ConfigurationParser::parseTEnvConfiguration(mFileName, mLayerNames);
4242
LOG(info) << "Loaded geometry configuration from file: " << mFileName << " with " << mLayerNames.size() << " layers.";
4343
if (mLayerNames.empty()) {
4444
LOG(warning) << "No layers found in geometry configuration file: " << filename;
4545
}
4646
}
4747

48-
std::map<std::string, std::map<std::string, std::string>> getConfigurations() const { return mConfigurations; }
48+
const std::map<std::string, std::map<std::string, std::string>>& getConfigurations() const { return mConfigurations; }
4949
std::map<std::string, std::string> getConfiguration(const std::string& layerName) const;
50-
std::vector<std::string> getLayerNames() const { return mLayerNames; }
50+
const std::vector<std::string>& getLayerNames() const { return mLayerNames; }
5151
bool hasValue(const std::string& layerName, const std::string& key) const;
5252
std::string getValue(const std::string& layerName, const std::string& key, bool require = true) const;
5353
void setValue(const std::string& layerName, const std::string& key, const std::string& value) { mConfigurations[layerName][key] = value; }

‎ALICE3/DataModel/OTFTOF.h‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,8 @@ DECLARE_SOA_COLUMN(OuterTOFExpectedTimeDe, outerTOFExpectedTimeDe, float); //!
7979
DECLARE_SOA_COLUMN(OuterTOFExpectedTimeTr, outerTOFExpectedTimeTr, float); //! Reconstructed expected time at the OuterTOF for the Triton mass hypotheses
8080
DECLARE_SOA_COLUMN(OuterTOFExpectedTimeHe3, outerTOFExpectedTimeHe3, float); //! Reconstructed expected time at the OuterTOF for the Helium3 mass hypotheses
8181
DECLARE_SOA_COLUMN(OuterTOFExpectedTimeAl, outerTOFExpectedTimeAl, float); //! Reconstructed expected time at the OuterTOF for the Alpha mass hypotheses
82+
DECLARE_SOA_COLUMN(HasInnerTOF, hasInnerTOF, bool); //! InnerTOF short-lived values are filled (false if dummy)
83+
DECLARE_SOA_COLUMN(HasOuterTOF, hasOuterTOF, bool); //! OuterTOF short-lived values are filled (false if dummy)
8284
DECLARE_SOA_DYNAMIC_COLUMN(NSigmaInnerTOF, nSigmaInnerTOF, //! General function to get the nSigma for the InnerTOF
8385
[](const float el,
8486
const float mu,
@@ -260,10 +262,15 @@ DECLARE_SOA_TABLE(UpgradeTofShortLiveds, "AOD", "UPGRTOFSHRTLVD",
260262
upgrade_tof::OuterTOFExpectedTimeXi,
261263
upgrade_tof::OuterTOFExpectedTimeOm);
262264

265+
DECLARE_SOA_TABLE(UpgradeTofShortLivedSignals, "AOD", "UPGRTOFSLSIGNAL",
266+
upgrade_tof::HasInnerTOF,
267+
upgrade_tof::HasOuterTOF);
268+
263269
using UpgradeTofMC = UpgradeTofMCs::iterator;
264270
using UpgradeTof = UpgradeTofs::iterator;
265271
using UpgradeTofExpectedTime = UpgradeTofExpectedTimes::iterator;
266272
using UpgradeTofShortLived = UpgradeTofShortLiveds::iterator;
273+
using UpgradeTofShortLivedSignal = UpgradeTofShortLivedSignals::iterator;
267274

268275
} // namespace o2::aod
269276

‎ALICE3/DataModel/tracksAlice3.h‎

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,13 @@ DECLARE_SOA_COLUMN(NTPCHits, nTPCHits, int); //! number of tpc hi
3232
DECLARE_SOA_COLUMN(PdgCode, pdgCode, int); //! PDG code of the linked truth MC particle
3333
DECLARE_SOA_COLUMN(TrackType, trackType, int); //! Type of the track
3434
DECLARE_SOA_COLUMN(IsPVContributor, isPVContributor, bool); //! Has track contributed to the PV fit?
35+
DECLARE_SOA_COLUMN(TrackIU, trackIU, float); //! Innermost update: radius (cm) of the innermost hit assigned to the track
36+
DECLARE_SOA_COLUMN(TrackOU, trackOU, float); //! Outermost update: radius (cm) of the outermost hit assigned to the track
3537
} // namespace track_alice3
3638
DECLARE_SOA_TABLE(TracksAlice3, "AOD", "TRACKSALICE3",
37-
track_alice3::IsReconstructed);
39+
track_alice3::IsReconstructed,
40+
track_alice3::TrackIU,
41+
track_alice3::TrackOU);
3842
using TrackAlice3 = TracksAlice3::iterator;
3943

4044
DECLARE_SOA_TABLE(TracksAlice3Pdg, "AOD", "TRACKSALICE3PDG",

‎ALICE3/Macros/Configuration/a3geometry_v3.ini‎

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -92,15 +92,6 @@ B05.resZ: 0.001
9292
B05.eff: 1.00
9393
B05.type: 1
9494

95-
iTOF.r: 19
96-
iTOF.z: 250
97-
iTOF.x0: 0.01*3.
98-
iTOF.xrho: 0.03
99-
iTOF.resRPhi: 0.001
100-
iTOF.resZ: 0.001
101-
iTOF.eff: 1.00
102-
iTOF.type: 0
103-
10495
B06.r: 20.
10596
B06.z: 250
10697
B06.x0: 0.01
@@ -110,6 +101,15 @@ B06.resZ: 0.001
110101
B06.eff: 1.00
111102
B06.type: 1
112103

104+
iTOF.r: 21
105+
iTOF.z: 250
106+
iTOF.x0: 0.01*3.
107+
iTOF.xrho: 0.03
108+
iTOF.resRPhi: 0.001
109+
iTOF.resZ: 0.001
110+
iTOF.eff: 1.00
111+
iTOF.type: 3
112+
113113
B07.r: 30.
114114
B07.z: 250
115115
B07.x0: 0.01
@@ -146,6 +146,15 @@ B10.resZ: 0.001
146146
B10.eff: 1.00
147147
B10.type: 1
148148

149+
oTOF.r: 92
150+
oTOF.z: 250
151+
oTOF.x0: 0.01*3.
152+
oTOF.xrho: 0.03
153+
oTOF.resRPhi: 0.001
154+
oTOF.resZ: 0.001
155+
oTOF.eff: 1.00
156+
oTOF.type: 3
157+
149158
# Lookup tables
150159
global.lutEl: ccdb:/Users/j/jekarlss/LUTs/v3/b/el
151160
global.lutMu: ccdb:/Users/j/jekarlss/LUTs/v3/b/mu

‎ALICE3/TableProducer/OTF/onTheFlyTofPid.cxx‎

Lines changed: 39 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
#include "ALICE3/Core/TrackUtilities.h"
3131
#include "ALICE3/DataModel/OTFCollision.h"
3232
#include "ALICE3/DataModel/OTFTOF.h"
33+
#include "ALICE3/DataModel/tracksAlice3.h"
3334
#include "Common/Core/trackUtilities.h"
3435

3536
#include <CCDB/BasicCCDBManager.h>
@@ -77,6 +78,7 @@ struct OnTheFlyTofPid {
7778
Produces<aod::UpgradeTof> upgradeTof;
7879
Produces<aod::UpgradeTofExpectedTime> upgradeTofExpectedTime;
7980
Produces<aod::UpgradeTofShortLived> upgradeTofShortLived;
81+
Produces<aod::UpgradeTofShortLivedSignal> upgradeTofShortLivedSignal;
8082

8183
// necessary for particle charges
8284
Service<o2::framework::O2DatabasePDG> pdgDatabase{};
@@ -103,6 +105,7 @@ struct OnTheFlyTofPid {
103105
Configurable<float> multiplicityEtaRange{"multiplicityEtaRange", 0.800000012, "eta range to compute the multiplicity"};
104106
Configurable<bool> flagIncludeTrackTimeRes{"flagIncludeTrackTimeRes", true, "flag to include or exclude track time resolution"};
105107
Configurable<bool> flagTOFLoadDelphesLUTs{"flagTOFLoadDelphesLUTs", false, "flag to load Delphes LUTs for tracking correction (use recoTrack parameters if false)"};
108+
Configurable<float> shortLivedRadiusTolerance{"shortLivedRadiusTolerance", 0.1f, "tolerance (cm) when checking if a TOF layer is within the innermost and outermost track update of short-lived particles"};
106109
} simConfig;
107110

108111
struct : ConfigurableGroup {
@@ -211,6 +214,39 @@ struct OnTheFlyTofPid {
211214
particleHe,
212215
particleAl};
213216

217+
template <typename TTrack>
218+
void fillShortLivedTables(const TTrack& track,
219+
std::array<float, NParticles> nSigmaInnerTOF,
220+
std::array<float, NParticles> nSigmaOuterTOF,
221+
std::array<float, NParticles> expectedTimeInnerTOF,
222+
std::array<float, NParticles> expectedTimeOuterTOF,
223+
const std::pair<float, float>& trackLengthInnerTOF,
224+
const std::pair<float, float>& trackLengthOuterTOF)
225+
{
226+
const auto isWithinTrackUpdates = [&](const float tofRadius) {
227+
return (track.trackIU() - simConfig.shortLivedRadiusTolerance <= tofRadius) && (tofRadius <= track.trackOU() + simConfig.shortLivedRadiusTolerance);
228+
};
229+
230+
const bool hasInnerTOF = isWithinTrackUpdates(simConfig.innerTOFRadius) && trackLengthInnerTOF.first > 0 && trackLengthInnerTOF.second > 0;
231+
const bool hasOuterTOF = isWithinTrackUpdates(simConfig.outerTOFRadius) && trackLengthOuterTOF.first > 0 && trackLengthOuterTOF.second > 0;
232+
static constexpr float DummyValue = -999.f;
233+
for (const int ii : {Sp, Sm, Xi, Om}) {
234+
if (!hasInnerTOF) {
235+
nSigmaInnerTOF[ii] = DummyValue;
236+
expectedTimeInnerTOF[ii] = DummyValue;
237+
}
238+
if (!hasOuterTOF) {
239+
nSigmaOuterTOF[ii] = DummyValue;
240+
expectedTimeOuterTOF[ii] = DummyValue;
241+
}
242+
}
243+
upgradeTofShortLived(nSigmaInnerTOF[Sp], nSigmaInnerTOF[Sm], nSigmaInnerTOF[Xi], nSigmaInnerTOF[Om],
244+
nSigmaOuterTOF[Sp], nSigmaOuterTOF[Sm], nSigmaOuterTOF[Xi], nSigmaOuterTOF[Om],
245+
expectedTimeInnerTOF[Sp], expectedTimeInnerTOF[Sm], expectedTimeInnerTOF[Xi], expectedTimeInnerTOF[Om],
246+
expectedTimeOuterTOF[Sp], expectedTimeOuterTOF[Sm], expectedTimeOuterTOF[Xi], expectedTimeOuterTOF[Om]);
247+
upgradeTofShortLivedSignal(hasInnerTOF, hasOuterTOF);
248+
}
249+
214250
bool doQaForParticle(const int pdgCode)
215251
{
216252
return std::find(plotsConfig.particlesForQa.value.begin(), plotsConfig.particlesForQa.value.end(), std::abs(pdgCode)) != plotsConfig.particlesForQa.value.end();
@@ -652,7 +688,7 @@ struct OnTheFlyTofPid {
652688
}
653689

654690
void process(soa::Join<aod::Collisions, aod::McCollisionLabels, aod::OTFLUTConfigId>::iterator const& collision,
655-
soa::Join<aod::Tracks, aod::TracksCov, aod::McTrackLabels> const& tracks,
691+
soa::Join<aod::Tracks, aod::TracksCov, aod::McTrackLabels, aod::TracksAlice3> const& tracks,
656692
aod::McParticles const&,
657693
aod::McCollisions const&)
658694
{
@@ -971,10 +1007,8 @@ struct OnTheFlyTofPid {
9711007
measuredTimeOuterTOF, trackLengthRecoOuterTOF);
9721008
upgradeTofExpectedTime(expectedTimeInnerTOF[El], expectedTimeInnerTOF[Mu], expectedTimeInnerTOF[Pi], expectedTimeInnerTOF[Ka], expectedTimeInnerTOF[Pr], expectedTimeInnerTOF[De], expectedTimeInnerTOF[Tr], expectedTimeInnerTOF[He], expectedTimeInnerTOF[Al],
9731009
expectedTimeOuterTOF[El], expectedTimeOuterTOF[Mu], expectedTimeOuterTOF[Pi], expectedTimeOuterTOF[Ka], expectedTimeOuterTOF[Pr], expectedTimeOuterTOF[De], expectedTimeOuterTOF[Tr], expectedTimeOuterTOF[He], expectedTimeOuterTOF[Al]);
974-
upgradeTofShortLived(nSigmaInnerTOF[Sp], nSigmaInnerTOF[Sm], nSigmaInnerTOF[Xi], nSigmaInnerTOF[Om],
975-
nSigmaOuterTOF[Sp], nSigmaOuterTOF[Sm], nSigmaOuterTOF[Xi], nSigmaOuterTOF[Om],
976-
expectedTimeInnerTOF[Sp], expectedTimeInnerTOF[Sm], expectedTimeInnerTOF[Xi], expectedTimeInnerTOF[Om],
977-
expectedTimeOuterTOF[Sp], expectedTimeOuterTOF[Sm], expectedTimeOuterTOF[Xi], expectedTimeOuterTOF[Om]);
1010+
fillShortLivedTables(track, nSigmaInnerTOF, nSigmaOuterTOF, expectedTimeInnerTOF, expectedTimeOuterTOF,
1011+
trkWithTime.mTrackLengthInnerTOF, trkWithTime.mTrackLengthOuterTOF);
9781012
}
9791013

9801014
if (trackWithTimeIndex != tracks.size()) {

0 commit comments

Comments
 (0)