CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions
converter::TrackToCandidate Struct Reference

#include <TrackToCandidate.h>

Inheritance diagram for converter::TrackToCandidate:
converter::MassiveCandidateConverter

Public Types

typedef reco::RecoChargedCandidate Candidate
 
typedef reco::TrackCollection Components
 
typedef reco::Track value_type
 

Public Member Functions

void convert (reco::TrackRef trkRef, reco::RecoChargedCandidate &c) const
 
 TrackToCandidate (const edm::ParameterSet &cfg)
 
- Public Member Functions inherited from converter::MassiveCandidateConverter
void beginFirstRun (const edm::EventSetup &)
 
 MassiveCandidateConverter (const edm::ParameterSet &)
 

Additional Inherited Members

- Protected Attributes inherited from converter::MassiveCandidateConverter
double massSqr_
 
PdtEntry particle_
 

Detailed Description

Definition at line 12 of file TrackToCandidate.h.

Member Typedef Documentation

Definition at line 15 of file TrackToCandidate.h.

Definition at line 14 of file TrackToCandidate.h.

Definition at line 13 of file TrackToCandidate.h.

Constructor & Destructor Documentation

converter::TrackToCandidate::TrackToCandidate ( const edm::ParameterSet cfg)
inline

Definition at line 16 of file TrackToCandidate.h.

16  :
18  }
MassiveCandidateConverter(const edm::ParameterSet &)

Member Function Documentation

void converter::TrackToCandidate::convert ( reco::TrackRef  trkRef,
reco::RecoChargedCandidate c 
) const
inline

Definition at line 19 of file TrackToCandidate.h.

References reco::TrackBase::charge(), converter::MassiveCandidateConverter::massSqr_, reco::TrackBase::momentum(), AlCaHLTBitMon_ParallelJobs::p, converter::MassiveCandidateConverter::particle_, PdtEntry::pdgId(), reco::LeafCandidate::setCharge(), reco::LeafCandidate::setP4(), reco::LeafCandidate::setPdgId(), reco::RecoChargedCandidate::setTrack(), reco::LeafCandidate::setVertex(), mathSSE::sqrt(), protons_cff::t, and reco::TrackBase::vertex().

19  {
20  const reco::Track & trk = * trkRef;
21  c.setCharge(trk.charge());
22  c.setVertex(trk.vertex());
23  const reco::Track::Vector& p = trk.momentum();
24  double t = sqrt(massSqr_ + p.mag2());
25  c.setP4(reco::Candidate::LorentzVector(p.x(), p.y(), p.z(), t));
26  c.setTrack(trkRef);
28  }
const Vector & momentum() const
track momentum vector
Definition: TrackBase.h:714
void setVertex(const Point &vertex) override
set vertex
void setCharge(Charge q) final
set electric charge
Definition: LeafCandidate.h:93
const Point & vertex() const
reference point on the track. This method is DEPRECATED, please use referencePoint() instead ...
Definition: TrackBase.h:738
T sqrt(T t)
Definition: SSEVec.h:18
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:37
int charge() const
track electric charge
Definition: TrackBase.h:606
void setTrack(const reco::TrackRef &r)
set reference to track
void setPdgId(int pdgId) final
math::XYZVector Vector
spatial vector
Definition: TrackBase.h:80
void setP4(const LorentzVector &p4) final
set 4-momentum
int pdgId() const
PDG id.
Definition: PdtEntry.cc:7