19 useCalib(ps.getParameter<bool>(
"CSCUseCalibrations")),
20 useStaticPedestals(ps.getParameter<bool>(
"CSCUseStaticPedestals")),
21 useTimingCorrections(ps.getParameter<bool>(
"CSCUseTimingCorrections")),
22 useGasGainCorrections(ps.getParameter<bool>(
"CSCUseGasGainCorrections"))
27 cscGeom_token = esConsumes<CSCGeometry, MuonGeometryRecord>();
35 produces<CSCRecHit2DCollection>();
46 LogTrace(
"CSCRecHit") <<
"[CSCRecHitDProducer] starting event " << ev.
id().
event() <<
" of run " << ev.
id().
run();
65 auto oc = std::make_unique<CSCRecHit2DCollection>();
71 LogTrace(
"CSCRecHit") <<
"[CSCRecHitDProducer] putting collection of " << oc->size() <<
" rechits into event.";
77 desc.
add<
double>(
"CSCStripPeakThreshold", 10.0);
78 desc.
add<
double>(
"CSCStripClusterChargeCut", 25.0);
79 desc.
add<
double>(
"CSCStripxtalksOffset", 0.03);
80 desc.
add<
bool>(
"UseAverageTime",
false);
81 desc.
add<
bool>(
"UseParabolaFit",
false);
82 desc.
add<
bool>(
"UseFivePoleFit",
true);
83 desc.
add<
int>(
"CSCWireClusterDeltaT", 1);
84 desc.
add<
bool>(
"CSCUseCalibrations",
true);
85 desc.
add<
bool>(
"CSCUseStaticPedestals",
false);
86 desc.
add<
int>(
"CSCNoOfTimeBinsForDynamicPedestal", 2);
89 desc.
add<
bool>(
"readBadChannels",
true);
90 desc.
add<
bool>(
"readBadChambers",
true);
91 desc.
add<
bool>(
"CSCUseTimingCorrections",
true);
92 desc.
add<
bool>(
"CSCUseGasGainCorrections",
true);
94 desc.
add<
int>(
"CSCstripWireDeltaTime", 8);
96 desc.
add<
double>(
"XTasymmetry_ME1a", 0.023), desc.
add<
double>(
"XTasymmetry_ME1b", 0.01),
97 desc.
add<
double>(
"XTasymmetry_ME12", 0.015), desc.
add<
double>(
"XTasymmetry_ME13", 0.02),
98 desc.
add<
double>(
"XTasymmetry_ME21", 0.023), desc.
add<
double>(
"XTasymmetry_ME22", 0.023),
99 desc.
add<
double>(
"XTasymmetry_ME31", 0.023), desc.
add<
double>(
"XTasymmetry_ME32", 0.023),
100 desc.
add<
double>(
"XTasymmetry_ME41", 0.023), desc.
add<
double>(
"ConstSyst_ME1a", 0.01),
101 desc.
add<
double>(
"ConstSyst_ME1b", 0.02), desc.
add<
double>(
"ConstSyst_ME12", 0.02),
102 desc.
add<
double>(
"ConstSyst_ME13", 0.03), desc.
add<
double>(
"ConstSyst_ME21", 0.03),
103 desc.
add<
double>(
"ConstSyst_ME22", 0.03), desc.
add<
double>(
"ConstSyst_ME31", 0.03),
104 desc.
add<
double>(
"ConstSyst_ME32", 0.03), desc.
add<
double>(
"ConstSyst_ME41", 0.03),
105 desc.
add<
double>(
"NoiseLevel_ME1a", 9.0), desc.
add<
double>(
"NoiseLevel_ME1b", 6.0),
106 desc.
add<
double>(
"NoiseLevel_ME12", 7.0), desc.
add<
double>(
"NoiseLevel_ME13", 4.0),
107 desc.
add<
double>(
"NoiseLevel_ME21", 5.0), desc.
add<
double>(
"NoiseLevel_ME22", 7.0),
108 desc.
add<
double>(
"NoiseLevel_ME31", 5.0), desc.
add<
double>(
"NoiseLevel_ME32", 7.0),
109 desc.
add<
double>(
"NoiseLevel_ME41", 5.0);
111 desc.
add<
bool>(
"CSCUseReducedWireTimeWindow",
false);
112 desc.
add<
int>(
"CSCWireTimeWindowLow", 0);
113 desc.
add<
int>(
"CSCWireTimeWindowHigh", 15);
114 descriptions.
add(
"cscRecHitDProducer", desc);
EventNumber_t event() const
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
ParameterDescriptionBase * addUntracked(U const &iLabel, T const &value)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
#define DEFINE_FWK_MODULE(type)
edm::ESGetToken< CSCGeometry, MuonGeometryRecord > cscGeom_token
CSCRecoConditions * recoConditions_
void build(const CSCStripDigiCollection *stripds, const CSCWireDigiCollection *wireds, CSCRecHit2DCollection &oc)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
CSCRecHitDBuilder * recHitBuilder_
bool useTimingCorrections
ParameterDescriptionBase * add(U const &iLabel, T const &value)
edm::EDGetTokenT< CSCStripDigiCollection > s_token
bool useGasGainCorrections
void produce(edm::Event &, const edm::EventSetup &) override
T const * product() const
T getParameter(std::string const &) const
void add(std::string const &label, ParameterSetDescription const &psetDescription)
~CSCRecHitDProducer() override
edm::EDGetTokenT< CSCWireDigiCollection > w_token
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
CSCRecHitDProducer(const edm::ParameterSet &ps)
void setGeometry(const CSCGeometry *geom)
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
void initializeEvent(const edm::EventSetup &es)
fetch the cond data from the database