13 #include "Math/GenVector/VectorUtil.h"
19 using namespace l1extra;
22 :
mVerbose(p.getUntrackedParameter<int>(
"verbose", 0)),
24 mCone(p.getParameter<double>(
"UseTowersInCone")),
26 mEtThreshold(p.getParameter<double>(
"minimumEt")),
27 mEThreshold(p.getParameter<double>(
"minimumE")),
28 mTauId(p.getParameter<int>(
"TauId")) {
29 produces<CaloTowerCollection>();
43 cands->reserve(caloTowers->size());
46 L1JetParticleCollection::const_iterator myL1Jet = jetsgen->begin();
47 for (; myL1Jet != jetsgen->end(); myL1Jet++) {
52 for (; idx < caloTowers->size(); idx++) {
53 const CaloTower* cal = &((*caloTowers)[idx]);
54 bool isAccepted =
false;
56 edm::LogInfo(
"JetDebugInfo") <<
"CaloTowerCreatorForTauHLT::produce-> " << idx
57 <<
" tower et/eta/phi/e: " << cal->
et() <<
'/' << cal->
eta() <<
'/' << cal->
phi()
58 <<
'/' << cal->
energy() <<
" is...";
67 cands->push_back(*cal);
87 ->setComment(
"L1ExtraJet collection for seeding");
88 aDesc.
add<
int>(
"TauId", 0)->setComment(
"Item from L1ExtraJet collection used for seeding");
90 aDesc.
add<
double>(
"UseTowersInCone", 0.8)->
setComment(
"Radius of cone around seed");
91 aDesc.
add<
double>(
"minimumE", 0.8)->
setComment(
"Minimum tower energy");
92 aDesc.
add<
double>(
"minimumEt", 0.5)->
setComment(
"Minimum tower ET");
93 aDesc.
addUntracked<
int>(
"verbose", 0)->setComment(
"Verbosity level; 0=silent");
94 desc.
setComment(
"Produce tower collection around L1ExtraJetParticle seed.");
95 desc.
add(
"caloTowerMakerHLT", aDesc);
void setComment(std::string const &value)
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
ParameterDescriptionBase * addUntracked(U const &iLabel, T const &value)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
const int mVerbose
verbosity
const double mCone
use only towers in cone mCone around L1 candidate for regional jet reco
~CaloTowerCreatorForTauHLT() override
destructor
void produce(edm::StreamID sid, edm::Event &evt, const edm::EventSetup &stp) const override
process one event
ParameterDescriptionBase * add(U const &iLabel, T const &value)
const edm::EDGetTokenT< l1extra::L1JetParticleCollection > mTauTrigger_token
label of tau trigger type analysis
Log< level::Info, false > LogInfo
void setComment(std::string const &value)
PtEtaPhiELorentzVectorD PtEtaPhiELorentzVector
Lorentz vector with cartesian internal representation.
void add(std::string const &label, ParameterSetDescription const &psetDescription)
const edm::EDGetTokenT< CaloTowerCollection > mtowers_token
label of source collection
mVerbose(fConfig.getUntrackedParameter< bool >("verbose", false))
CaloTowerCreatorForTauHLT(const edm::ParameterSet &)
constructor from parameter set
double et(double vtxZ) const
const double mEThreshold
E threshold.
const double mEtThreshold
imitator of L1 seeds
double phi() const final
momentum azimuthal angle
static void fillDescriptions(edm::ConfigurationDescriptions &desc)
double energy() const final
energy
double eta() const final
momentum pseudorapidity