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