55 return (
algo_ == algo);
59 stream <<
" Pt = " << this->
pt() <<
", eta = " << this->
eta() <<
", phi = " << this->
phi()
60 <<
" (mass = " << this->
mass() <<
")" << std::endl;
61 stream <<
" charge = " << this->
charge() <<
" (pdgId = " << this->
pdgId() <<
")" << std::endl;
62 stream <<
"charged PFCandidate";
69 stream <<
": N/A" << std::endl;
71 stream <<
"reco::Track: ";
73 stream <<
"Pt = " <<
track_->pt() <<
" +/- " <<
track_->ptError() <<
", eta = " <<
track_->eta()
74 <<
", phi = " <<
track_->phi() << std::endl;
80 stream <<
"N/A" << std::endl;
82 stream <<
"neutral PFCandidates:";
86 for (std::vector<CandidatePtr>::const_iterator neutralPFCandidate =
neutralPFCandidates_.begin();
88 ++neutralPFCandidate) {
89 stream <<
" #" << idx <<
" (" << neutralPFCandidate->
id() <<
":" << neutralPFCandidate->key() <<
"):"
90 <<
" Pt = " << (*neutralPFCandidate)->pt() <<
", eta = " << (*neutralPFCandidate)->eta()
91 <<
", phi = " << (*neutralPFCandidate)->phi() <<
" (pdgId = " << (*neutralPFCandidate)->pdgId() <<
")"
97 stream <<
"N/A" << std::endl;
105 algo_string =
"chargedPFCandidate";
107 algo_string =
"Track";
109 algo_string =
"PFNeutralHadron";
110 stream <<
"algo = " << algo_string << std::endl;
CandidatePtr lostTrackCandidate_
int Charge
electric charge type
PFRecoTauChargedHadronAlgorithm algo() const
Algorithm that built this charged hadron.
const edm::EventSetup & c
double pt() const final
transverse momentum
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< float > > XYZPointF
point in space with cartesian internal representation
uint32_t T const *__restrict__ uint32_t const *__restrict__ int32_t int Histo::index_type cudaStream_t stream
~PFRecoTauChargedHadron() override
destructor
int pdgId() const final
PDG identifier.
void print(std::ostream &stream=std::cout) const
PFRecoTauChargedHadronAlgorithm
std::ostream & operator<<(std::ostream &, BeamSpot beam)
CandidatePtr chargedPFCandidate_
virtual int charge() const =0
electric charge
std::vector< CandidatePtr > neutralPFCandidates_
const TrackPtr & getTrack() const
reference to reco::Track
bool isNonnull() const
Checks for non-null.
PFRecoTauChargedHadronAlgorithm algo_
ProductID id() const
Accessor for product ID.
math::XYZTLorentzVector LorentzVector
Lorentz vector.
double mass() const final
mass
Structure Point Contains parameters of Gaussian fits to DMRs.
math::XYZPointF positionAtECALEntrance_
bool algoIs(PFRecoTauChargedHadronAlgorithm algo) const
Check whether a given algo produced this charged hadron.
double phi() const final
momentum azimuthal angle
const CandidatePtr & getChargedPFCandidate() const
reference to "charged" PFCandidate (either charged PFCandidate or PFNeutralHadron) ...
void setPdgId(int pdgId) final
const math::XYZPointF & positionAtECALEntrance() const
position at ECAL entrance
int charge() const final
electric charge
const std::vector< CandidatePtr > & getNeutralPFCandidates() const
references to additional neutral PFCandidates
const CandidatePtr & getLostTrackCandidate() const
reference to "lostTrack Candidate" when chadron built with tracks stored as pat::PackedCandidates ...
double eta() const final
momentum pseudorapidity