11 _useKDTree(conf.getParameter<bool>(
"useKDTree")),
13 _debug(conf.getUntrackedParameter<bool>(
"debug",
false)) {}
35 if( elem1->
type() < elem2->
type() ) {
51 kftrackref == gsftrackref ) {
57 if(_useConvertedBrems) {
59 const std::vector<reco::PFRecTrackRef>& convbrems =
60 gsfref->convBremPFRecTrackRef();
61 for(
const auto& convbrem : convbrems ) {
62 if( tkelem->
trackType(T_FROM_GAMMACONV) &&
63 kftrackref == convbrem->trackRef() ) {
67 if( convbrembase == kftrackrefbase ) {
Abstract base class for a PFBlock element (track, cluster...)
TrackAndGSFLinker(const edm::ParameterSet &conf)
bool isNonnull() const
Checks for non-null.
const GsfPFRecTrackRef & GsftrackRefPF() const
bool isLinkedToDisplacedVertex() const
virtual bool trackType(TrackType trType) const
double testLink(const reco::PFBlockElement *, const reco::PFBlockElement *) const override
const PFRecTrackRef & trackRefPF() const
#define DEFINE_EDM_PLUGIN(factory, type, name)
volatile std::atomic< bool > shutdown_flag false