CMS 3D CMS Logo

TrackCleanerESProducer.cc
Go to the documentation of this file.
1 // user include files
5 
7 
9 
11 public:
13  ~TrackCleanerESProducer() override = default;
14 
15  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
16 
17  std::unique_ptr<PixelTrackCleaner> produce(const PixelTrackCleaner::Record& iRecord);
18 };
19 
21  auto componentName = iConfig.getParameter<std::string>("ComponentName");
22  setWhatProduced(this, componentName);
23 }
24 
27  desc.add<std::string>("ComponentName", "trackCleaner");
28  descriptions.add("trackCleaner", desc);
29 }
30 
31 std::unique_ptr<PixelTrackCleaner> TrackCleanerESProducer::produce(const PixelTrackCleaner::Record& iRecord) {
33  iRecord.getRecord<TrackerTopologyRcd>().get(tTopoHand);
34  const TrackerTopology *tTopo=tTopoHand.product();
35 
36  return std::make_unique<TrackCleaner>(tTopo);
37 }
38 
T getParameter(std::string const &) const
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
Definition: ESProducer.h:124
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
std::unique_ptr< PixelTrackCleaner > produce(const PixelTrackCleaner::Record &iRecord)
TrackCleanerESProducer(const edm::ParameterSet &iConfig)
~TrackCleanerESProducer() override=default
ParameterDescriptionBase * add(U const &iLabel, T const &value)
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
Definition: ModuleFactory.h:60
void add(std::string const &label, ParameterSetDescription const &psetDescription)
T const * product() const
Definition: ESHandle.h:86