14 :
Jet(fP4, fVertex), m_specific(fSpecific) {}
68 throw cms::Exception(
"Invalid Constituent") <<
"CaloJet constituent is not of CaloTowere type";
79 std::vector<CaloTowerPtr>
result;
90 std::ostringstream
out;
92 <<
" CaloJet specific:" << std::endl
98 <<
" constituent towers area: " <<
towersArea() << std::endl;
99 out <<
" Towers:" << std::endl;
101 for (
unsigned i = 0;
i < towers.size();
i++) {
102 if (towers[
i].
get()) {
103 out <<
" #" <<
i <<
" " << *(towers[
i]) << std::endl;
105 out <<
" #" <<
i <<
" tower is not available in the event" << std::endl;
116 std::vector<CaloTowerDetId>
result;
118 for (
unsigned i = 0;
i < towers.size(); ++
i) {
119 result.push_back(towers[
i]->
id());
float hadEnergyInHE() const
float emEnergyInEE() const
Jets made from CaloTowers.
LorentzVector detectorP4() const
detector p4 for full 3d vertex correction.
T const * get() const
Returns C++ pointer to the item.
virtual CaloTowerPtr getCaloConstituent(unsigned fIndex) const
Physics Eta (loop over constituents)
std::vector< Constituent > Constituents
float emEnergyInHF() const
virtual std::vector< CaloTowerPtr > getCaloConstituents() const
get all constituents
float hadEnergyInHO() const
size_t numberOfDaughters() const override
number of daughters
daughters dau
collection of references to daughters
bool overlap(const Candidate &) const override
Polymorphic overlap.
virtual std::string print() const
Print object.
float emEnergyInEB() const
const Point & vertex() const override
vertex position (overwritten by PF...)
math::XYZPoint Point
point in the space
bool isNonnull() const
Checks for non-null.
std::string print() const override
Print object.
LorentzVector physicsP4(const Particle::Point &vertex) const
Physics Eta (use jet Z and kinematics only)
virtual CandidatePtr daughterPtr(size_type i) const
reference to daughter at given position
std::vector< CaloTowerDetId > getTowerIndices() const
CaloTowers indexes.
static Candidate::LorentzVector detectorP4(const Candidate::Point &vertex, const Candidate &inParticle)
CaloJet * clone() const override
Polymorphic clone.
ProductID id() const
Accessor for product ID.
math::XYZTLorentzVector LorentzVector
Lorentz vector.
float energyFractionHadronic() const
Structure Point Contains parameters of Gaussian fits to DMRs.
float hadEnergyInHB() const
edm::Ptr< CaloTower > CaloTowerPtr
static Candidate::LorentzVector physicsP4(const Candidate::Point &newVertex, const Candidate &inParticle, const Candidate::Point &oldVertex=Candidate::Point(0, 0, 0))
float hadEnergyInHF() const
float emEnergyFraction() const