14 #include "Math/GenVector/VectorUtil.h" 22 : m_verbose(
p.getUntrackedParameter<
int>(
"verbose", 0)),
24 m_cone(
p.getParameter<double>(
"UseTowersInCone")),
25 m_tauTrigger_token(consumes<
trigger::TriggerFilterObjectWithRefs>(
p.getParameter<
InputTag>(
"TauTrigger"))),
26 m_EtThreshold(
p.getParameter<double>(
"minimumEt")),
27 m_EThreshold(
p.getParameter<double>(
"minimumE")) {
28 produces<CaloTowerCollection>();
43 auto cands = std::make_unique<CaloTowerCollection>();
49 for (
auto const& tauCandRef : tauCandRefVec) {
51 bool isAccepted =
false;
53 edm::LogInfo(
"JetDebugInfo") <<
"CaloTowerFromL1TSeededCreatorForTauHLT::produce-> tower et/eta/phi/e: " 54 << cal.et() <<
'/' << cal.eta() <<
'/' << cal.phi() <<
'/' << cal.energy()
59 double delta2 =
deltaR2((tauCandRef->p4()).Vect(),
p);
60 if (delta2 < m_cone2) {
62 cands->push_back(cal);
82 ->setComment(
"Name of trigger filter for L1 seeds");
84 aDesc.
add<
double>(
"UseTowersInCone", 0.8)->
setComment(
"Radius of cone around seed");
85 aDesc.
add<
double>(
"minimumE", 0.8)->
setComment(
"Minimum tower energy");
86 aDesc.
add<
double>(
"minimumEt", 0.5)->
setComment(
"Minimum tower ET");
87 aDesc.
addUntracked<
int>(
"verbose", 0)->setComment(
"Verbosity level; 0=silent");
89 desc.add(
"CaloTowerFromL1TSeededCreatorForTauHLT", aDesc);
90 desc.setComment(
"Produce tower collection around L1 particle seed.");
const edm::EDGetTokenT< CaloTowerCollection > m_towers_token
label of source collection
void setComment(std::string const &value)
void getObjects(Vids &ids, VRphoton &refs) const
various physics-level getters:
void produce(edm::StreamID sid, edm::Event &evt, const edm::EventSetup &stp) const override
process one event
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
const double m_cone
use only towers in cone mCone around L1 candidate for regional jet reco
ParameterDescriptionBase * addUntracked(U const &iLabel, T const &value)
static void fillDescriptions(edm::ConfigurationDescriptions &desc)
const double m_EThreshold
E threshold.
bool getByToken(EDGetToken token, Handle< PROD > &result) const
~CaloTowerFromL1TSeededCreatorForTauHLT() override
destructor
CaloTowerFromL1TSeededCreatorForTauHLT(const edm::ParameterSet &)
constructor from parameter set
std::vector< TauRef > TauVectorRef
#define DEFINE_FWK_MODULE(type)
ParameterDescriptionBase * add(U const &iLabel, T const &value)
Log< level::Info, false > LogInfo
const int m_verbose
verbosity
PtEtaPhiELorentzVectorD PtEtaPhiELorentzVector
Lorentz vector with cartesian internal representation.
const double m_EtThreshold
imitator of L1 seeds
const edm::EDGetTokenT< trigger::TriggerFilterObjectWithRefs > m_tauTrigger_token
label of tau trigger type analysis