CMS 3D CMS Logo

SensitiveDetectorMaker.h
Go to the documentation of this file.
1 #ifndef SimG4Core_SensitiveDetector_SensitiveDetectorMaker_h
2 #define SimG4Core_SensitiveDetector_SensitiveDetectorMaker_h
3 // -*- C++ -*-
4 //
5 // Package: SensitiveDetector
6 // Class : SensitiveDetectorMaker
7 //
8 //
9 // Original Author:
10 // Created: Mon Nov 14 11:56:05 EST 2005
11 //
12 
13 // user include files
17 
20 
21 // forward declarations
22 class SimTrackManager;
25 
26 namespace edm {
27  class EventSetup;
28  class ParameterSet;
29 } // namespace edm
30 
31 template <class T>
33 public:
37 
38  // ---------- const member functions ---------------------
39  std::unique_ptr<SensitiveDetector> make(const std::string& iname,
40  const edm::EventSetup& es,
41  const SensitiveDetectorCatalog& clg,
42  const edm::ParameterSet& p,
43  const SimTrackManager* man,
44  SimActivityRegistry& reg) const override {
45  auto sd = std::make_unique<T>(iname, es, clg, p, man);
47  return sd;
48  };
49 };
50 
51 #endif
SimTrackManager
Definition: SimTrackManager.h:35
MessageLogger.h
edm
HLT enums.
Definition: AlignableModifier.h:19
SensitiveDetectorMaker::SensitiveDetectorMaker
SensitiveDetectorMaker(edm::ParameterSet const &, edm::ConsumesCollector)
Definition: SensitiveDetectorMaker.h:34
SensitiveDetectorCatalog
Definition: SensitiveDetectorCatalog.h:10
SensitiveDetectorMaker
Definition: SensitiveDetectorMaker.h:32
edm::ParameterSet
Definition: ParameterSet.h:47
AlCaHLTBitMon_ParallelJobs.p
def p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
ParameterSet
Definition: Functions.h:16
SensitiveDetectorMakerBase
Definition: SensitiveDetectorMakerBase.h:28
SimActivityRegistryEnroller::enroll
static void enroll(SimActivityRegistry &iReg, T *iObj)
Definition: SimActivityRegistryEnroller.h:50
edm::EventSetup
Definition: EventSetup.h:58
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
SimActivityRegistryEnroller.h
SimActivityRegistry
Definition: SimActivityRegistry.h:39
SensitiveDetector.h
SensitiveDetectorMaker::operator=
const SensitiveDetectorMaker & operator=(const SensitiveDetectorMaker &)=delete
SensitiveDetectorMaker::make
std::unique_ptr< SensitiveDetector > make(const std::string &iname, const edm::EventSetup &es, const SensitiveDetectorCatalog &clg, const edm::ParameterSet &p, const SimTrackManager *man, SimActivityRegistry &reg) const override
Definition: SensitiveDetectorMaker.h:39
sd
double sd
Definition: CascadeWrapper.h:113
ConsumesCollector.h
EventSetup
SensitiveDetectorMakerBase.h
edm::ConsumesCollector
Definition: ConsumesCollector.h:45