1 #ifndef SimG4Core_GeometryProducer_H
2 #define SimG4Core_GeometryProducer_H
26 #include <unordered_map>
39 class G4RunManagerKernel;
46 typedef std::vector<std::shared_ptr<SimProducer>>
Producers;
71 std::unordered_map<std::string, std::unique_ptr<SensitiveDetectorMakerBase>>
m_sdMakers;
std::vector< SensitiveTkDetector * > m_sensTkDets
GeometryProducer(edm::ParameterSet const &p)
void endRun(const edm::Run &r, const edm::EventSetup &c) override
const edm::EventSetup & c
std::vector< std::shared_ptr< SimProducer > > Producers
const DDCompactView * m_pDD
edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > tokMF_
edm::ParameterSet m_pField
std::vector< SensitiveCaloDetector * > & sensCaloDetectors()
~GeometryProducer() override
bool m_pUseSensitiveDetectors
Compact representation of the geometrical detector hierarchy.
void beginRun(const edm::Run &r, const edm::EventSetup &c) override
std::vector< std::shared_ptr< SimWatcher > > m_watchers
std::vector< SensitiveCaloDetector * > m_sensCaloDets
G4RunManagerKernel * m_kernel
edm::ESGetToken< cms::DDCompactView, IdealGeometryRecord > tokDD4hep_
std::vector< std::shared_ptr< SimProducer > > m_producers
SimActivityRegistry m_registry
void produce(edm::Event &e, const edm::EventSetup &c) override
edm::ESGetToken< DDCompactView, IdealGeometryRecord > tokDDD_
void updateMagneticField(edm::EventSetup const &es)
std::vector< std::shared_ptr< SimProducer > > producers() const
std::unordered_map< std::string, std::unique_ptr< SensitiveDetectorMakerBase > > m_sdMakers
std::unique_ptr< SimTrackManager > m_trackManager
void beginLuminosityBlock(edm::LuminosityBlock &, edm::EventSetup const &)
const cms::DDCompactView * m_pDD4hep
std::unique_ptr< sim::FieldBuilder > m_fieldBuilder
std::vector< SensitiveTkDetector * > & sensTkDetectors()