CMS 3D CMS Logo

SiStripHashedDetIdFakeESSource.cc
Go to the documentation of this file.
4 
8 
11 
13 public:
16 
17  virtual std::unique_ptr<SiStripHashedDetId> produce(const SiStripHashedDetIdRcd&);
18 
19 private:
21 };
22 
23 using namespace sistrip;
24 
26  setWhatProduced(this).setConsumes(geomDetToken_);
27 }
28 
30 
31 std::unique_ptr<SiStripHashedDetId> SiStripHashedDetIdFakeESSource::produce(const SiStripHashedDetIdRcd& record) {
32  edm::LogVerbatim("HashedDetId") << "[SiStripHashedDetIdFakeESSource::" << __func__ << "]"
33  << " Building \"fake\" hashed DetId map from IdealGeometry";
34 
35  const auto& geomDet = record.getRecord<TrackerDigiGeometryRecord>().get(geomDetToken_);
36 
37  const std::vector<uint32_t> dets = TrackerGeometryUtils::getSiStripDetIds(geomDet);
38  edm::LogVerbatim("HashedDetId") << "[SiStripHashedDetIdFakeESSource::" << __func__ << "]"
39  << " Retrieved " << dets.size() << " DetIds from IdealGeometry!";
40 
41  auto hash = std::make_unique<SiStripHashedDetId>(dets);
42  LogTrace("HashedDetId") << "[SiStripHashedDetIdFakeESSource::" << __func__ << "]"
43  << " DetId hash map: " << std::endl
44  << *hash;
45 
46  return hash;
47 }
48 
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
Definition: ESProducer.h:138
edm::ESGetToken< GeometricDet, IdealGeometryRecord > geomDetToken_
JetCorrectorParameters::Record record
Definition: classes.h:7
sistrip classes
std::vector< uint32_t > getSiStripDetIds(const GeometricDet &geomDet)
Definition: utils.cc:4
#define LogTrace(id)
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
Definition: ModuleFactory.h:60
virtual std::unique_ptr< SiStripHashedDetId > produce(const SiStripHashedDetIdRcd &)
SiStripHashedDetIdFakeESSource(const edm::ParameterSet &)