#include <MagGeoBuilderFromDDD.h>
Classes | |
class | bRod |
class | bSlab |
class | eLayer |
class | eSector |
class | volumeHandle |
Public Member Functions | |
std::vector< MagBLayer * > | barrelLayers () const |
Get barrel layers. More... | |
std::vector< MagESector * > | endcapSectors () const |
Get endcap layers. More... | |
MagGeoBuilderFromDDD (std::string tableSet_, int geometryVersion, bool debug=false) | |
Constructor. More... | |
float | maxR () const |
float | maxZ () const |
void | setGridFiles (const magneticfield::TableFileMap &gridFiles) |
void | setScaling (const std::vector< int > &keys, const std::vector< double > &values) |
virtual | ~MagGeoBuilderFromDDD () |
Destructor. More... | |
Private Member Functions | |
std::vector< MagVolume6Faces * > | barrelVolumes () const |
virtual void | build (const DDCompactView &cpv) |
void | buildInterpolator (const volumeHandle *vol, std::map< std::string, MagProviderInterpol *> &interpolators) |
void | buildMagVolumes (const magneticfield::handles &volumes, std::map< std::string, MagProviderInterpol *> &interpolators) |
std::vector< MagVolume6Faces * > | endcapVolumes () const |
void | summary (magneticfield::handles &volumes) |
void | testInside (magneticfield::handles &volumes) |
Private Attributes | |
magneticfield::handles | bVolumes |
const bool | debug |
magneticfield::handles | eVolumes |
int | geometryVersion |
std::vector< MagBLayer * > | mBLayers |
std::vector< MagESector * > | mESectors |
std::string | tableSet |
const magneticfield::TableFileMap * | theGridFiles |
std::map< int, double > | theScalingFactors |
Friends | |
class | MagGeometry |
class | magneticfield::VolumeBasedMagneticFieldESProducer |
class | magneticfield::VolumeBasedMagneticFieldESProducerFromDB |
class | TestMagVolume |
Parse the XML magnetic geometry, build individual volumes and match their shared surfaces. Build MagVolume6Faces and organise them in a hierarchical structure. Build MagGeometry out of it.
Definition at line 32 of file MagGeoBuilderFromDDD.h.
MagGeoBuilderFromDDD::MagGeoBuilderFromDDD | ( | std::string | tableSet_, |
int | geometryVersion, | ||
bool | debug = false |
||
) |
Constructor.
Definition at line 56 of file MagGeoBuilderFromDDD.cc.
References gather_cfg::cout, and debug.
|
virtual |
Destructor.
Definition at line 62 of file MagGeoBuilderFromDDD.cc.
References bVolumes, eVolumes, and mps_fire::i.
vector< MagBLayer * > MagGeoBuilderFromDDD::barrelLayers | ( | ) | const |
Get barrel layers.
Definition at line 621 of file MagGeoBuilderFromDDD.cc.
References mBLayers.
Referenced by magneticfield::VolumeBasedMagneticFieldESProducer::produce(), and magneticfield::VolumeBasedMagneticFieldESProducerFromDB::produce().
|
private |
Definition at line 625 of file MagGeoBuilderFromDDD.cc.
References bVolumes, mps_fire::i, and findQualityFiles::v.
Referenced by magneticfield::VolumeBasedMagneticFieldESProducer::produce(), and magneticfield::VolumeBasedMagneticFieldESProducerFromDB::produce().
|
privatevirtual |
Definition at line 117 of file MagGeoBuilderFromDDD.cc.
References buildInterpolator(), buildMagVolumes(), bVolumes, ClusterizingHistogram::clusterize(), conv, gather_cfg::cout, debug, eVolumes, Exception, f, ClusterizingHistogram::fill(), dqmdumpme::first, DDExpandedView::firstChild(), Geom::fpi(), Geom::ftwoPi(), DDExpandedView::geoHistory(), mps_fire::i, l1ctLayer1_patternWriters_cff::isec, ALPAKA_ACCELERATOR_NAMESPACE::vertexFinder::iv, submitPVResolutionJobs::key, dqmdumpme::last, hgcalTBTopologyTester_cfi::layers, DDExpandedView::logicalPart(), mBLayers, mESectors, Skims_PA_cff::name, DDName::name(), DDBase< N, C >::name(), DDExpandedView::nextSibling(), hltrates_dqm_sourceclient-live_cfg::offset, precomputed_value_sort(), dttmaxenums::R, L1TObjectsTimingClient_cff::resolution, svgfig::rotate(), DDExpandedView::rotation(), volumeBasedMagneticField_160812_cfi::sectors, AlCaHLTBitMon_QueryRunRegistry::string, summary(), testInside(), theGridFiles, DDExpandedView::translation(), findQualityFiles::v, and beamSpotPI::Z.
Referenced by magneticfield::VolumeBasedMagneticFieldESProducer::produce(), and magneticfield::VolumeBasedMagneticFieldESProducerFromDB::produce().
|
private |
Definition at line 500 of file MagGeoBuilderFromDDD.cc.
References MFGridFactory::build(), magneticfield::BaseVolumeHandle::center(), DMR_cfg::cerr, magneticfield::BaseVolumeHandle::copyno, gather_cfg::cout, Dimensions::d, debug, contentValuesFiles::fullPath, edm::FileInPath::fullPath(), runTauDisplay::gp, getRunAppsInfo::grid, Dimensions::h, mps_fire::i, dqmiolumiharvest::j, dqmdumpme::k, magneticfield::BaseVolumeHandle::magFile, magneticfield::BaseVolumeHandle::masterSector, PV3DBase< T, PVType, FrameType >::phi(), Geom::pi(), magneticfield::BaseVolumeHandle::placement(), GloballyPositioned< T >::position(), hcal_runs::rf, makeMuonMisalignmentScenario::rot, GloballyPositioned< T >::rotation(), MagGeoBuilderFromDDD::volumeHandle::sides(), tableSet, magneticfield::BaseVolumeHandle::toExpand(), tolerance, magneticfield::BaseVolumeHandle::volumeno, Dimensions::w, MagException::what(), and cms::Exception::what().
Referenced by build().
|
private |
Definition at line 456 of file MagGeoBuilderFromDDD.cc.
References submitPVResolutionJobs::key, MagVolume::ownsFieldProvider(), GloballyPositioned< T >::position(), GloballyPositioned< T >::rotation(), theScalingFactors, and volumeBasedMagneticField_160812_cfi::volumes.
Referenced by build().
vector< MagESector * > MagGeoBuilderFromDDD::endcapSectors | ( | ) | const |
Get endcap layers.
Definition at line 623 of file MagGeoBuilderFromDDD.cc.
References mESectors.
Referenced by magneticfield::VolumeBasedMagneticFieldESProducer::produce(), and magneticfield::VolumeBasedMagneticFieldESProducerFromDB::produce().
|
private |
Definition at line 634 of file MagGeoBuilderFromDDD.cc.
References eVolumes, mps_fire::i, and findQualityFiles::v.
Referenced by magneticfield::VolumeBasedMagneticFieldESProducer::produce(), and magneticfield::VolumeBasedMagneticFieldESProducerFromDB::produce().
float MagGeoBuilderFromDDD::maxR | ( | ) | const |
Definition at line 643 of file MagGeoBuilderFromDDD.cc.
Referenced by magneticfield::VolumeBasedMagneticFieldESProducer::produce(), and magneticfield::VolumeBasedMagneticFieldESProducerFromDB::produce().
float MagGeoBuilderFromDDD::maxZ | ( | ) | const |
Definition at line 648 of file MagGeoBuilderFromDDD.cc.
References geometryVersion.
Referenced by magneticfield::VolumeBasedMagneticFieldESProducer::produce(), and magneticfield::VolumeBasedMagneticFieldESProducerFromDB::produce().
void MagGeoBuilderFromDDD::setGridFiles | ( | const magneticfield::TableFileMap & | gridFiles | ) |
Definition at line 668 of file MagGeoBuilderFromDDD.cc.
References volumeBasedMagneticField_160812_cfi::gridFiles, and theGridFiles.
Referenced by magneticfield::VolumeBasedMagneticFieldESProducer::produce(), and magneticfield::VolumeBasedMagneticFieldESProducerFromDB::produce().
void MagGeoBuilderFromDDD::setScaling | ( | const std::vector< int > & | keys, |
const std::vector< double > & | values | ||
) |
Set scaling factors for individual volumes. "keys" is a vector of 100*volume number + sector (sector 0 = all sectors) "values" are the corresponding scaling factors
Definition at line 658 of file MagGeoBuilderFromDDD.cc.
References Exception, mps_fire::i, relativeConstraints::keys, theScalingFactors, and contentValuesCheck::values.
Referenced by magneticfield::VolumeBasedMagneticFieldESProducer::produce(), and magneticfield::VolumeBasedMagneticFieldESProducerFromDB::produce().
|
private |
Definition at line 72 of file MagGeoBuilderFromDDD.cc.
References gather_cfg::cout, dqmdumpme::first, mps_fire::i, dqmdumpme::last, edm::second(), ALPAKA_ACCELERATOR_NAMESPACE::ecal::reconstruction::internal::barrel::side(), and volumeBasedMagneticField_160812_cfi::volumes.
Referenced by build().
|
private |
Definition at line 597 of file MagGeoBuilderFromDDD.cc.
References gather_cfg::cout, mps_fire::i, and volumeBasedMagneticField_160812_cfi::volumes.
Referenced by build().
|
friend |
Definition at line 67 of file MagGeoBuilderFromDDD.h.
|
friend |
Definition at line 68 of file MagGeoBuilderFromDDD.h.
|
friend |
Definition at line 69 of file MagGeoBuilderFromDDD.h.
|
friend |
Definition at line 66 of file MagGeoBuilderFromDDD.h.
|
private |
Definition at line 87 of file MagGeoBuilderFromDDD.h.
Referenced by barrelVolumes(), build(), and ~MagGeoBuilderFromDDD().
|
private |
Definition at line 99 of file MagGeoBuilderFromDDD.h.
Referenced by build(), buildInterpolator(), runTauIdMVA.TauIDEmbedder::loadMVA_WPs_run2_2017(), MagGeoBuilderFromDDD(), MagGeoBuilderFromDDD::volumeHandle::referencePlane(), and runTauIdMVA.TauIDEmbedder::runTauID().
|
private |
Definition at line 88 of file MagGeoBuilderFromDDD.h.
Referenced by build(), endcapVolumes(), and ~MagGeoBuilderFromDDD().
|
private |
Definition at line 94 of file MagGeoBuilderFromDDD.h.
Referenced by maxZ().
|
private |
Definition at line 90 of file MagGeoBuilderFromDDD.h.
Referenced by barrelLayers(), and build().
|
private |
Definition at line 91 of file MagGeoBuilderFromDDD.h.
Referenced by build(), and endcapSectors().
|
private |
Definition at line 93 of file MagGeoBuilderFromDDD.h.
Referenced by buildInterpolator().
|
private |
Definition at line 97 of file MagGeoBuilderFromDDD.h.
Referenced by build(), and setGridFiles().
|
private |
Definition at line 96 of file MagGeoBuilderFromDDD.h.
Referenced by buildMagVolumes(), and setScaling().