1 #ifndef __L1Trigger_VertexFinder_RecoVertex_h__ 2 #define __L1Trigger_VertexFinder_RecoVertex_h__ 14 template <
typename T = L1Track>
55 double pt()
const {
return pT_; }
69 unsigned int nHighPt = -999,
75 double z0()
const {
return z0_; }
104 template <
typename T>
108 z0width_ =
vertex.z0width();
110 highestPt_ =
vertex.highestPt();
111 pv_ =
vertex.primaryVertex();
112 highPt_ =
vertex.hasHighPt();
113 numHighPtTracks_ =
vertex.numHighPtTracks();
118 for (
const auto& trackIt :
vertex.tracks()) {
120 insert(trackAssociationMap[trackIt->getTTTrackPtr()]);
124 template <
typename T>
133 numHighPtTracks_ = 0;
144 template <
typename T>
146 double pt,
double z0,
double width,
bool highPt,
unsigned int nHighPt,
double highestPt,
bool pv) {
151 numHighPtTracks_ = nHighPt;
152 highestPt_ = highestPt;
156 template <
typename T>
158 std::vector<edm::Ptr<l1t::Vertex::Track_t>>
tracks;
159 tracks.reserve(tracks_.size());
160 for (
const auto&
t : tracks_) {
161 tracks.push_back(
t->getTTTrackPtr());
bool primaryVertex() const
True if primary vertex.
unsigned int numHighPtTracks() const
Number of high-pT tracks (pT > 10 GeV)
double pt() const
Sum of fitted tracks transverse momentum [GeV].
unsigned int numTrueTracks() const
Number of true particles assigned to this vertex.
unsigned int numHighPtTracks_
~RecoVertex()
Basic destructor.
const std::set< const TP * > & trueTracks() const
Tracking particles asociated to the vertex.
void setZ0(double z)
Set z0 position [cm].
double highestPt() const
highest track pT in the vertex
RecoVertex & operator+=(const RecoVertex &rhs)
Operators.
l1t::Vertex vertex() const
Get the equivalent l1t::Vertex.
double z0() const
Vertex z0 position [cm].
void setPt(double pt)
set the pT [GeV] of the vertex
const std::vector< const T * > & tracks() const
Tracks in the vertex.
RecoVertex(const double z0=-999.)
Basic constructor.
Simple wrapper class for TTTrack, with match to a tracking particle.
double z0width() const
Vertex z0 width [cm].
bool hasHighPt() const
Compute vertex parameters.
std::vector< const T * > tracks_
bool insert(Storage &iStorage, ItemType *iItem, const IdTag &iIdTag)
void isPrimary(bool is)
Set primary vertex tag.
auto const & tracks
cannot be loose
Class to store the L1 Track Trigger tracks.
void clear(HadCaloObj &c)
void clear()
Clear track vector.
std::set< const TP * > trueTracks_
void setParameters(double pt, double z0, double width=-999., bool highPt=false, unsigned int nHighPt=-999, double highestPt=-999., bool pv=false)
Set the vertex parameters.
unsigned int numTracks() const
Number of tracks originating from this vertex.
void insert(const T *fitTrack)
Assign fitted track to this vertex.