![]() |
![]() |
Private Types | |
typedef ap_ufixed< pt_t::width, 0 > | inv_t |
typedef ap_int< 12 > | phi_t |
typedef ap_fixed< 2 *pt_t::width, 2 *pt_t::iwidth, AP_RND, AP_SAT > | pt2_t |
typedef ap_ufixed< 14, 12, AP_RND, AP_WRAP > | pt_t |
typedef ap_fixed< pt_t::width+1, pt_t::iwidth+1, AP_RND, AP_SAT > | pxy_t |
Private Member Functions | |
void | CalcMetHLS (std::vector< float > pt, std::vector< float > phi, reco::Candidate::PolarLorentzVector &metVector) const |
void | PhiFromXY (pxy_t px, pxy_t py, phi_t &phi, bool debug=false) const |
void | produce (edm::StreamID, edm::Event &iEvent, const edm::EventSetup &iSetup) const override |
void | Project (pt_t pt, phi_t phi, pxy_t &pxy, bool isX, bool debug=false) const |
Private Attributes | |
edm::EDGetTokenT< vector< l1t::PFCandidate > > | _l1PFToken |
const int | dropBits_ = 2 |
const int | dropFactor_ = (1 << dropBits_) |
const phi_t | hwPi_ = round(M_PI / phiLSB_) |
const phi_t | hwPiOverTwo_ = round(M_PI / (2 * phiLSB_)) |
const int | invTableBits_ = 10 |
const int | invTableSize_ = (1 << invTableBits_) |
int | maxCands_ = 128 |
const float | maxPt_ = ((1 << pt_t::width) - 1) * ptLSB_ |
const float | phiLSB_ = M_PI / 720 |
const float | ptLSB_ = 0.25 |
Additional Inherited Members | |
![]() | |
typedef EDProducerBase | ModuleType |
![]() | |
template<typename T > | |
using | BranchAliasSetterT = ProductRegistryHelper::BranchAliasSetterT< T > |
using | ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex > > |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
![]() | |
typedef ProductLabels | Labels |
![]() | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &descriptions) |
![]() | |
template<Transition Tr = Transition::Event> | |
auto | produces (std::string instanceName) noexcept |
declare what type of product will make and with which optional label More... | |
template<Transition B> | |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
template<BranchType B> | |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
template<typename ProductType , Transition B> | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
template<class ProductType > | |
BranchAliasSetterT< ProductType > | produces () |
template<typename ProductType , BranchType B> | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
template<typename ProductType , BranchType B> | |
BranchAliasSetterT< ProductType > | produces () |
template<class ProductType > | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
template<typename ProductType , Transition B> | |
BranchAliasSetterT< ProductType > | produces () |
template<Transition Tr = Transition::Event> | |
auto | produces () noexcept |
ProducesCollector | producesCollector () |
![]() | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
template<BranchType B = InEvent> | |
EDConsumerBaseAdaptor< B > | consumes (edm::InputTag tag) noexcept |
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
ConsumesCollector | consumesCollector () |
Use a ConsumesCollector to gather consumes information from helper functions. More... | |
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes () |
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag const &tag) |
template<Transition Tr = Transition::Event> | |
constexpr auto | esConsumes () |
template<Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag tag) |
template<Transition Tr = Transition::Event> | |
ESGetTokenGeneric | esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey) |
Used with EventSetupRecord::doGet. More... | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
void | resetItemsToGetFrom (BranchType iType) |
Definition at line 18 of file L1MetPfProducer.cc.
|
private |
Definition at line 43 of file L1MetPfProducer.cc.
|
private |
Definition at line 31 of file L1MetPfProducer.cc.
|
private |
Definition at line 37 of file L1MetPfProducer.cc.
|
private |
Definition at line 30 of file L1MetPfProducer.cc.
|
private |
Definition at line 36 of file L1MetPfProducer.cc.
|
explicit |
Definition at line 57 of file L1MetPfProducer.cc.
|
override |
Definition at line 228 of file L1MetPfProducer.cc.
|
private |
Definition at line 87 of file L1MetPfProducer.cc.
References nano_mu_digi_cff::float, mps_fire::i, maxPt_, SiStripPI::min, phi, PhiFromXY(), phiLSB_, Project(), DiDispStaMuonMonitor_cfi::pt, mathSSE::sqrt(), and parallelization::uint.
Referenced by produce().
|
private |
Definition at line 154 of file L1MetPfProducer.cc.
References a, b, debug, dropFactor_, nano_mu_digi_cff::float, hwPi_, hwPiOverTwo_, invTableSize_, M_PI, maxPt_, phi, phiLSB_, multPhiCorr_741_25nsDY_cfi::px, multPhiCorr_741_25nsDY_cfi::py, x, and y.
Referenced by CalcMetHLS().
|
overrideprivatevirtual |
Implements edm::global::EDProducerBase.
Definition at line 63 of file L1MetPfProducer.cc.
References _l1PFToken, CalcMetHLS(), mps_fire::i, iEvent, createfilelist::int, L1Analysis::kTotalHt, maxCands_, susyDQM_cfi::metCollection, eostools::move(), phi, and DiDispStaMuonMonitor_cfi::pt.
|
private |
Definition at line 117 of file L1MetPfProducer.cc.
References funct::cos(), l1tSlwPFPuppiJets_cfi::cosPhi, hwPi_, hwPiOverTwo_, M_PI, phi, DiDispStaMuonMonitor_cfi::pt, objects.METAnalyzer::pxy, funct::sin(), and l1tSlwPFPuppiJets_cfi::sinPhi.
Referenced by CalcMetHLS().
|
private |
Definition at line 25 of file L1MetPfProducer.cc.
Referenced by produce().
|
private |
Definition at line 46 of file L1MetPfProducer.cc.
|
private |
Definition at line 47 of file L1MetPfProducer.cc.
Referenced by PhiFromXY().
Definition at line 40 of file L1MetPfProducer.cc.
Referenced by PhiFromXY(), and Project().
Definition at line 41 of file L1MetPfProducer.cc.
Referenced by PhiFromXY(), and Project().
|
private |
Definition at line 48 of file L1MetPfProducer.cc.
|
private |
Definition at line 49 of file L1MetPfProducer.cc.
Referenced by PhiFromXY().
|
private |
Definition at line 27 of file L1MetPfProducer.cc.
Referenced by produce().
|
private |
Definition at line 39 of file L1MetPfProducer.cc.
Referenced by CalcMetHLS(), and PhiFromXY().
|
private |
Definition at line 33 of file L1MetPfProducer.cc.
Referenced by CalcMetHLS(), and PhiFromXY().
|
private |
Definition at line 32 of file L1MetPfProducer.cc.