1 #ifndef HeavyFlavorAnalysis_RecoDecay_BPHKinematicFit_h 2 #define HeavyFlavorAnalysis_RecoDecay_BPHKinematicFit_h 55 virtual const std::vector<RefCountedKinematicParticle>&
kinParticles()
const;
56 virtual std::vector<RefCountedKinematicParticle>
kinParticles(
const std::vector<std::string>&
names)
const;
108 std::map<const reco::Candidate*, double>
dMSig;
114 mutable std::map<const reco::Candidate*, RefCountedKinematicParticle>
kinMap;
virtual const math::XYZTLorentzVector & p4() const
compute total momentum after the fit
virtual void buildParticles() const
virtual void addK(const std::string &name, const reco::Candidate *daug, double mass=-1.0, double sigma=-1.0)
BPHGenericPtr< const BPHRecoCandidate >::type BPHRecoConstCandPtr
virtual bool isEmpty() const
virtual ParticleMass mass() const
const std::string names[nVars_]
virtual const RefCountedKinematicParticle currentParticle() const
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
double constrSigma() const
std::map< const reco::Candidate *, RefCountedKinematicParticle > kinMap
double constrMass() const
retrieve the constraint
virtual void fitMomentum() const
virtual const RefCountedKinematicTree & kinematicTree() const
perform the kinematic fit and get the result
std::map< const reco::Candidate *, double > dMSig
virtual const RefCountedKinematicVertex currentDecayVertex() const
virtual const std::vector< RefCountedKinematicParticle > & kinParticles() const
get kinematic particles
void setNotUpdated() const override
virtual void resetKinematicFit() const
reset the kinematic fit
std::vector< RefCountedKinematicParticle > allParticles
virtual bool isValidFit() const
RefCountedKinematicTree kinTree
void setConstraint(double mass, double sigma)
apply a mass constraint
math::XYZTLorentzVector totalMomentum
~BPHKinematicFit() override