CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MaterialEffectsUpdator.h
Go to the documentation of this file.
1 #ifndef _CR_MATERIALEFFECTSUPDATOR_H_
2 #define _CR_MATERIALEFFECTSUPDATOR_H_
3 
19 
21 {
22 public:
25  MaterialEffectsUpdator ( double mass );
26  virtual ~MaterialEffectsUpdator ();
27 
32  const PropagationDirection propDir) const;
33 
40  virtual bool updateStateInPlace (TrajectoryStateOnSurface& TSoS,
41  const PropagationDirection propDir) const;
42 
43 
46  virtual double deltaP (const TrajectoryStateOnSurface& TSoS, const PropagationDirection propDir) const;
47 
48 
52  const PropagationDirection propDir) const;
53 
56  inline double mass () const {
57  return theMass;
58  }
59 
60  virtual MaterialEffectsUpdator* clone() const = 0;
61 
62  private:
63  // here comes the actual computation of the values
65 
66  // check of arguments for use with cached values
67  bool newArguments (const TrajectoryStateOnSurface & TSoS, PropagationDirection propDir) const dso_internal;
68 
69  private:
70  double theMass;
71 
72  // chache previous call state
73  mutable double theLastOverP;
74  mutable double theLastDxdz;
75  mutable float theLastRL;
77 
78 
79 protected:
80  mutable double theDeltaP;
83 };
84 
85 #endif
ROOT::Math::SMatrix< double, 5, 5, ROOT::Math::MatRepSym< double, 5 > > AlgebraicSymMatrix55
virtual bool updateStateInPlace(TrajectoryStateOnSurface &TSoS, const PropagationDirection propDir) const
PropagationDirection
virtual TrajectoryStateOnSurface updateState(const TrajectoryStateOnSurface &TSoS, const PropagationDirection propDir) const
PropagationDirection theLastPropDir
#define dso_internal
Definition: Visibility.h:13
virtual const AlgebraicSymMatrix55 & deltaLocalError(const TrajectoryStateOnSurface &TSoS, const PropagationDirection propDir) const
virtual double deltaP(const TrajectoryStateOnSurface &TSoS, const PropagationDirection propDir) const
virtual void compute(const TrajectoryStateOnSurface &, const PropagationDirection) const dso_internal=0
string const
Definition: compareJSON.py:14
#define private
Definition: FWFileEntry.h:18
static AlgebraicSymMatrix55 theNullMatrix
#define protected
Definition: FWEveView.cc:36
virtual MaterialEffectsUpdator * clone() const =0
bool newArguments(const TrajectoryStateOnSurface &TSoS, PropagationDirection propDir) const dso_internal
AlgebraicSymMatrix55 theDeltaCov