18 std::unique_ptr<PackerTokens>
21 return std::unique_ptr<PackerTokens>(
new GMTTokens(cfg, cc));
30 desc.
addOptional<
edm::InputTag>(
"ImdInputLabelBMTF")->setComment(
"uGMT intermediate muon from BMTF after first sorting stage");
31 desc.
addOptional<
edm::InputTag>(
"ImdInputLabelEMTFNeg")->setComment(
"uGMT intermediate muon from neg. EMTF side after first sorting stage");
32 desc.
addOptional<
edm::InputTag>(
"ImdInputLabelEMTFPos")->setComment(
"uGMT intermediate muon from pos. EMTF side after first sorting stage");
33 desc.
addOptional<
edm::InputTag>(
"ImdInputLabelOMTFNeg")->setComment(
"uGMT intermediate muon from neg. OMTF side after first sorting stage");
34 desc.
addOptional<
edm::InputTag>(
"ImdInputLabelOMTFPos")->setComment(
"uGMT intermediate muon from pos. OMTF side after first sorting stage");
59 for (
int i=1;
i<6; ++
i) {
69 std::unique_ptr<UnpackerCollections>
72 return std::unique_ptr<UnpackerCollections>(
new GMTCollections(e));
83 for (
int iLink = 72; iLink < 144; iLink += 2)
84 res[iLink] = gmt_in_unp;
90 for (
int oLink = 49; oLink < 65; oLink += 2)
91 res[oLink] = gmt_imd_unp;
94 std::array<std::shared_ptr<l1t::stage2::MuonUnpacker>, 6> gmt_out_unps;
96 for (
auto gmt_out_unp:gmt_out_unps) {
99 gmt_out_unp->setFedNumber(fed);
100 gmt_out_unp->setMuonCopy(i);
102 int oLinkMin = i*8+1;
103 for (
int oLink = oLinkMin; oLink < oLinkMin+8; oLink += 2)
104 res[oLink] = gmt_out_unp;
ParameterDescriptionBase * addOptional(U const &iLabel, T const &value)
std::unique_ptr< UnpackerCollections > getCollections(edm::Event &e) override
std::shared_ptr< Packer > make(const std::string &) const
void registerProducts(edm::stream::EDProducerBase &prod) override
static const PackerFactory * get()
std::map< int, std::shared_ptr< Unpacker > > UnpackerMap
void fillDescription(edm::ParameterSetDescription &desc) override
PackerMap getPackers(int fed, unsigned int fw) override
std::shared_ptr< Unpacker > make(const std::string &) const
UnpackerMap getUnpackers(int fed, int board, int amc, unsigned int fw) override
#define DEFINE_L1T_PACKING_SETUP(type)
std::unique_ptr< PackerTokens > registerConsumes(const edm::ParameterSet &cfg, edm::ConsumesCollector &cc) override
static const UnpackerFactory * get()
void setAlgoVersion(const unsigned int version)
std::map< std::pair< int, int >, Packers > PackerMap