CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_2_9/src/DataFormats/Alignment/interface/TkFittedLasBeam.h

Go to the documentation of this file.
00001 #ifndef DataFormats_Alignment_TkFittedLasBeam_h
00002 #define DataFormats_Alignment_TkFittedLasBeam_h
00003 
00013 
00014 #include "DataFormats/Alignment/interface/TkLasBeam.h"
00015 #include "DataFormats/CLHEP/interface/AlgebraicObjects.h"
00016 #include <vector>
00017 
00018 class TkFittedLasBeam : public TkLasBeam {
00019  public:
00020   typedef float Scalar; // scalar type used in this class
00021   
00022   TkFittedLasBeam(); 
00023   TkFittedLasBeam(const TkLasBeam &lasBeam);
00024   virtual ~TkFittedLasBeam() {} // anyway virtual since inherited...
00025     
00027   unsigned int parametrisation() const { return parametrisation_;}
00029   const std::vector<Scalar>& parameters() const { return parameters_;}
00031   const AlgebraicSymMatrix& parametersCov() const {return paramCovariance_;}
00033   const AlgebraicMatrix& derivatives() const { return derivatives_;}
00036   unsigned int firstFixedParameter() const { return firstFixedParameter_;}
00037 
00043   void setParameters(unsigned int parametrisation,
00044                      const std::vector<Scalar> &params,
00045                      const AlgebraicSymMatrix &paramCovariance,
00046                      const AlgebraicMatrix &derivatives,
00047                      unsigned int firstFixedParam, float chi2);
00048 
00049 private:
00050   unsigned int parametrisation_; 
00051   std::vector<Scalar> parameters_; 
00052   AlgebraicSymMatrix paramCovariance_; 
00053   AlgebraicMatrix derivatives_; 
00054   unsigned int firstFixedParameter_; 
00055   float chi2_; 
00056 
00057 };
00058 
00059 
00060 // To get the typedef for the collection:
00061 #include "DataFormats/Alignment/interface/TkFittedLasBeamCollectionFwd.h"
00062 
00063 #endif