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 
7 TrajectoryStateOnSurface(const Surface& aSurface) :
8  Base( new BTSOS(aSurface)) {}
9 
12  const Surface& aSurface, const SurfaceSide side) :
13  Base( new BTSOS( fts, aSurface, side)) {}
14 
15 
18  const Surface& aSurface, const SurfaceSide side) :
19  Base( new BTSOS( gp, aSurface, side)) {}
20 
23  const CartesianTrajectoryError& err,
24  const Surface& aSurface, const SurfaceSide side) :
25  Base( new BTSOS( gp, err, aSurface, side)) {}
26 
29  const CurvilinearTrajectoryError& err,
30  const Surface& aSurface, const SurfaceSide side, double weight) :
31  Base( new BTSOS( gp, err, aSurface, side, weight)) {}
32 
35  const CurvilinearTrajectoryError& err,
36  const Surface& aSurface, double weight) :
37  Base( new BTSOS( gp, err, aSurface, SurfaceSideDefinition::atCenterOfSurface, weight)) {}
38 
41  const Surface& aSurface,
42  const MagneticField* field,
43  const SurfaceSide side) :
44  Base( new BTSOS( p, aSurface, field, side)) {}
45 
48  const LocalTrajectoryError& err,
49  const Surface& aSurface,
50  const MagneticField* field,
51  const SurfaceSide side, double weight) :
52  Base( new BTSOS( p, err, aSurface, field, side, weight)) {}
53 
56  const LocalTrajectoryError& err,
57  const Surface& aSurface,
58  const MagneticField* field,
59  double weight) :
60  Base( new BTSOS( p, err, aSurface, field, SurfaceSideDefinition::atCenterOfSurface, weight)) {}
61 
62 
63 void
66  const Surface& aSurface,
67  const MagneticField* field,
68  const SurfaceSide side)
69 {
70  if (data().canUpdateLocalParameters()) {
71  unsharedData().update(p, aSurface, field, side);
72  } else {
73  *this = TrajectoryStateOnSurface(p, aSurface, field, side);
74  }
75 }
76 
77 void
80  const LocalTrajectoryError& err,
81  const Surface& aSurface,
82  const MagneticField* field,
83  const SurfaceSide side,
84  double weight)
85 {
86  if (data().canUpdateLocalParameters()) {
87  unsharedData().update(p, err, aSurface, field, side, weight);
88  } else {
89  *this = TrajectoryStateOnSurface(p, err, aSurface, field, side, weight);
90  }
91 }
void update(const LocalTrajectoryParameters &p, const Surface &aSurface, const MagneticField *field, const SurfaceSide side=SurfaceSideDefinition::atCenterOfSurface)
T & unsharedData()
Definition: ProxyBase.h:69
BasicSingleTrajectoryState BTSOS
const T & data() const
Definition: ProxyBase.h:67