Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
src
Geometry
CommonTopologies
interface
SurfaceDeformation.h
Go to the documentation of this file.
1
#ifndef Geometry_CommonTopologies_SurfaceDeformation_H
2
#define Geometry_CommonTopologies_SurfaceDeformation_H
3
15
16
#include "
DataFormats/GeometryVector/interface/Vector2DBase.h
"
17
#include "
DataFormats/GeometryVector/interface/Point2DBase.h
"
18
#include "
DataFormats/GeometryVector/interface/LocalTag.h
"
19
#include "
Geometry/CommonTopologies/interface/Topology.h
"
20
21
#include <vector>
22
23
class
SurfaceDeformation
24
{
25
public
:
26
typedef
Vector2DBase<double, LocalTag>
Local2DVector
;
27
typedef
Topology::Local2DPoint
Local2DPoint
;
28
typedef
Topology::LocalTrackAngles
LocalTrackAngles
;
29
30
virtual
SurfaceDeformation
*
clone
()
const
= 0;
31
33
virtual
int
type
()
const
= 0;
34
41
virtual
Local2DVector
positionCorrection
(
const
Local2DPoint
&localPos,
42
const
LocalTrackAngles
&localAngles,
43
double
length,
double
width
)
const
= 0;
44
49
virtual
bool
add
(
const
SurfaceDeformation
&other) = 0;
50
51
// Seems like only GeometryAligner and derived classes need access
52
// to parameters, so we could make it a friend and protect parameters()...
53
// friend class GeometryAligner; // to be able to call parameters
54
// protected:
55
57
virtual
std::vector<double>
parameters
()
const
= 0;
58
59
};
60
61
#endif
Vector2DBase.h
Topology.h
Point2DBase.h
tablePrinter.width
int width
Definition:
tablePrinter.py:59
SurfaceDeformation::LocalTrackAngles
Topology::LocalTrackAngles LocalTrackAngles
Definition:
SurfaceDeformation.h:28
SurfaceDeformation
Definition:
SurfaceDeformation.h:23
Point2DBase< double, LocalTag >
LocalTag.h
SurfaceDeformation::parameters
virtual std::vector< double > parameters() const =0
parameters - interpretation left to the concrete implementation
SurfaceDeformation::positionCorrection
virtual Local2DVector positionCorrection(const Local2DPoint &localPos, const LocalTrackAngles &localAngles, double length, double width) const =0
Vector2DBase
Definition:
Vector2DBase.h:9
SurfaceDeformation::clone
virtual SurfaceDeformation * clone() const =0
SurfaceDeformation::type
virtual int type() const =0
specific type, i.e. SurfaceDeformationFactory::Type
SurfaceDeformation::Local2DVector
Vector2DBase< double, LocalTag > Local2DVector
Definition:
SurfaceDeformation.h:26
SurfaceDeformation::add
virtual bool add(const SurfaceDeformation &other)=0
SurfaceDeformation::Local2DPoint
Topology::Local2DPoint Local2DPoint
Definition:
SurfaceDeformation.h:27
Topology::LocalTrackAngles
Definition:
Topology.h:42
Generated for CMSSW Reference Manual by
1.8.5