CMS 3D CMS Logo

TkAccumulatingSensitiveDetectorBuilder.cc
Go to the documentation of this file.
1 // system include files
2 
3 // user include files
7 
10 
12 
18 
20 public:
22  : geomdet_{nullptr}, geomdetToken_{cc.esConsumes<edm::Transition::BeginRun>()} {}
23 
24  void beginRun(const edm::EventSetup& es) final { geomdet_ = &es.getData(geomdetToken_); }
25 
26  std::unique_ptr<SensitiveDetector> make(const std::string& iname,
27  const SensitiveDetectorCatalog& clg,
28  const edm::ParameterSet& p,
29  const SimTrackManager* man,
30  SimActivityRegistry& reg) const final {
31  auto sd = std::make_unique<TkAccumulatingSensitiveDetector>(iname, geomdet_, clg, p, man);
33  return sd;
34  }
35 
36 private:
39 };
40 
TkAccumulatingSensitiveDetectorBuilder(edm::ParameterSet const &p, edm::ConsumesCollector cc)
static void enroll(SimActivityRegistry &iReg, T *iObj)
#define DEFINE_SENSITIVEDETECTORBUILDER(type, name)
const edm::ESGetToken< GeometricDet, IdealGeometryRecord > geomdetToken_
std::unique_ptr< SensitiveDetector > make(const std::string &iname, const SensitiveDetectorCatalog &clg, const edm::ParameterSet &p, const SimTrackManager *man, SimActivityRegistry &reg) const final