CMS 3D CMS Logo

GsfMaterialEffectsUpdator.h
Go to the documentation of this file.
1 #ifndef GsfMaterialEffectsUpdator_h_
2 #define GsfMaterialEffectsUpdator_h_
3 
8 #include <cstdint>
9 
11 
18 public:
22 
25  GsfMaterialEffectsUpdator(float mass, uint32_t is) : theMass(mass), m_size(is) {}
26 
28 
33  const PropagationDirection propDir) const;
34 
37  inline float mass() const { return theMass; }
38 
39  virtual GsfMaterialEffectsUpdator* clone() const = 0;
40 
41  // here comes the actual computation of the values
42  virtual void compute(const TrajectoryStateOnSurface&, const PropagationDirection, Effect effects[]) const = 0;
43 
44  size_t size() const { return m_size; }
45 
46 protected:
47  void resize(size_t is) { m_size = is; }
48 
49 private:
50  float theMass;
51  uint32_t m_size;
52 };
53 
54 #endif
virtual void compute(const TrajectoryStateOnSurface &, const PropagationDirection, Effect effects[]) const =0
PropagationDirection
GsfMaterialEffectsUpdator(float mass, uint32_t is)
virtual TrajectoryStateOnSurface updateState(const TrajectoryStateOnSurface &TSoS, const PropagationDirection propDir) const
materialEffect::Covariance Covariance
materialEffect::CovIndex CovIndex
virtual GsfMaterialEffectsUpdator * clone() const =0