Abstract base class for a PFBlock element (track, cluster...) More...
#include <PFBlockElement.h>
Public Types | |
enum | TrackType { DEFAULT =0, T_FROM_DISP, T_TO_DISP, T_FROM_GAMMACONV, MUON, T_FROM_V0 } |
enum | Type { NONE =0, TRACK =1, PS1 =2, PS2 =3, ECAL =4, HCAL =5, GSF =6, BREM =7, HFEM =8, HFHAD =9, SC =10, HO =11, kNBETypes =12 } |
Public Member Functions | |
virtual PFBlockElement * | clone () const =0 |
necessary to have the edm::OwnVector<PFBlockElement> working More... | |
virtual const PFClusterRef & | clusterRef () const |
virtual const ConversionRefVector & | convRefs () const |
virtual const PFDisplacedTrackerVertexRef & | displacedVertexRef (TrackType trType) const |
virtual void | Dump (std::ostream &out=std::cout, const char *tab=" ") const |
print the object inside the element More... | |
const PFMultilinksType & | getMultilinks () const |
unsigned | index () const |
virtual bool | isLinkedToDisplacedVertex () const |
bool | isMultilinksValide () const |
virtual bool | isPrimary () const |
virtual bool | isSecondary () const |
void | lock () |
lock element More... | |
bool | locked () const |
locked ? More... | |
virtual const MuonRef & | muonRef () const |
PFBlockElement (Type type=NONE) | |
standard constructor More... | |
virtual void | setConversionRef (const ConversionRef &convRef, TrackType trType) |
virtual void | setDisplacedVertexRef (const PFDisplacedTrackerVertexRef &niref, TrackType trType) |
void | setIndex (unsigned index) |
set index More... | |
void | setIsValidMultilinks (bool isVal) |
void | setMultilinks (const PFMultiLinksTC &ml) |
void | setMultilinksList (const PFMultilinksType &links) |
virtual void | setMuonRef (const MuonRef &muref) |
virtual void | setTrackType (TrackType trType, bool value) |
the trackType More... | |
virtual void | setV0Ref (const VertexCompositeCandidateRef &v0ref, TrackType trType) |
virtual const reco::TrackRef & | trackRef () const |
virtual const PFRecTrackRef & | trackRefPF () const |
virtual bool | trackType (TrackType trType) const |
Type | type () const |
void | unLock () |
unlock element More... | |
virtual const VertexCompositeCandidateRef & | V0Ref () const |
virtual | ~PFBlockElement () |
destructor More... | |
Protected Attributes | |
unsigned | index_ |
index in block vector More... | |
bool | locked_ |
PFMultiLinksTC | multilinks_ |
Type | type_ |
Static Protected Attributes | |
static const ConversionRefVector | nullConv_ = reco::ConversionRefVector() |
static const MuonRef | nullMuon_ = reco::MuonRef() |
static const PFClusterRef | nullPFCluster_ = reco::PFClusterRef() |
static const PFDisplacedTrackerVertexRef | nullPFDispVertex_ |
static const PFRecTrackRef | nullPFRecTrack_ = reco::PFRecTrackRef() |
static const reco::TrackRef | nullTrack_ = reco::TrackRef() |
static const VertexCompositeCandidateRef | nullVertex_ = reco::VertexCompositeCandidateRef() |
Friends | |
std::ostream & | operator<< (std::ostream &out, const PFBlockElement &element) |
Abstract base class for a PFBlock element (track, cluster...)
this class contains a PFRecTrackRef of a PFClusterRef, depending on the type of the element
Definition at line 28 of file PFBlockElement.h.
Enumerator | |
---|---|
DEFAULT | |
T_FROM_DISP | |
T_TO_DISP | |
T_FROM_GAMMACONV | |
MUON | |
T_FROM_V0 |
Definition at line 49 of file PFBlockElement.h.
possible types for the element do not modify this enum if you don't know what you're doing!!!
Enumerator | |
---|---|
NONE | |
TRACK | |
PS1 | |
PS2 | |
ECAL | |
HCAL | |
GSF | |
BREM | |
HFEM | |
HFHAD | |
SC | |
HO | |
kNBETypes |
Definition at line 33 of file PFBlockElement.h.
|
inlinevirtual |
|
pure virtual |
necessary to have the edm::OwnVector<PFBlockElement> working
Implemented in reco::PFBlockElementSuperCluster, reco::PFBlockElementCluster, reco::PFBlockElementGsfTrack, reco::PFBlockElementBrem, and reco::PFBlockElementTrack.
Referenced by reco::PFBlock::addElement().
|
inlinevirtual |
Reimplemented in reco::PFBlockElementCluster.
Definition at line 103 of file PFBlockElement.h.
References nullPFCluster_.
Referenced by PFElectronTranslator::createBasicCluster(), PFPhotonTranslator::createBasicCluster(), PFElectronTranslator::createPreshowerCluster(), PFPhotonTranslator::createPreshowerCluster(), KDTreeLinkerTrackHcal::insertFieldClusterElt(), KDTreeLinkerTrackEcal::insertFieldClusterElt(), KDTreeLinkerPSEcal::insertFieldClusterElt(), KDTreeLinkerPSEcal::insertTargetElt(), EgammaHLTPFPhotonIsolationProducer::produce(), and FWPFBlockProxyBuilder::setupClusterElement().
|
inlinevirtual |
Reimplemented in reco::PFBlockElementTrack.
Definition at line 105 of file PFBlockElement.h.
References nullConv_.
Referenced by TrackAndTrackLinker::testLink().
|
inlinevirtual |
Reimplemented in reco::PFBlockElementTrack.
Definition at line 104 of file PFBlockElement.h.
References nullPFDispVertex_.
Referenced by TrackAndTrackLinker::testLink().
|
virtual |
print the object inside the element
Reimplemented in reco::PFBlockElementSuperCluster, reco::PFBlockElementCluster, reco::PFBlockElementGsfTrack, reco::PFBlockElementBrem, and reco::PFBlockElementTrack.
Definition at line 25 of file PFBlockElement.cc.
|
inline |
Definition at line 133 of file PFBlockElement.h.
References reco::PFMultiLinksTC::linkedClusters, and multilinks_.
Referenced by PreshowerAndECALLinker::linkPrefilter(), TrackAndECALLinker::linkPrefilter(), TrackAndHCALLinker::testLink(), and TrackAndECALLinker::testLink().
|
inline |
Definition at line 99 of file PFBlockElement.h.
References index_.
Referenced by BeautifulSoup.PageElement::_invert(), reco::PFCandidateEGammaExtra::addExtraNonConvTrack(), PFElectronTranslator::correspondingDaughterCandidate(), PFPhotonTranslator::correspondingDaughterCandidate(), PFEGammaAlgo::fillPFCandidates(), PFEGammaAlgo::initializeProtoCands(), PFEGammaAlgo::isAMuon(), PFEGammaAlgo::removeOrLinkECALClustersToKFTracks(), reco::PFCandidateEGammaExtra::setGsfElectronClusterRef(), and setIndex().
|
inlinevirtual |
Reimplemented in reco::PFBlockElementTrack.
Definition at line 122 of file PFBlockElement.h.
Referenced by TrackAndTrackLinker::linkPrefilter().
|
inline |
Definition at line 132 of file PFBlockElement.h.
References reco::PFMultiLinksTC::isValid, and multilinks_.
Referenced by PreshowerAndECALLinker::linkPrefilter(), TrackAndECALLinker::linkPrefilter(), TrackAndHCALLinker::testLink(), and TrackAndECALLinker::testLink().
|
inlinevirtual |
Reimplemented in reco::PFBlockElementTrack.
Definition at line 121 of file PFBlockElement.h.
|
inlinevirtual |
Reimplemented in reco::PFBlockElementTrack, and reco::PFBlockElementGsfTrack.
Definition at line 120 of file PFBlockElement.h.
|
inline |
lock element
Definition at line 77 of file PFBlockElement.h.
References locked_.
Referenced by reco::PFBlock::addElement().
|
inline |
|
inlinevirtual |
Reimplemented in reco::PFBlockElementTrack.
Definition at line 106 of file PFBlockElement.h.
References nullMuon_.
|
inlinevirtual |
Reimplemented in reco::PFBlockElementTrack.
Definition at line 110 of file PFBlockElement.h.
References gather_cfg::cout.
|
inlinevirtual |
Reimplemented in reco::PFBlockElementTrack.
Definition at line 108 of file PFBlockElement.h.
References gather_cfg::cout.
|
inline |
set index
Definition at line 96 of file PFBlockElement.h.
References index(), and index_.
Referenced by reco::PFBlock::addElement().
|
inline |
Definition at line 129 of file PFBlockElement.h.
References reco::PFMultiLinksTC::isValid, and multilinks_.
|
inline |
|
inline |
Definition at line 130 of file PFBlockElement.h.
References reco::PFMultiLinksTC::linkedClusters, electronStore::links, and multilinks_.
|
inlinevirtual |
Reimplemented in reco::PFBlockElementTrack.
Definition at line 112 of file PFBlockElement.h.
References gather_cfg::cout.
|
inlinevirtual |
the trackType
Reimplemented in reco::PFBlockElementGsfTrack, and reco::PFBlockElementTrack.
Definition at line 89 of file PFBlockElement.h.
References gather_cfg::cout.
|
inlinevirtual |
Reimplemented in reco::PFBlockElementTrack.
Definition at line 114 of file PFBlockElement.h.
References gather_cfg::cout.
|
inlinevirtual |
Reimplemented in reco::PFBlockElementTrack.
Definition at line 101 of file PFBlockElement.h.
References nullTrack_.
Referenced by PFPhotonAlgo::EvaluateGCorrMVA(), PFPhotonAlgo::EvaluateResMVA(), PFEGammaFilters::isElectronSafeForJetMET(), PFEGammaFilters::isPhotonSafeForJetMET(), and FWPFBlockProxyBuilder::setupTrackElement().
|
inlinevirtual |
Reimplemented in reco::PFBlockElementTrack.
Definition at line 102 of file PFBlockElement.h.
References nullPFRecTrack_.
Referenced by KDTreeLinkerTrackEcal::insertTargetElt(), and KDTreeLinkerTrackHcal::insertTargetElt().
|
inlinevirtual |
Reimplemented in reco::PFBlockElementGsfTrack, and reco::PFBlockElementTrack.
Definition at line 86 of file PFBlockElement.h.
Referenced by PFAlgo::isFromSecInt(), FWPFBlockProxyBuilder::setupTrackElement(), and TrackAndTrackLinker::testLink().
|
inline |
Definition at line 83 of file PFBlockElement.h.
References type_.
Referenced by cuy.ValElement::__init__(), PFPhotonAlgo::EvaluateGCorrMVA(), PFPhotonAlgo::EvaluateResMVA(), Vispa.Plugins.ConfigEditor.ConfigDataAccessor.ConfigDataAccessor::inputCommands(), PFEGammaAlgo::isAMuon(), PFEGammaFilters::isElectronSafeForJetMET(), PFEGammaFilters::isPhotonSafeForJetMET(), PreshowerAndECALLinker::linkPrefilter(), TrackAndECALLinker::linkPrefilter(), PFBlockElementSCEqual::operator()(), Vispa.Plugins.ConfigEditor.ConfigDataAccessor.ConfigDataAccessor::outputCommands(), Vispa.Plugins.ConfigEditor.ConfigDataAccessor.ConfigDataAccessor::outputEventContent(), PFElectronTranslator::produce(), EgammaHLTPFPhotonIsolationProducer::produce(), PFPhotonTranslator::produce(), Vispa.Plugins.ConfigEditor.ConfigDataAccessor.ConfigDataAccessor::properties(), ECALAndHCALLinker::testLink(), HCALAndHOLinker::testLink(), HFEMAndHFHADLinker::testLink(), HCALAndBREMLinker::testLink(), GSFAndBREMLinker::testLink(), GSFAndHCALLinker::testLink(), GSFAndECALLinker::testLink(), TrackAndHOLinker::testLink(), ECALAndBREMLinker::testLink(), TrackAndHCALLinker::testLink(), TrackAndGSFLinker::testLink(), SCAndECALLinker::testLink(), PreshowerAndECALLinker::testLink(), and TrackAndECALLinker::testLink().
|
inline |
|
inlinevirtual |
Reimplemented in reco::PFBlockElementTrack.
Definition at line 107 of file PFBlockElement.h.
References nullVertex_.
Referenced by TrackAndTrackLinker::testLink().
|
friend |
|
protected |
index in block vector
Definition at line 148 of file PFBlockElement.h.
Referenced by index(), and setIndex().
|
protected |
locked flag.
Definition at line 145 of file PFBlockElement.h.
|
protected |
Definition at line 151 of file PFBlockElement.h.
Referenced by getMultilinks(), isMultilinksValide(), setIsValidMultilinks(), setMultilinks(), and setMultilinksList().
|
staticprotected |
Definition at line 158 of file PFBlockElement.h.
Referenced by convRefs().
|
staticprotected |
Definition at line 159 of file PFBlockElement.h.
Referenced by muonRef().
|
staticprotected |
Definition at line 156 of file PFBlockElement.h.
Referenced by clusterRef().
|
staticprotected |
Definition at line 157 of file PFBlockElement.h.
Referenced by reco::PFBlockElementTrack::displacedVertexRef(), and displacedVertexRef().
|
staticprotected |
Definition at line 155 of file PFBlockElement.h.
Referenced by trackRefPF().
|
staticprotected |
Definition at line 154 of file PFBlockElement.h.
Referenced by trackRef().
|
staticprotected |
Definition at line 160 of file PFBlockElement.h.
Referenced by V0Ref().
|
protected |
type, see PFBlockElementType
Definition at line 140 of file PFBlockElement.h.
Referenced by Modules.Service::_placeImpl(), Modules.ESSource::_placeImpl(), Modules.ESProducer::_placeImpl(), Modules.ESPrefer::copy(), Mixins._TypedParameterizable::dumpPython(), Modules.ESPrefer::dumpPythonAs(), Modules.Service::insertInto(), RandomRunSource.RandomRunSource::insertInto(), Mixins._TypedParameterizable::insertInto(), Modules.ESSource::moduleLabel_(), Modules.ESProducer::moduleLabel_(), Modules.ESSource::nameInProcessDesc_(), Modules.ESProducer::nameInProcessDesc_(), Modules.ESPrefer::nameInProcessDesc_(), and type().