CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TrajectoryStateOnSurface.cc
Go to the documentation of this file.
3 
5 
8  const Surface& aSurface, const SurfaceSide side) :
9  Base( new BTSOS( fts, aSurface, side)) {}
10 
13  const Surface& aSurface, const SurfaceSide side) :
14  Base( new BTSOS( gp, aSurface, side)) {}
15 
18  const CartesianTrajectoryError& err,
19  const Surface& aSurface, const SurfaceSide side) :
20  Base( new BTSOS( gp, err, aSurface, side)) {}
21 
24  const CurvilinearTrajectoryError& err,
25  const Surface& aSurface, const SurfaceSide side, double weight) :
26  Base( new BTSOS( gp, err, aSurface, side, weight)) {}
27 
30  const CurvilinearTrajectoryError& err,
31  const Surface& aSurface, double weight) :
32  Base( new BTSOS( gp, err, aSurface, SurfaceSideDefinition::atCenterOfSurface, weight)) {}
33 
36  const Surface& aSurface,
37  const MagneticField* field,
38  const SurfaceSide side) :
39  Base( new BTSOS( p, aSurface, field, side)) {}
40 
43  const LocalTrajectoryError& err,
44  const Surface& aSurface,
45  const MagneticField* field,
46  const SurfaceSide side, double weight) :
47  Base( new BTSOS( p, err, aSurface, field, side, weight)) {}
48 
51  const LocalTrajectoryError& err,
52  const Surface& aSurface,
53  const MagneticField* field,
54  double weight) :
55  Base( new BTSOS( p, err, aSurface, field, SurfaceSideDefinition::atCenterOfSurface, weight)) {}
56 
57 
58 void
61  const Surface& aSurface,
62  const MagneticField* field,
63  const SurfaceSide side)
64 {
65  if (data().canUpdateLocalParameters()) {
66  unsharedData().update(p, aSurface, field, side);
67  } else {
68  *this = TrajectoryStateOnSurface(p, aSurface, field, side);
69  }
70 }
71 
72 void
75  const LocalTrajectoryError& err,
76  const Surface& aSurface,
77  const MagneticField* field,
78  const SurfaceSide side,
79  double weight)
80 {
81  if (data().canUpdateLocalParameters()) {
82  unsharedData().update(p, err, aSurface, field, side, weight);
83  } else {
84  *this = TrajectoryStateOnSurface(p, err, aSurface, field, side, weight);
85  }
86 }
void update(const LocalTrajectoryParameters &p, const Surface &aSurface, const MagneticField *field, const SurfaceSide side=SurfaceSideDefinition::atCenterOfSurface)
T & unsharedData()
Definition: ProxyBase.h:66
BasicSingleTrajectoryState BTSOS
const T & data() const
Definition: ProxyBase.h:64