CMS 3D CMS Logo

RigidBodyAlignmentParameters.h

Go to the documentation of this file.
00001 #ifndef Alignment_CommonAlignment_RigidBodyAlignmentParameters_h
00002 #define Alignment_CommonAlignment_RigidBodyAlignmentParameters_h
00003 
00004 #include "Alignment/CommonAlignment/interface/AlignmentParameters.h"
00005 
00015 
00016 class RigidBodyAlignmentParameters : public AlignmentParameters 
00017 {
00018 
00019 public:
00020 
00022   enum AlignmentParameterName 
00023         {
00024           dx = 0, dy, dz,
00025           dalpha, dbeta, dgamma,
00026           N_PARAM
00027         };
00028 
00031   RigidBodyAlignmentParameters(Alignable* alignable, bool calcMis);
00032 
00034   RigidBodyAlignmentParameters( Alignable* alignable, 
00035                                 const AlgebraicVector& parameters, 
00036                                 const AlgebraicSymMatrix& covMatrix );
00037 
00039   RigidBodyAlignmentParameters( Alignable* alignable, const AlgebraicVector& parameters, 
00040                                 const AlgebraicSymMatrix& covMatrix, 
00041                                 const std::vector<bool>& selection );
00042 
00044   virtual ~RigidBodyAlignmentParameters() {};
00045 
00047   virtual RigidBodyAlignmentParameters* clone( const AlgebraicVector& parameters, 
00048                                                const AlgebraicSymMatrix& covMatrix ) const;
00049  
00051   virtual RigidBodyAlignmentParameters*
00052     cloneFromSelected(const AlgebraicVector& parameters, const AlgebraicSymMatrix& covMatrix) const;
00053   
00055   virtual AlgebraicMatrix derivatives( const TrajectoryStateOnSurface& tsos,
00056                                        const AlignableDetOrUnitPtr & ) const;
00057 
00059   virtual AlgebraicMatrix selectedDerivatives( const TrajectoryStateOnSurface& tsos, 
00060                                                const AlignableDetOrUnitPtr & ) const;
00061 
00063   AlgebraicVector translation(void) const;
00064 
00066   AlgebraicVector rotation(void) const;
00067 
00069   AlgebraicVector globalParameters(void) const;
00070 
00072   void print(void) const;
00073 
00076   static AlgebraicVector displacementFromAlignable(const Alignable* ali);
00077 
00078 };
00079 
00080 #endif
00081 

Generated on Tue Jun 9 17:23:51 2009 for CMSSW by  doxygen 1.5.4