11 GenericParticle::GenericParticle() :
107 if (it->isNonnull())
tracks_.push_back(**it);
160 size_t ntracks = rc->numberOfTracks();
163 for (
size_t i = 0;
i < ntracks; ++
i) {
182 if (rc2 !=
nullptr) {
edm::Ref< GsfTrackCollection > GsfTrackRef
persistent reference to a GsfTrack
virtual reco::GsfTrackRef gsfTrack() const
reference to a GsfTrack
value_type const * get() const
bool isNonnull() const
Checks for non-null.
CaloTowerCollection caloTower_
reco::TrackRef standaloneTrackRef_
reco::TrackCollection combinedTrack_
virtual const PolarLorentzVector & polarP4() const =0
four-momentum Lorentz vector
reco::TrackCollection track_
void fillInFrom(const reco::Candidate &cand)
void swap(SortedCollection &other)
void push_back(T const &t)
~GenericParticle() override
destructor
void embedTrack()
embeds the master track instead of keeping a reference to it
virtual reco::TrackRef standAloneMuon() const
reference to a stand-alone muon Track
const_iterator end() const
Termination of iteration.
edm::RefVector< TrackCollection > TrackRefVector
vector of reference to Track in the same collection
edm::Ref< SuperClusterCollection > SuperClusterRef
reference to an object in a collection of SuperCluster objects
GenericParticle()
default constructor
const_iterator begin() const
Initialize an iterator over the RefVector.
virtual void setCombinedMuon(const reco::TrackRef &ref, bool embed=false)
sets combined muon track reference (or even embed it into the object)
void setVertex(const Point &vertex) override
set vertex
virtual reco::TrackRef track() const
reference to a Track
void setCharge(Charge q) final
set electric charge
virtual int status() const =0
status word
Analysis-level Generic Particle class (e.g. for hadron or muon not fully reconstructed) ...
reco::TrackCollection standaloneTrack_
void embedStandalone()
embeds the stand-alone track instead of keeping a reference to it
reco::SuperClusterCollection superCluster_
virtual int pdgId() const =0
PDG identifier.
virtual CaloTowerRef caloTower() const
reference to a CaloTower
reco::GsfTrackRef gsfTrackRef_
reco::SuperClusterRef superClusterRef_
edm::SortedCollection< CaloTower > CaloTowerCollection
virtual void setGsfTrack(const reco::GsfTrackRef &ref, bool embed=false)
sets gsf track reference (or even embed it into the object)
reco::TrackRef combinedMuon() const override
reco::TrackRef standAloneMuon() const override
virtual void setCaloTower(const CaloTowerRef &ref, bool embed=false)
sets calotower reference (or even embed it into the object)
CaloTowerRef caloTower() const override
virtual void setTracks(const reco::TrackRefVector &refs, bool embed=false)
sets multiple track references (or even embed the tracks into the object - whatch out for disk size i...
bool overlap(const Candidate &) const override
void embedGsfTrack()
embeds the gsf track instead of keeping a reference to it
void embedSuperCluster()
embeds the supercluster instead of keeping a reference to it
virtual void setStandAloneMuon(const reco::TrackRef &ref, bool embed=false)
sets stand-alone muon track reference (or even embed it into the object)
reco::TrackCollection tracks_
void embedTracks()
embeds the other tracks instead of keeping references
reco::GsfTrackCollection gsfTrack_
Candidate()
default constructor
reco::TrackRef track() const override
edm::Ref< TrackCollection > TrackRef
persistent reference to a Track
reco::TrackRefVector trackRefs_
virtual int charge() const =0
electric charge
CaloTowerRef caloTowerRef_
reco::TrackRef combinedTrackRef_
void push_back(value_type const &ref)
Add a Ref<C, T> to the RefVector.
size_type size() const
Size of the RefVector.
Templated PAT object container.
void embedCaloTower()
embeds the calotower instead of keeping a reference to it
virtual const Point & vertex() const =0
vertex position
reco::GsfTrackRef gsfTrack() const override
reco::SuperClusterRef superCluster() const override
edm::Ref< CaloTowerCollection > CaloTowerRef
void setStatus(int status) final
set status word
void embedCombined()
embeds the combined track instead of keeping a reference to it
void setPdgId(int pdgId) final
virtual void setTrack(const reco::TrackRef &ref, bool embed=false)
sets master track reference (or even embed it into the object)
edm::Ptr< reco::Candidate > refToOrig_
void setP4(const LorentzVector &p4) final
set 4-momentum
virtual reco::SuperClusterRef superCluster() const
reference to a SuperCluster
virtual void setSuperCluster(const reco::SuperClusterRef &ref, bool embed=false)
sets supercluster reference (or even embed it into the object)
virtual reco::TrackRef combinedMuon() const
reference to a stand-alone muon Track