Skip to content
Snippets Groups Projects
Commit e0b952c1 authored by Johannes Elmsheuser's avatar Johannes Elmsheuser
Browse files

Merge branch 'GSFExtrapolator_tidy' into 'main'

GSFExtrapolator : small code tidy

See merge request !71158
parents d5183158 9a196684
No related branches found
No related tags found
30 merge requests!78241Draft: FPGATrackSim: GenScan code refactor,!78236Draft: Switching Streams https://its.cern.ch/jira/browse/ATR-27417,!78056AFP monitoring: new synchronization and cleaning,!78041AFP monitoring: new synchronization and cleaning,!77990Updating TRT chip masks for L1TRT trigger simulation - ATR-28372,!77733Draft: add new HLT NN JVT, augmented with additional tracking information,!77731Draft: Updates to ZDC reconstruction,!77728Draft: updates to ZDC reconstruction,!77522Draft: sTGC Pad Trigger Emulator,!76725ZdcNtuple: Fix cppcheck warning.,!76611L1CaloFEXByteStream: Fix out-of-bounds array accesses.,!76475Punchthrough AF3 implementation in FastG4,!76474Punchthrough AF3 implementation in FastG4,!76343Draft: MooTrackBuilder: Recalibrate NSW hits in refine method,!75729New implementation of ZDC nonlinear FADC correction.,!75703Draft: Update to HI han config for HLT jets,!75184Draft: Update file heavyions_run.config,!74430Draft: Fixing upper bound for Delayed Jet Triggers,!73963Changing the path of the histograms to "Expert" area,!73875updating ID ART reference plots,!73874AtlasCLHEP_RandomGenerators: Fix cppcheck warnings.,!73449Add muon detectors to DarkJetPEBTLA partial event building,!73343Draft: [TrigEgamma] Add photon ringer chains on bootstrap mechanism,!72336Fixed TRT calibration crash,!72176Draft: Improving L1TopoOnline chain that now gets no-empty plots. Activating it by default,!72012Draft: Separate JiveXMLConfig.py into Config files,!71876Fix MET trigger name in MissingETMonitoring,!71820Draft: Adding new TLA End-Of-Fill (EOF) chains and removing obsolete DIPZ chains,!71279Draft: ATR-29330: Move L1_4J15 and the HLT chains seeded by it in the MC Menu,!71158GSFExtrapolator : small code tidy
/*
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
*/
/**
......@@ -388,13 +388,8 @@ Trk::GsfExtrapolator::extrapolateImpl(
associatedLayer = nullptr;
} // end while loop
// Look to catch failures now
if (!currentState) {
currentState = &multiComponentState;
foundFinalBoundary = false;
}
if (currentVolume != destinationVolume) {
// catch failures now
if (!currentState || (currentVolume != destinationVolume)) {
currentState = &multiComponentState;
foundFinalBoundary = false;
}
......@@ -768,23 +763,14 @@ Trk::GsfExtrapolator::extrapolateFromLayerToLayer(
// Only extrapolate to an intermediate layer if it requires material
// update. Otherwise step over it
if (nextLayer->layerMaterialProperties()) {
if (!currentState.empty()) {
currentState = extrapolateToIntermediateLayer(ctx,
cache,
currentState,
*nextLayer,
trackingVolume,
direction,
particleHypothesis);
} else {
currentState = extrapolateToIntermediateLayer(ctx,
cache,
multiComponentState,
*nextLayer,
trackingVolume,
direction,
particleHypothesis);
}
currentState = extrapolateToIntermediateLayer(
ctx,
cache,
!currentState.empty() ? currentState : multiComponentState,
*nextLayer,
trackingVolume,
direction,
particleHypothesis);
}
if (!currentState.empty()) {
......@@ -1039,7 +1025,7 @@ Trk::GsfExtrapolator::initialiseNavigation(
}
// 3. Global search
} else {
// If no reference parameters are defined, then determine them
// If no reference parameters are defined try to determine them
if (!referenceParameters) {
referenceParameters =
currentVolume
......@@ -1048,16 +1034,9 @@ Trk::GsfExtrapolator::initialiseNavigation(
: nullptr;
}
// Global search of tracking geometry to find the destination volume
if (referenceParameters) {
destinationVolume =
m_navigator->volume(ctx, referenceParameters->position());
}
// If destination volume is still not found then global search based on
// surface position
else {
destinationVolume =
m_navigator->volume(ctx, surface.globalReferencePoint());
}
destinationVolume = m_navigator->volume(
ctx, referenceParameters ? referenceParameters->position()
: surface.globalReferencePoint());
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment