39 std::optional<edm::ESGetToken<StripClusterParameterEstimator, TkStripCPERecord>>
spToken_;
40 std::optional<edm::ESGetToken<PixelClusterParameterEstimator, TkPixelCPERecord>>
ppToken_;
41 std::optional<edm::ESGetToken<SiStripRecHitMatcher, TkStripCPERecord>>
mpToken_;
50 : computeCoarseLocalPositionFromDisk_(p.getParameter<bool>(
"ComputeCoarseLocalPositionFromDisk")) {
56 if (sname !=
"Fake") {
61 if (pname !=
"Fake") {
66 if (mname !=
"Fake") {
71 if (!P2otname.empty()) {
95 <<
" The tracking rec hit positions and errors are not a persistent in data formats.\n"
96 <<
" They are not available from disk.\n"
97 <<
" However, TkTransientTrackingRecHitBuilderESProducer::ComputeCoarseLocalPositionFromDisk=True \n"
98 <<
" will make the coarse estimation of this position/error available without track refit.\n"
99 <<
" Position/error obtained from rechit with already defined position/error are not recomputed.\n"
100 <<
" Position/error obtained from track refit are precise.";
106 return std::make_unique<TkTransientTrackingRecHitBuilder>(&
dd,
pp, &iRecord.
get(*
p2OTToken_));
114 desc.
add<
bool>(
"ComputeCoarseLocalPositionFromDisk",
false);
115 desc.
add<
std::string>(
"StripCPE",
"Fake")->setComment(
"Using \"Fake\" disables use of StripCPE");
116 desc.
add<
std::string>(
"PixelCPE",
"Fake")->setComment(
"Using \"Fake\" disables use of PixelCPE");
117 desc.
add<
std::string>(
"Matcher",
"Fake")->setComment(
"Using \"Fake\" disables use of SiStripRecHitMatcher");
118 desc.
add<
std::string>(
"Phase2StripCPE",
"")->setComment(
"Using empty string disables use of Phase2StripCPE");
edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > geomToken_
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
void addWithDefaultLabel(ParameterSetDescription const &psetDescription)
const edm::EventSetup & c
bool const computeCoarseLocalPositionFromDisk_
std::optional< edm::ESGetToken< SiStripRecHitMatcher, TkStripCPERecord > > mpToken_
std::unique_ptr< TransientTrackingRecHitBuilder > produce(const TransientRecHitRecord &)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
std::optional< edm::ESGetToken< PixelClusterParameterEstimator, TkPixelCPERecord > > ppToken_
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
ParameterDescriptionBase * add(U const &iLabel, T const &value)
TkTransientTrackingRecHitBuilderESProducer(const edm::ParameterSet &p)
T getParameter(std::string const &) const
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
Log< level::Warning, false > LogWarning
std::optional< edm::ESGetToken< StripClusterParameterEstimator, TkStripCPERecord > > spToken_
std::optional< edm::ESGetToken< ClusterParameterEstimator< Phase2TrackerCluster1D >, TkPhase2OTCPERecord > > p2OTToken_