1 #ifndef __PFBlockElementTrack__
2 #define __PFBlockElementTrack__
25 void Dump(std::ostream&
out =
std::cout,
const char* tab =
" ")
const override;
Abstract base class for a PFBlock element (track, cluster...)
const ConversionRefVector & convRefs() const override
const PFDisplacedTrackerVertexRef & displacedVertexRef(TrackType trType) const override
bool isPrimary() const override
ConversionRefVector convRefs_
reference to reco conversion
static constexpr unsigned int kLinkedToDisplacedVertexMask
PFRecTrackRef trackRefPF_
reference to the corresponding track (transient)
static const PFDisplacedTrackerVertexRef nullPFDispVertex_
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< float > > XYZPointF
point in space with cartesian internal representation
PFBlockElement * clone() const override
necessary to have the edm::OwnVector<PFBlockElement> working
reco::TrackRef trackRef_
reference to the corresponding track
void setTrackType(TrackType trType, bool value) override
the trackType
const math::XYZPointF & positionAtECALEntrance() const
const VertexCompositeCandidateRef & V0Ref() const override
void setDisplacedVertexRef(const PFDisplacedTrackerVertexRef &niref, TrackType trType) override
the ref to the displaced vertex interaction
bool trackType(TrackType trType) const override
VertexCompositeCandidateRef v0Ref_
reference to V0
const reco::MuonRef & muonRef() const override
void setPositionAtECALEntrance(float x, float y, float z)
set position at ECAL entrance
void Dump(std::ostream &out=std::cout, const char *tab=" ") const override
print the object inside the element
static constexpr unsigned int kPrimaryMask
bool isSecondary() const override
check if the track is secondary
bool isLinkedToDisplacedVertex() const override
static constexpr unsigned int kSecondaryMask
reco::MuonRef muonRef_
reference to the corresponding muon
PFDisplacedTrackerVertexRef displacedVertexDaughterRef_
reference to the corresponding pf displaced vertex which this track was created
const reco::TrackRef & trackRef() const override
PFDisplacedTrackerVertexRef displacedVertexMotherRef_
reference to the corresponding pf displaced vertex where this track was created
void push_back(value_type const &ref)
Add a Ref<C, T> to the RefVector.
void setMuonRef(const MuonRef &muref) override
reference to the Muon
void setV0Ref(const VertexCompositeCandidateRef &V0Ref, TrackType trType) override
the ref to V0
void setConversionRef(const ConversionRef &convRef, TrackType trType) override
the ref to gamma conversion
const PFRecTrackRef & trackRefPF() const override
math::XYZPointF positionAtECALEntrance_
position at ECAL entrance