CMS 3D CMS Logo

SurfaceDeformation.h
Go to the documentation of this file.
1 #ifndef Geometry_CommonTopologies_SurfaceDeformation_H
2 #define Geometry_CommonTopologies_SurfaceDeformation_H
3 
10 
15 
16 #include <vector>
17 
19 public:
25 
26  virtual ~SurfaceDeformation() {}
27 
28  virtual SurfaceDeformation *clone() const = 0;
29 
31  virtual int type() const = 0;
32 
39  virtual Local2DVector positionCorrection(const Local2DPoint &localPos,
40  const LocalTrackAngles &localAngles,
41  double length,
42  double width) const = 0;
43 
48  virtual bool add(const SurfaceDeformation &other) = 0;
49 
50  // Seems like only GeometryAligner and derived classes need access
51  // to parameters, so we could make it a friend and protect parameters()...
52  // friend class GeometryAligner; // to be able to call parameters
53  // protected:
54 
56  virtual std::vector<double> parameters() const = 0;
57 };
58 
59 #endif
Point2DBase< double, LocalTag >
ApeEstimator_cff.width
width
Definition: ApeEstimator_cff.py:24
SurfaceDeformation::clone
virtual SurfaceDeformation * clone() const =0
SurfaceDeformation::add
virtual bool add(const SurfaceDeformation &other)=0
SurfaceDeformation::LocalTrackAngles
Topology::LocalTrackAngles LocalTrackAngles
Definition: SurfaceDeformation.h:22
Point2DBase.h
SurfaceDeformation::type
virtual int type() const =0
specific type, i.e. SurfaceDeformationFactory::Type
SurfaceDeformation::positionCorrection
virtual Local2DVector positionCorrection(const Local2DPoint &localPos, const LocalTrackAngles &localAngles, double length, double width) const =0
SurfaceDeformation
Definition: SurfaceDeformation.h:18
SurfaceDeformation::parameters
virtual std::vector< double > parameters() const =0
parameters - interpretation left to the concrete implementation
LocalTag.h
SurfaceDeformation::Local2DVector
Vector2DBase< double, LocalTag > Local2DVector
Definition: SurfaceDeformation.h:20
trackingPlots.other
other
Definition: trackingPlots.py:1467
Vector2DBase
Definition: Vector2DBase.h:8
Vector2DBase.h
Basic2DVector< double >
SurfaceDeformation::Vector2D
Topology::Vector2D Vector2D
Definition: SurfaceDeformation.h:23
Topology::LocalTrackAngles
Definition: Topology.h:44
Topology::MathVector2D
Vector2D::MathVector MathVector2D
Definition: Topology.h:42
SurfaceDeformation::~SurfaceDeformation
virtual ~SurfaceDeformation()
Definition: SurfaceDeformation.h:26
SurfaceDeformation::MathVector2D
Topology::MathVector2D MathVector2D
Definition: SurfaceDeformation.h:24
Topology.h
SurfaceDeformation::Local2DPoint
Topology::Local2DPoint Local2DPoint
Definition: SurfaceDeformation.h:21