CMS 3D CMS Logo

FullConvolutionWithMaterial.cc
Go to the documentation of this file.
3 
5  const PropagationDirection propDir) const {
6  //
7  // vector of result states
9  //
10  // now add material effects to each component
11  //
12  for (auto const& iTsos : tsos.components()) {
13  // add material
14  TrajectoryStateOnSurface updatedTSoS = theMEUpdator->updateState(iTsos, propDir);
15  if (updatedTSoS.isValid())
16  result.addState(updatedTSoS);
17  else
18  result.addInvalidState(iTsos.weight());
19  }
20  return result.combinedState();
21 }
void addState(const TrajectoryStateOnSurface)
PropagationDirection
virtual TrajectoryStateOnSurface updateState(const TrajectoryStateOnSurface &TSoS, const PropagationDirection propDir) const
DeepCopyPointerByClone< GsfMaterialEffectsUpdator > theMEUpdator
void addInvalidState(const double)
Adds (the weight of an) invalid state to the list.
TrajectoryStateOnSurface operator()(const TrajectoryStateOnSurface &, const PropagationDirection) const
Convolution using the GsfMaterialEffectsUpdator.
Components const & components() const