Go to the documentation of this file.00001 #ifndef Alignment_CommonAlignment_RigidBodyAlignmentParameters4D_h
00002 #define Alignment_CommonAlignment_RigidBodyAlignmentParameters4D_h
00003
00004
00005 #include "Alignment/CommonAlignmentParametrization/interface/RigidBodyAlignmentParameters.h"
00006 #include "DataFormats/CLHEP/interface/AlgebraicObjects.h"
00007
00017
00018 class Alignable;
00019 class AlignableDetOrUnitPtr;
00020 class TrajectoryStateOnSurface;
00021
00022 class RigidBodyAlignmentParameters4D : public RigidBodyAlignmentParameters
00023 {
00024
00025 public:
00026
00029 RigidBodyAlignmentParameters4D(Alignable* alignable, bool calcMis):
00030 RigidBodyAlignmentParameters(alignable, calcMis){};
00031
00032
00034 RigidBodyAlignmentParameters4D( Alignable* alignable,
00035 const AlgebraicVector& parameters,
00036 const AlgebraicSymMatrix& covMatrix ):
00037 RigidBodyAlignmentParameters(alignable, parameters, covMatrix){};
00038
00040 RigidBodyAlignmentParameters4D( Alignable* alignable, const AlgebraicVector& parameters,
00041 const AlgebraicSymMatrix& covMatrix,
00042 const std::vector<bool>& selection ):
00043 RigidBodyAlignmentParameters(alignable, parameters, covMatrix, selection){};
00044
00046 ~RigidBodyAlignmentParameters4D() {};
00047
00048 int type() const;
00049
00051 AlgebraicMatrix derivatives( const TrajectoryStateOnSurface& tsos,
00052 const AlignableDetOrUnitPtr & ) const;
00053
00055 RigidBodyAlignmentParameters4D* clone( const AlgebraicVector& parameters,
00056 const AlgebraicSymMatrix& covMatrix ) const;
00057
00059 RigidBodyAlignmentParameters4D*
00060 cloneFromSelected(const AlgebraicVector& parameters, const AlgebraicSymMatrix& covMatrix) const;
00061
00062
00063 };
00064
00065 #endif
00066