39 if (ni1_TO_DISP == ni2_FROM_DISP) {
44 if (ni1_FROM_DISP == ni2_TO_DISP) {
49 if (ni1_FROM_DISP == ni2_FROM_DISP) {
55 for (
const auto& conv1 : elem1->
convRefs()) {
56 for (
const auto& conv2 : elem2->
convRefs()) {
57 if (conv1.isNonnull() && conv2.isNonnull() && conv1 == conv2) {
Abstract base class for a PFBlock element (track, cluster...)
virtual const PFDisplacedTrackerVertexRef & displacedVertexRef(TrackType trType) const
virtual const ConversionRefVector & convRefs() const
TrackAndTrackLinker(const edm::ParameterSet &conf)
bool isNonnull() const
Checks for non-null.
virtual const VertexCompositeCandidateRef & V0Ref() const
bool linkPrefilter(const reco::PFBlockElement *, const reco::PFBlockElement *) const override
double testLink(const reco::PFBlockElement *, const reco::PFBlockElement *) const override
virtual bool trackType(TrackType trType) const
virtual bool isLinkedToDisplacedVertex() const
#define DEFINE_EDM_PLUGIN(factory, type, name)