19 #include "Math/GenVector/VectorUtil.h"
25 using namespace l1extra ;
28 cone_ (p.getParameter<double> (
"useTowersInCone")),
31 EtThreshold_ (p.getParameter<double> (
"EtMin")),
32 EThreshold_ (p.getParameter<double> (
"EMin")) {
34 produces<CaloTowerCollection>();
44 desc.
add<
double>((
"useTowersInCone"), 0.8);
45 desc.
add<
double>((
"EtMin"), 1.0);
46 desc.
add<
double>((
"EMin"), 1.0);
47 descriptions.
add((
"hltCaloTowerForEgamma"), desc);
61 cands->reserve(caloTowers->size());
63 for (
unsigned idx = 0;
idx < caloTowers->size();
idx++) {
69 double delta = ROOT::Math::VectorUtil::DeltaR((*emItr).p4().Vect(),
p);
71 cands->push_back(*cal);
79 double delta = ROOT::Math::VectorUtil::DeltaR((*emItr).p4().Vect(),
p);
81 cands->push_back(*cal);
bool getByToken(EDGetToken token, Handle< PROD > &result) const
virtual float phi() const
momentum azimuthal angle
EgammaHLTCaloTowerProducer(const edm::ParameterSet &)
virtual double energy() const
energy
void produce(edm::StreamID, edm::Event &, edm::EventSetup const &) const overridefinal
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
virtual float eta() const
momentum pseudorapidity
ParameterDescriptionBase * add(U const &iLabel, T const &value)
const double EtThreshold_
PtEtaPhiELorentzVectorD PtEtaPhiELorentzVector
Lorentz vector with cartesian internal representation.
const edm::EDGetTokenT< CaloTowerCollection > towers_
tuple idx
DEBUGGING if hasattr(process,"trackMonIterativeTracking2012"): print "trackMonIterativeTracking2012 D...
const edm::EDGetTokenT< edm::View< reco::Candidate > > l1isoseeds_
void add(std::string const &label, ParameterSetDescription const &psetDescription)
boost::indirect_iterator< typename seq_t::const_iterator > const_iterator
const edm::EDGetTokenT< edm::View< reco::Candidate > > l1nonisoseeds_
double et(double vtxZ) const
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)