36 const string& daug1Name,
39 const string& daug2Name,
61 expMass(expectedMass) {}
64 const string& daug1Name,
67 const string& daug2Name,
70 const vector<reco::VertexCompositeCandidate>* v0Collection,
76 es, daug1Name, daug1Mass, daug1Sigma, daug2Name, daug2Mass, daug2Sigma, nullptr, nullptr, expectedMass),
81 expMass(expectedMass) {}
84 const string& daug1Name,
87 const string& daug2Name,
90 const vector<reco::VertexCompositePtrCandidate>* vpCollection,
96 es, daug1Name, daug1Mass, daug1Sigma, daug2Name, daug2Mass, daug2Sigma, nullptr, nullptr, expectedMass),
101 expMass(expectedMass) {}
146 if ((m1 > mcut) && (
m2 < mcut))
148 if ((m1 < mcut) && (
m2 > mcut))
151 return (fabs(mv0 - cptrX->
mass()) < fabs(mv0 - cptrY->
mass()) ? candX : candY);
void buildFromBPHGenericCollection() override
build candidates and link to V0
BPHPlusMinusCandidatePtr buildCandidate(const reco::Candidate *c1, const reco::Candidate *c2, const void *v0, v0Type type) override
virtual double mass() const =0
mass
virtual std::vector< prod_ptr > build()
build candidates
const BPHEventSetupWrapper * evSetup
void add(const std::string &name, const reco::Candidate *daug, double mass=-1.0, double sigma=-1.0) override
BPHGenericPtr< BPHPlusMinusCandidate >::type BPHPlusMinusCandidatePtr
static type create(Args &&... args)
common object to interface with edm collections
virtual ParticleMass mass() const
BPHDecayToV0DiffMassBuilder(const BPHEventSetupWrapper &es, const std::string &daug1Name, double daug1Mass, double daug1Sigma, const std::string &daug2Name, double daug2Mass, double daug2Sigma, const BPHRecoBuilder::BPHGenericCollection *posCollection, const BPHRecoBuilder::BPHGenericCollection *negCollection, double expectedMass)