43 p1Collection(d1Collection),
44 p2Collection(d2Collection),
54 const std::vector<reco::VertexCompositeCandidate>* v0Collection,
59 p1Collection(nullptr),
60 p2Collection(nullptr),
61 vCollection(v0Collection),
70 const std::vector<reco::VertexCompositePtrCandidate>* vpCollection,
75 p1Collection(nullptr),
76 p2Collection(nullptr),
78 rCollection(vpCollection),
129 int nv0 = v0Collection->size();
133 for (iv0 = 0; iv0 < nv0; ++iv0) {
137 if (v0.numberOfDaughters() != 2)
154 if (cand->daughters().size() != 2)
161 cList.push_back(cand);
172 map<const BPHRecoCandidate*, const V0Info*>::iterator iter =
v0Map.begin();
173 map<const BPHRecoCandidate*, const V0Info*>::iterator iend =
v0Map.end();
175 delete iter++->second;
BPHDecayToV0Builder(const edm::EventSetup &es, const std::string &d1Name, const std::string &d2Name, const BPHRecoBuilder::BPHGenericCollection *d1Collection, const BPHRecoBuilder::BPHGenericCollection *d2Collection)
~BPHDecayToV0Builder() override
virtual const Candidate * daughter(size_type i) const =0
return daughter at a given position, i = 0, ... numberOfDaughters() - 1 (read only mode) ...
std::vector< BPHPlusMinusConstCandPtr > build()
build candidates
bool accept(const BPHDecayVertex &cand) const override
select vertex
virtual void buildFromBPHGenericCollection()=0
build candidates and link to V0
double getPtMin() const
get current cuts
bool accept(const BPHDecayMomentum &cand) const override
select particle
const BPHRecoBuilder::BPHGenericCollection * p2Collection
Container::value_type value_type
void setEtaMax(double eta)
BPHGenericPtr< BPHPlusMinusCandidate >::type BPHPlusMinusCandidatePtr
std::map< const BPHRecoCandidate *, const V0Info * > v0Map
const BPHRecoBuilder::BPHGenericCollection * p1Collection
std::vector< BPHPlusMinusConstCandPtr > cList
const std::vector< reco::VertexCompositeCandidate > * vCollection
virtual BPHPlusMinusCandidatePtr buildCandidate(const reco::Candidate *c1, const reco::Candidate *c2, const void *v0, v0Type type)=0
void buildFromV0(const T *v0Collection, v0Type type)
const std::vector< reco::VertexCompositePtrCandidate > * rCollection
void setPtMin(double pt)
set cuts
virtual const LorentzVector & p4() const =0
four-momentum Lorentz vector