Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:04:16

0001 #ifndef GsfTrackReco_GsfComponent5D_h
0002 #define GsfTrackReco_GsfComponent5D_h
0003 
0004 #include "DataFormats/Math/interface/Vector.h"
0005 #include "DataFormats/Math/interface/Error.h"
0006 
0007 /// fixed size matrix
0008 namespace reco {
0009   class GsfComponent5D {
0010   public:
0011     enum { dimension = 5 };
0012     typedef math::Vector<dimension>::type ParameterVector;
0013     typedef math::Error<dimension>::type CovarianceMatrix;
0014     GsfComponent5D() : weight_(0.) {}
0015     GsfComponent5D(const double& weight, const ParameterVector& vector, const CovarianceMatrix& matrix);
0016     double weight() const { return weight_; }
0017     const ParameterVector& parameters() const { return parameters_; }
0018     CovarianceMatrix& covariance(CovarianceMatrix& matrix) const;
0019 
0020   private:
0021     double weight_;
0022     ParameterVector parameters_;
0023     float covariance_[dimension * (dimension + 1) / 2];
0024   };
0025 }  // namespace reco
0026 #endif