Go to the documentation of this file.
55 useParametrizedTrackerField_{iConfig.getParameter<
bool>(
"useParametrizedTrackerField")},
56 conf_{iConfig, debug_},
57 version_{iConfig.getParameter<
std::string>(
"version")} {
58 LogTrace(
"MagGeoBuilder") <<
"info:Constructing a DD4hep_VolumeBasedMagneticFieldESProducer";
60 auto cc = setWhatProduced(
this, iConfig.getUntrackedParameter<
std::string>(
"label",
""));
62 if (useParametrizedTrackerField_) {
71 LogTrace(
"MagGeoBuilder") <<
"DD4hep_VolumeBasedMagneticFieldESProducer::produce() " <<
version_;
90 LogTrace(
"MagGeoBuilder") <<
"produce() finished build";
95 LogTrace(
"MagGeoBuilder") <<
"Getting MF for parametrized field";
void build(const cms::DDDetector *det)
magneticfield::TableFileMap gridFiles
Specification of which data table is to be used for each volume.
std::string version
Version of the data tables to be used.
int geometryVersion
Version of the geometry to be used.
T getUntrackedParameter(std::string const &, T const &) const
std::vector< MagESector * > endcapSectors() const
Get endcap layers.
const std::string version_
edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > paramFieldToken_
std::vector< MagBLayer * > barrelLayers() const
Get barrel layers.
ESTransientHandle< ProductT > getTransientHandle(ESGetToken< ProductT, DepRecordT > const &iToken) const
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
const MagFieldConfig conf_
edm::ESGetToken< cms::DDCompactView, IdealMagneticFieldRecord > cpvToken_
std::unique_ptr< MagneticField > produce(const IdealMagneticFieldRecord &iRecord)
std::vector< MagVolume6Faces * > barrelVolumes() const
DD4hep_VolumeBasedMagneticFieldESProducer(const edm::ParameterSet &iConfig)
std::vector< int > keys
Scaling factors for the field in specific volumes.
std::vector< MagVolume6Faces * > endcapVolumes() const
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
const bool useParametrizedTrackerField_
std::vector< double > values
void setScaling(const std::vector< int > &keys, const std::vector< double > &values)
void setGridFiles(const TableFileMap &gridFiles)
const cms::DDDetector * detector() const
const DD4hep_VolumeBasedMagneticFieldESProducer & operator=(const DD4hep_VolumeBasedMagneticFieldESProducer &)=delete