Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:11:19

0001 #ifndef FastSimulation_ParticlePropagator_MagneticFieldMapESProducer_H
0002 #define FastSimulation_ParticlePropagator_MagneticFieldMapESProducer_H
0003 
0004 #include "FWCore/Framework/interface/ESProducer.h"
0005 #include "FWCore/Utilities/interface/ESGetToken.h"
0006 #include "FastSimulation/ParticlePropagator/interface/MagneticFieldMapRecord.h"
0007 #include "FastSimulation/ParticlePropagator/interface/MagneticFieldMap.h"
0008 #include "FastSimulation/TrackerSetup/interface/TrackerInteractionGeometryRecord.h"
0009 #include "MagneticField/Records/interface/IdealMagneticFieldRecord.h"
0010 #include <string>
0011 
0012 class MagneticFieldMapESProducer : public edm::ESProducer {
0013 public:
0014   MagneticFieldMapESProducer(const edm::ParameterSet &p);
0015   ~MagneticFieldMapESProducer() override = default;
0016   std::unique_ptr<MagneticFieldMap> produce(const MagneticFieldMapRecord &);
0017 
0018 private:
0019   const std::string label_;
0020   edm::ESGetToken<TrackerInteractionGeometry, TrackerInteractionGeometryRecord> tokenGeom_;
0021   edm::ESGetToken<MagneticField, IdealMagneticFieldRecord> tokenBField_;
0022 };
0023 
0024 #endif