File indexing completed on 2024-04-06 12:23:35
0001 #ifndef TFitParticleEScaledMomDev_hh
0002 #define TFitParticleEScaledMomDev_hh
0003
0004 #include "PhysicsTools/KinFitter/interface/TAbsFitParticle.h"
0005 #include "TLorentzVector.h"
0006 #include "TMatrixD.h"
0007
0008 class TFitParticleEScaledMomDev : public TAbsFitParticle {
0009 public:
0010 TFitParticleEScaledMomDev();
0011 TFitParticleEScaledMomDev(const TFitParticleEScaledMomDev& fitParticle);
0012 TFitParticleEScaledMomDev(TLorentzVector* pini, const TMatrixD* theCovMatrix);
0013 TFitParticleEScaledMomDev(const TString& name,
0014 const TString& title,
0015 TLorentzVector* pini,
0016 const TMatrixD* theCovMatrix);
0017 ~TFitParticleEScaledMomDev() override;
0018 TAbsFitParticle* clone(const TString& newname = "") const override;
0019
0020
0021
0022
0023 TMatrixD* getDerivative() override;
0024 TMatrixD* transform(const TLorentzVector& vec) override;
0025 void setIni4Vec(const TLorentzVector* pini) override;
0026 TLorentzVector* calc4Vec(const TMatrixD* params) override;
0027
0028 protected:
0029 void init(TLorentzVector* pini, const TMatrixD* theCovMatrix);
0030
0031 private:
0032 ClassDefOverride(TFitParticleEScaledMomDev, 0)
0033 };
0034
0035 #endif