CMS 3D CMS Logo

FullConvolutionWithMaterial.cc
Go to the documentation of this file.
3 
6  const PropagationDirection propDir) const {
7  //
8  // vector of result states
10  //
11  // now add material effects to each component
12  //
13  for (auto const & iTsos : tsos.components()) {
14  // add material
15  TrajectoryStateOnSurface updatedTSoS =
16  theMEUpdator->updateState(iTsos,propDir);
17  if ( updatedTSoS.isValid() )
18  result.addState(updatedTSoS);
19  else
20  result.addInvalidState(iTsos.weight());
21  }
22  return result.combinedState();
23 }
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