28 using namespace l1extra;
33 theL1MinPt(iConfig.getParameter<double>(
"L1MinPt")),
34 theL1MaxEta(iConfig.getParameter<double>(
"L1MaxEta")),
35 theL1MinQuality(iConfig.getParameter<unsigned int>(
"L1MinQuality")) {
38 produces<L1MuonParticleCollection>();
47 desc.
add<
double>(
"L1MinPt", -1.);
48 desc.
add<
double>(
"L1MaxEta", 5.0);
49 desc.
add<
unsigned int>(
"L1MinQuality", 0);
50 descriptions.
add(
"hltL1MuonSelector", desc);
61 LogTrace(metname) <<
"Number of muons " << muColl->size() << endl;
63 L1MuonParticleCollection::const_iterator it;
66 for (it = muColl->begin(); it != muColl->end(); ++it, ++l1ParticleIndex) {
69 bool valid_charge =
false;
72 if (muonCand.
empty()) {
73 LogWarning(metname) <<
"HLTL1MuonSelector: WARNING, no L1MuGMTCand! " << endl;
74 LogWarning(metname) <<
"HLTL1MuonSelector: this should make sense only within MC tests" << endl;
83 float pt = (*it).pt();
84 float eta = (*it).eta();
86 float phi = (*it).phi();
87 int charge = (*it).charge();
91 bool barrel = !(*it).isForward();
96 LogTrace(metname) <<
"L1 Muon Found";
97 LogTrace(metname) <<
"Pt = " << pt <<
" GeV/c";
99 LogTrace(metname) <<
"theta = " << theta <<
" rad";
100 LogTrace(metname) <<
"phi = " << phi <<
" rad";
std::remove_cv< typename std::remove_reference< argument_type >::type >::type key_type
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
bool getByToken(EDGetToken token, Handle< PROD > &result) const
const std::string metname
#define DEFINE_FWK_MODULE(type)
uint32_t const *__restrict__ Quality * quality
edm::EDGetTokenT< l1extra::L1MuonParticleCollection > muCollToken_
Geom::Theta< T > theta() const
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
const unsigned theL1MinQuality
Exp< T >::type exp(const T &t)
~HLTL1MuonSelector() override
Destructor.
void produce(edm::StreamID, edm::Event &, const edm::EventSetup &) const override
bool empty() const
is it an empty muon candidate?
bool charge_valid() const
is the charge valid ?
ParameterDescriptionBase * add(U const &iLabel, T const &value)
HLTL1MuonSelector(const edm::ParameterSet &)
Constructor.
unsigned int quality() const
get quality
void add(std::string const &label, ParameterSetDescription const &psetDescription)
Log< level::Warning, false > LogWarning