53 verbose_(iConfig.getParameter<
int>(
"verbose")) {
54 produces<l1t::MuonStubCollection>(
"kmtf");
55 produces<l1t::MuonStubCollection>(
"tps");
115 for (
auto& stub : stubsEndcap) {
116 stubs.push_back(stub);
119 for (
auto& stub : stubsBarrel) {
122 stubsKMTF.push_back(stub);
125 iEvent.put(std::make_unique<l1t::MuonStubCollection>(
stubs),
"tps");
126 iEvent.put(std::make_unique<l1t::MuonStubCollection>(stubsKMTF),
"kmtf");
138 desc.add<
int>(
"verbose", 0);
145 psd0.
add<
unsigned int>(
"verbose", 0);
146 psd0.
add<
int>(
"minBX", 0);
147 psd0.
add<
int>(
"maxBX", 0);
148 psd0.
add<
double>(
"coord1LSB", 0.02453124992);
149 psd0.
add<
double>(
"eta1LSB", 0.024586688);
150 psd0.
add<
double>(
"coord2LSB", 0.02453124992);
151 psd0.
add<
double>(
"eta2LSB", 0.024586688);
152 psd0.
add<
double>(
"phiMatch", 0.05);
153 psd0.
add<
double>(
"etaMatch", 0.1);
158 psd0.
add<
int>(
"verbose", 0);
159 psd0.
add<
int>(
"minPhiQuality", 0);
160 psd0.
add<
int>(
"minThetaQuality", 0);
161 psd0.
add<
int>(
"minBX", 0);
162 psd0.
add<
int>(
"maxBX", 0);
163 psd0.
add<
double>(
"phiLSB", 0.02453124992);
164 psd0.
add<
int>(
"phiBDivider", 16);
165 psd0.
add<
double>(
"etaLSB", 0.024586688);
166 psd0.
add<std::vector<int>>(
169 -46, -45, -43, -41, -39, -37, -35, -30, -28, -26, -23, -20, -18, -15, -9, -6, -3, -1,
170 1, 3, 6, 9, 15, 18, 20, 23, 26, 28, 30, 35, 37, 39, 41, 43, 45, 1503,
172 psd0.
add<std::vector<int>>(
175 -41, -39, -38, -36, -34, -32, -30, -26, -24, -22, -20, -18, -15, -13, -8, -5, -3, -1,
176 1, 3, 5, 8, 13, 15, 18, 20, 22, 24, 26, 30, 32, 34, 36, 38, 39, 1334,
178 psd0.
add<std::vector<int>>(
181 -35, -34, -32, -31, -29, -27, -26, -22, -20, -19, -17, -15, -13, -11, -6, -4, -2, -1,
182 1, 2, 4, 6, 11, 13, 15, 17, 19, 20, 22, 26, 27, 29, 31, 32, 34, 1148,
184 psd0.
add<std::vector<int>>(
"coarseEta_1",
190 psd0.
add<std::vector<int>>(
"coarseEta_2",
196 psd0.
add<std::vector<int>>(
"coarseEta_3",
202 psd0.
add<std::vector<int>>(
"coarseEta_4",
208 psd0.
add<std::vector<int>>(
"phiOffset",
217 descriptions.
add(
"gmtStubs",
desc);
double offline_eta1() const
Phase2L1TGMTStubProducer(const edm::ParameterSet &)
edm::EDGetTokenT< RPCDigiCollection > srcRPC_
double offline_eta2() const
L1TMuon::GeometryTranslator * translator_
double offline_coord1() const
edm::EDGetTokenT< MuonDigiCollection< CSCDetId, CSCCorrelatedLCTDigi > > srcCSC_
T const * product() const
int coord1() const
return phi
int etaRegion() const
return wheel
int id() const
return tag (second TS tag)
int depthRegion() const
return station
L1TPhase2GMTEndcapStubProcessor * procEndcap_
int coord2() const
return phib
l1t::MuonStubCollection makeStubs(const MuonDigiCollection< CSCDetId, CSCCorrelatedLCTDigi > &csc, const MuonDigiCollection< RPCDetId, RPCDigi > &rpc, const L1TMuon::GeometryTranslator *t, const edm::EventSetup &iSetup)
l1t::MuonStub convertToHybrid(const l1t::MuonStub &stub)
L1TMuon::GeometryTranslator GeometryTranslator
~Phase2L1TGMTStubProducer() override
void checkAndUpdateGeometry(const edm::EventSetup &)
int eta1() const
return eta
void beginStream(edm::StreamID) override
#define DEFINE_FWK_MODULE(type)
int etaQuality() const
return first eta quality
ParameterDescriptionBase * add(U const &iLabel, T const &value)
std::vector< MuonStub > MuonStubCollection
void produce(edm::Event &, const edm::EventSetup &) override
void endStream() override
l1t::MuonStubCollection makeStubs(const L1Phase2MuDTPhContainer *, const L1MuDTChambThContainer *)
L1TPhase2GMTBarrelStubProcessor * procBarrel_
edm::EDGetTokenT< L1MuDTChambThContainer > srcDTTheta_
void add(std::string const &label, ParameterSetDescription const &psetDescription)
int phiRegion() const
return sector
double offline_coord2() const
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
edm::EDGetTokenT< L1Phase2MuDTPhContainer > srcDT_
uint tfLayer() const
return track finder layer
int bxNum() const
return bunch crossing
A container for a generic type of digis indexed by some index, implemented with a map<IndexType...