13 #include "Math/GenVector/VectorUtil.h" 22 mBX (p.getParameter <
int> (
"BX" ) ),
23 mVerbose (p.getUntrackedParameter<
int> (
"verbose" , 0) ),
25 mCone (p.getParameter<double> (
"UseTowersInCone" ) ),
27 mEtThreshold (p.getParameter<double> (
"minimumEt" ) ),
28 mEThreshold (p.getParameter<double> (
"minimumE" ) ),
29 mTauId (p.getParameter<
int> (
"TauId" ) )
31 produces<CaloTowerCollection>();
46 cands->reserve( caloTowers->
size() );
50 for (
auto myL1Jet = jetsgen->
begin(
mBX); myL1Jet != jetsgen->
end(
mBX); myL1Jet++){
54 for (; idx < caloTowers->
size(); idx++) {
56 bool isAccepted =
false;
58 edm::LogInfo(
"JetDebugInfo") <<
"CaloTowerFromL1TCreatorForTauHLT::produce-> " << idx
59 <<
" tower et/eta/phi/e: " << cal->
et() <<
'/' 71 cands->push_back( *cal );
75 if (isAccepted)
edm::LogInfo(
"JetDebugInfo") <<
"accepted \n";
84 edm::LogWarning(
"MissingProduct") <<
"L1Upgrade jet bx collection not found." << std::endl;
97 aDesc.
add<
int> (
"TauId" , 0 )->setComment(
"Item from L1 Tau collection used for seeding. From 0 to 11" );
98 aDesc.
add<
double> (
"UseTowersInCone", 0.8 )->setComment(
"Radius of cone around seed" );
99 aDesc.
add<
double> (
"minimumE" , 0.8 )->setComment(
"Minimum tower energy" );
100 aDesc.
add<
double> (
"minimumEt" , 0.5 )->setComment(
"Minimum tower ET" );
101 aDesc.
add<
int> (
"BX" , 0 )->setComment(
"Set bunch crossing; 0 = in time, -1 = previous, 1 = following");
102 aDesc.
addUntracked<
int> (
"verbose" , 0 )->setComment(
"Verbosity level; 0=silent" );
104 desc.
add (
"CaloTowerFromL1TCreatorForTauHLT", aDesc);
105 desc.
setComment (
"Produce tower collection around L1 particle seed.");
const_iterator end(int bx) const
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
double eta() const final
momentum pseudorapidity
ParameterDescriptionBase * addUntracked(U const &iLabel, T const &value)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
BXVector< Tau > TauBxCollection
double energy() const final
energy
const int mVerbose
verbosity
const edm::EDGetTokenT< l1t::TauBxCollection > mTauTrigger_token
label of tau trigger type analysis
~CaloTowerFromL1TCreatorForTauHLT() override
destructor
ParameterDescriptionBase * add(U const &iLabel, T const &value)
const int mBX
bunch crossing
const double mEtThreshold
imitator of L1 seeds
void setComment(std::string const &value)
PtEtaPhiELorentzVectorD PtEtaPhiELorentzVector
Lorentz vector with cartesian internal representation.
void add(std::string const &label, ParameterSetDescription const &psetDescription)
CaloTowerFromL1TCreatorForTauHLT(const edm::ParameterSet &)
constructor from parameter set
void produce(edm::StreamID sid, edm::Event &evt, const edm::EventSetup &stp) const override
process one event
static void fillDescriptions(edm::ConfigurationDescriptions &desc)
double et(double vtxZ) const
const double mEThreshold
E threshold.
const edm::EDGetTokenT< CaloTowerCollection > mtowers_token
label of source collection
const_iterator begin(int bx) const
double phi() const final
momentum azimuthal angle
const double mCone
use only towers in cone mCone around L1 candidate for regional jet reco