Go to the documentation of this file.
75 ftlbInstance_(conf.getParameter<
std::
string>(
"BarrelClusterName")),
76 ftleInstance_(conf.getParameter<
std::
string>(
"EndcapClusterName")),
77 clusterMode_(conf.getParameter<
std::
string>(
"ClusterMode")),
84 mtdgeoToken_ = esConsumes<MTDGeometry, MTDDigiGeometryRecord>();
90 clusterizer_ = std::make_unique<MTDThresholdClusterizer>(conf);
92 throw cms::Exception(
"MTDClusterProducer") <<
"[MTDClusterProducer]:"
94 <<
"Possible choices:\n"
95 <<
" MTDThresholdClusterizer";
108 descriptions.
add(
"mtdClusterProducer",
desc);
126 topo_ = mtdTopo.product();
129 auto outputBarrel = std::make_unique<FTLClusterCollection>();
130 auto outputEndcap = std::make_unique<FTLClusterCollection>();
132 run(*inputBarrel, *outputBarrel);
133 run(*inputEndcap, *outputEndcap);
142 template <
typename T>
145 throw cms::Exception(
"MTDClusterProducer") <<
" at least one clusterizer is not ready -- can't run!";
151 <<
" MTDClusters for " <<
input.size() <<
" Hits.";
void run(const T &input, FTLClusterCollection &output)
Iterate over DetUnits, and invoke the PixelClusterizer on each.
static const std::string input
~MTDClusterProducer() override=default
const std::string ftlbInstance_
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
const edm::EDGetTokenT< FTLRecHitCollection > etlHits_
edm::ESGetToken< MTDGeometry, MTDDigiGeometryRecord > mtdgeoToken_
EDProducer to cluster FTLRecHits into FTLClusters.
const std::string ftleInstance_
edm::ESGetToken< MTDTopology, MTDTopologyRcd > mtdtopoToken_
const MTDTopology * topo_
#define DEFINE_FWK_MODULE(type)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
const MTDGeometry * geom_
const std::string clusterMode_
static void fillDescriptions(edm::ParameterSetDescription &desc)
std::unique_ptr< MTDClusterizerBase > clusterizer_
ESTransientHandle< T > getTransientHandle(const ESGetToken< T, R > &iToken) const
const edm::EDGetTokenT< FTLRecHitCollection > btlHits_
void produce(edm::Event &e, const edm::EventSetup &c) override
The "Event" entrypoint: gets called by framework for every event.
MTDClusterProducer(const edm::ParameterSet &conf)
Constructor: set the ParameterSet and defer all thinking to setupClusterizer().