CMS 3D CMS Logo

List of all members | Static Public Member Functions
StripClusterizerAlgorithmFactory Class Reference

#include <StripClusterizerAlgorithmFactory.h>

Static Public Member Functions

static std::unique_ptr< StripClusterizerAlgorithmcreate (edm::ConsumesCollector &&, const edm::ParameterSet &)
 

Detailed Description

Definition at line 12 of file StripClusterizerAlgorithmFactory.h.

Member Function Documentation

◆ create()

std::unique_ptr< StripClusterizerAlgorithm > StripClusterizerAlgorithmFactory::create ( edm::ConsumesCollector &&  iC,
const edm::ParameterSet conf 
)
static

Definition at line 8 of file StripClusterizerAlgorithmFactory.cc.

References qcdUeDQM_cfi::algorithm, clusterChargeCut(), Exception, edm::ParameterSet::getParameter(), and AlCaHLTBitMon_QueryRunRegistry::string.

9  {
10  std::string algorithm = conf.getParameter<std::string>("Algorithm");
11 
12  if (algorithm == "ThreeThresholdAlgorithm") {
13  return std::unique_ptr<StripClusterizerAlgorithm>(
15  edm::ESInputTag{"", conf.getParameter<std::string>("ConditionsLabel")}),
16  conf.getParameter<double>("ChannelThreshold"),
17  conf.getParameter<double>("SeedThreshold"),
18  conf.getParameter<double>("ClusterThreshold"),
19  conf.getParameter<unsigned>("MaxSequentialHoles"),
20  conf.getParameter<unsigned>("MaxSequentialBad"),
21  conf.getParameter<unsigned>("MaxAdjacentBad"),
22  conf.getParameter<bool>("RemoveApvShots"),
23  clusterChargeCut(conf)));
24  }
25 
26  if (algorithm == "OldThreeThresholdAlgorithm") {
27  throw cms::Exception("[StripClusterizerAlgorithmFactory] obsolete") << algorithm << " Obsolete since 7_3_0";
28  }
29 
30  throw cms::Exception("[StripClusterizerAlgorithmFactory] Unregistered Algorithm")
31  << algorithm << " is not a registered StripClusterizerAlgorithm";
32 }
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
float clusterChargeCut(const edm::ParameterSet &conf, const char *name="clusterChargeCut")