23 produces<ME0PadDigiClusterCollection>();
24 consumes<ME0PadDigiCollection>(
pads_);
59 for (
const auto&
part: ch->etaPartitions()) {
60 auto pads = det_pads.get(
part->id());
61 std::vector<uint16_t>
cl;
63 for (
auto d = pads.first;
d != pads.second; ++
d) {
65 cl.push_back((*d).pad());
68 if ((*d).bx() == startBX and (*d).pad() == cl.back() + 1) {
69 cl.push_back((*d).pad());
73 out_clusters.insertDigi(
part->id(), pad_cluster);
75 cl.push_back((*d).pad());
80 if (pads.first != pads.second){
82 out_clusters.insertDigi(
part->id(), pad_cluster);
T getParameter(std::string const &) const
virtual void produce(edm::Event &, const edm::EventSetup &) override
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
bool getByToken(EDGetToken token, Handle< PROD > &result) const
virtual void beginRun(const edm::Run &, const edm::EventSetup &) override
virtual ~ME0PadDigiClusterProducer()
unsigned int maxClusterSize_
const std::vector< const ME0Chamber * > & chambers() const
Return a vector of all ME0 chambers.
unsigned int maxClusters_
void buildClusters(const ME0PadDigiCollection &pads, ME0PadDigiClusterCollection &out_clusters)
T const * product() const
ME0PadDigiClusterProducer(const edm::ParameterSet &ps)
edm::EDGetTokenT< ME0PadDigiCollection > pad_token_
Name of input digi Collection.
MuonDigiCollection< ME0DetId, ME0PadDigiCluster > ME0PadDigiClusterCollection
const ME0Geometry * geometry_