12 :
reco::
Jet(fP4, fVertex, fConstituents) {
31 throw cms::Exception(
"TrackRef unavailable") <<
"TrackJet consituent track not in the event.";
34 throw cms::Exception(
"Invalid Constituent") <<
"TrackJet constituent is not of RecoChargedRefCandidate type";
43 std::vector<edm::Ptr<reco::Track> >
result;
44 for (
unsigned i = 0;
i < numberOfDaughters();
i++)
45 result.push_back(
track(
i));
52 charge += ida->charge();
54 this->setCharge(charge);
64 std::ostringstream
out;
66 <<
" TrackJet specific:" << std::endl;
68 out <<
" Associated PV:"
71 out <<
" Associated PV not available on the event" << std::endl;
73 std::vector<edm::Ptr<reco::Track> > thetracks =
tracks();
74 for (
unsigned i = 0;
i < thetracks.size();
i++) {
75 if (thetracks[
i].
get()) {
76 out <<
" #" <<
i <<
" px=" << thetracks[
i]->px() <<
" py=" << thetracks[
i]->py()
77 <<
" pz=" << thetracks[
i]->pz() <<
" eta=" << thetracks[
i]->eta() <<
" phi=" << thetracks[
i]->phi()
80 out <<
" #" <<
i <<
" track is not available in the event" << std::endl;
T const * get() const
Returns C++ pointer to the item.
Base class for all types of Jets.
TrackJet()
Default constructor.
std::vector< Constituent > Constituents
auto const & tracks
cannot be loose
reco::TrackRef track() const
key_type key() const
Accessor for product key.
ProductID id() const
Accessor for product ID.
virtual std::string print() const
Print object.
std::string print() const override
Print object.
void setPrimaryVertex(const reco::VertexRef &vtx)
set associated primary vertex
T const * get() const
Returns C++ pointer to the item.
TrackJet * clone() const override
Polymorphic clone.
bool isNonnull() const
Checks for non-null.
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Structure Point Contains parameters of Gaussian fits to DMRs.
const reco::VertexRef primaryVertex() const
get associated primary vertex
std::vector< edm::Ptr< reco::Track > > tracks() const
Return pointers to all track costituents.
int Charge
electric charge type
virtual edm::Ptr< reco::Track > track(size_t i) const
Return Ptr to the track costituent.
bool overlap(const Candidate &dummy) const override
Polymorphic overlap.
void resetCharge()
calculate and set the charge by adding up the constituting track charges