45 : evSetup(es), oldTracks(
true), oldVertex(
true), validTks(
false) {}
49 map<const reco::Candidate*, const reco::Candidate*> iMap;
50 const vector<const reco::Candidate*>& daug =
daughters();
54 for (i = 0; i <
n; ++
i) {
58 for (i = 0; i <
n; ++
i) {
62 const vector<BPHRecoConstCandPtr>& dComp =
daughComp();
65 for (j = 0; j <
m; ++
j) {
66 const map<const reco::Candidate*, string>&
dMap = dComp[
j]->searchMap;
67 searchMap.insert(dMap.begin(), dMap.end());
106 map<const reco::Candidate*, const reco::Track*>::const_iterator iter =
tkMap.find(cand);
107 map<const reco::Candidate*, const reco::Track*>::const_iterator iend =
tkMap.end();
108 return (iter != iend ? iter->second :
nullptr);
120 map<const reco::Candidate*, reco::TransientTrack*>::const_iterator iter =
ttMap.find(cand);
121 map<const reco::Candidate*, reco::TransientTrack*>::const_iterator iend =
ttMap.end();
122 return (iter != iend ? iter->second :
nullptr);
126 static string dum =
"";
127 map<const reco::Candidate*, string>::const_iterator iter =
searchMap.find(cand);
134 addP(name, daug, mass);
141 const map<const reco::Candidate*, string>&
dMap = comp->searchMap;
142 searchMap.insert(dMap.begin(), dMap.end());
161 const vector<const reco::Candidate*>& dL =
daughFull();
172 const char* searchList =
"cfhp";
173 map<const reco::Candidate*, string>::const_iterator iter =
searchMap.find(rp);
175 searchList = iter->second.c_str();
179 <<
"no track for reco::(PF)Candidate";
const reco::Candidate * cand
const reco::Track * getTrack(const reco::Candidate *cand) const
get Track for a daughter
BPHGenericPtr< const BPHRecoCandidate >::type BPHRecoConstCandPtr
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
reco::TransientTrack build(const reco::Track *p) 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 void fitVertex() const
static const reco::Track * getTrack(const reco::Candidate &rc, const char *modeList="cfhbpmnigse", char *modeFlag=0)
virtual void addV(const std::string &name, const reco::Candidate *daug, const std::string &searchList, double mass)
const std::vector< Component > & componentList() const
CachingVertex< 5 > vertex(const std::vector< reco::TransientTrack > &tracks) const override
std::map< const reco::Candidate *, reco::TransientTrack * > ttMap
const std::vector< const reco::Track * > & tracks() const
get list of Tracks
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
void setNotUpdated() const override
reco::Vertex fittedVertex
BPHDecayVertex(const edm::EventSetup *es)
std::map< const reco::Candidate *, const reco::Track * > tkMap
const edm::EventSetup * evSetup
virtual bool validTracks() const
check for valid reconstructed vertex
virtual int charge() const =0
electric charge
virtual const std::vector< BPHRecoConstCandPtr > & daughComp() const
const std::vector< reco::TransientTrack > & transientTracks() const
get list of TransientTracks
virtual const std::vector< const reco::Candidate * > & daughFull() const
std::vector< const reco::Track * > rTracks
~BPHDecayVertex() override
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger list("!*","!HLTx*"if it matches 2 triggers or more) will accept the event if all the matching triggers are FAIL.It will reject the event if any of the triggers are PASS or EXCEPTION(this matches the behavior of"!*"before the partial wildcard feature was incorporated).Triggers which are in the READY state are completely ignored.(READY should never be returned since the trigger paths have been run
virtual const reco::Vertex & vertex() const
get reconstructed vertex