61 map<const reco::Candidate*, const reco::Candidate*> iMap;
62 const vector<const reco::Candidate*>& daug =
daughters();
66 for (i = 0; i <
n; ++
i) {
70 for (i = 0; i <
n; ++
i) {
74 const vector<BPHRecoConstCandPtr>& dComp =
daughComp();
77 for (j = 0; j <
m; ++
j) {
78 const map<const reco::Candidate*, string>&
dMap = dComp[
j]->searchMap;
79 searchMap.insert(dMap.begin(), dMap.end());
106 if ((fitter ==
nullptr) && (bs ==
nullptr) && (priorPos ==
nullptr) && (priorError ==
nullptr)) {
113 if (fitter !=
nullptr) {
114 fitVertex(fitter, bs, priorPos, priorError);
117 fitVertex(&kvf, bs, priorPos, priorError);
132 map<const reco::Candidate*, const reco::Track*>::const_iterator iter =
tkMap.find(cand);
133 map<const reco::Candidate*, const reco::Track*>::const_iterator iend =
tkMap.end();
134 return (iter != iend ? iter->second :
nullptr);
146 map<const reco::Candidate*, reco::TransientTrack*>::const_iterator iter =
ttMap.find(cand);
147 map<const reco::Candidate*, reco::TransientTrack*>::const_iterator iend =
ttMap.end();
148 return (iter != iend ? iter->second :
nullptr);
155 static string dum =
"";
156 map<const reco::Candidate*, string>::const_iterator iter =
searchMap.find(cand);
163 addP(name, daug, mass);
170 const map<const reco::Candidate*, string>&
dMap = comp->searchMap;
171 searchMap.insert(dMap.begin(), dMap.end());
190 const vector<const reco::Candidate*>& dL =
daughFull();
201 const char* searchList =
"cfhp";
202 map<const reco::Candidate*, string>::const_iterator iter =
searchMap.find(rp);
204 searchList = iter->second.c_str();
208 <<
"no track for reco::(PF)Candidate";
236 if (priorPos ==
nullptr) {
240 if (priorError ==
nullptr) {
256 <<
"vertex fit failed";
const reco::Candidate * cand
const reco::Track * getTrack(const reco::Candidate *cand) const
get Track for a daughter
const edm::EventSetup & c
const edm::EventSetup * getEventSetup() const
retrieve EventSetup
BPHGenericPtr< const BPHRecoCandidate >::type BPHRecoConstCandPtr
VertexFitter< 5 > * savedFitter
reco::TransientTrack * getTransientTrack(const reco::Candidate *cand) const
get TransientTrack for a daughter
bool isValid() const
Tells whether the vertex is valid.
virtual void setNotUpdated() const
virtual bool validVertex() const
virtual void tTracks() const
std::vector< reco::TransientTrack > trTracks
std::map< std::string, const reco::Candidate * > dMap
std::map< const reco::Candidate *, std::string > searchMap
virtual const std::vector< const reco::Candidate * > & daughters() const
const std::string & getTrackSearchList(const reco::Candidate *cand) const
retrieve track search list
virtual CachingVertex< N > vertex(const std::vector< reco::TransientTrack > &tracks) const =0
virtual void addV(const std::string &name, const reco::Candidate *daug, const std::string &searchList, double mass)
static const reco::Track * getTrack(const reco::Candidate &rc, const char *modeList="cfhbpmnigset", char *modeFlag=nullptr)
const std::vector< Component > & componentList() const
reco::BeamSpot const * savedBS
std::map< const reco::Candidate *, reco::TransientTrack * > ttMap
virtual int charge() const =0
electric charge
GlobalError const * savedPE
virtual void fitVertex(VertexFitter< 5 > *fitter, const reco::BeamSpot *bs, const GlobalPoint *priorPos, const GlobalError *priorError) const
const std::vector< const reco::Track * > & tracks() const
get list of Tracks
virtual const reco::Vertex & vertex(VertexFitter< 5 > *fitter=nullptr, const reco::BeamSpot *bs=nullptr, const GlobalPoint *priorPos=nullptr, const GlobalError *priorError=nullptr) const
get reconstructed vertex
Log< level::Warning, true > LogPrint
BPHDecayVertex(const BPHDecayVertex &x)=delete
virtual void addP(const std::string &name, const reco::Candidate *daug, double mass=-1.0)
virtual const reco::Candidate * originalReco(const reco::Candidate *daug) const
get the original particle from the clone
reco::Vertex fittedVertex
std::map< const reco::Candidate *, const reco::Track * > tkMap
const edm::EventSetup * evSetup
virtual bool validTracks() const
check for valid reconstructed vertex
GlobalPoint const * savedPP
virtual const std::vector< BPHRecoConstCandPtr > & daughComp() const
const std::vector< reco::TransientTrack > & transientTracks() const
get list of TransientTracks
void setNotUpdated() const override
virtual const std::vector< const reco::Candidate * > & daughFull() const
std::vector< const reco::Track * > rTracks
~BPHDecayVertex() override