CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_3/src/TrackingTools/TrajectoryParametrization/interface/CartesianTrajectoryError.h

Go to the documentation of this file.
00001 #ifndef _TRACKER_CARTESIANTRAJECTORYERROR_H_
00002 #define _TRACKER_CARTESIANTRAJECTORYERROR_H_
00003 
00004 #include "DataFormats/Math/interface/AlgebraicROOTObjects.h"
00005 #include "DataFormats/GeometryCommonDetAlgo/interface/GlobalError.h"
00006 
00015 class CartesianTrajectoryError {
00016 public:
00017 // construct
00018   CartesianTrajectoryError() {}
00019 
00022   CartesianTrajectoryError(const AlgebraicSymMatrix66& aCovarianceMatrix) :
00023     theCovarianceMatrix(aCovarianceMatrix) { }
00024 
00025 // access
00026 
00029   const AlgebraicSymMatrix66 &matrix() const {
00030     return theCovarianceMatrix;
00031   }
00032 
00036   void operator *= (double factor) {
00037     theCovarianceMatrix *= factor;
00038   }
00039 
00041 
00046   const GlobalError position() const {
00047     return GlobalError( theCovarianceMatrix.Sub<AlgebraicSymMatrix33>(0,0));
00048   }
00049 
00050 
00051 private:
00052   AlgebraicSymMatrix66 theCovarianceMatrix;
00053 };
00054 
00055 #endif