Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /acts/Core/src/Material/ISurfaceMaterialAccumulator.cpp was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 // This file is part of the ACTS project.
0002 //
0003 // Copyright (C) 2016 CERN for the benefit of the ACTS project
0004 //
0005 // This Source Code Form is subject to the terms of the Mozilla Public
0006 // License, v. 2.0. If a copy of the MPL was not distributed with this
0007 // file, You can obtain one at https://mozilla.org/MPL/2.0/.
0008 
0009 #include "Acts/Material/ISurfaceMaterialAccumulator.hpp"
0010 
0011 #include "Acts/Utilities/Diagnostics.hpp"
0012 
0013 #include <stdexcept>
0014 
0015 namespace Acts {
0016 
0017 void ISurfaceMaterialAccumulator::accumulateTracks(
0018     State& state, const GeometryContext& gctx,
0019     std::span<const TrackAccumulation> tracks,
0020     detail::WorkerPool* /*pool*/) const {
0021   for (const auto& track : tracks) {
0022     // Support implementations that only override the deprecated method
0023     ACTS_PUSH_IGNORE_DEPRECATED()
0024     accumulate(state, gctx, *track.interactions,
0025                *track.surfacesWithoutAssignment);
0026     ACTS_POP_IGNORE_DEPRECATED()
0027   }
0028 }
0029 
0030 void ISurfaceMaterialAccumulator::accumulate(
0031     State& /*state*/, const GeometryContext& /*gctx*/,
0032     const std::vector<MaterialInteraction>& /*interactions*/,
0033     const std::vector<IAssignmentFinder::SurfaceAssignment>&
0034     /*surfacesWithoutAssignment*/) const {
0035   throw std::logic_error(
0036       "ISurfaceMaterialAccumulator implementations must override "
0037       "accumulateTracks");
0038 }
0039 
0040 }  // namespace Acts