#include <MagGeometry.h>
Public Types | |
typedef Surface::GlobalPoint | GlobalPoint |
typedef Surface::GlobalVector | GlobalVector |
Public Member Functions | |
const std::vector < MagVolume6Faces const * > & | barrelVolumes () const |
const std::vector < MagVolume6Faces const * > & | endcapVolumes () const |
GlobalVector | fieldInTesla (const GlobalPoint &gp) const |
Return field vector at the specified global point. More... | |
MagVolume const * | findVolume (const GlobalPoint &gp, double tolerance=0.) const |
Find a volume. More... | |
bool | isZSymmetric () const |
MagGeometry (int geomVersion, const std::vector< MagBLayer * > &, const std::vector< MagESector * > &, const std::vector< MagVolume6Faces * > &, const std::vector< MagVolume6Faces * > &) | |
Constructor. More... | |
MagGeometry (int geomVersion, const std::vector< MagBLayer const * > &, const std::vector< MagESector const * > &, const std::vector< MagVolume6Faces const * > &, const std::vector< MagVolume6Faces const * > &) | |
~MagGeometry () | |
Destructor. More... | |
Private Member Functions | |
MagVolume const * | findVolume1 (const GlobalPoint &gp, double tolerance=0.) const |
bool | inBarrel (const GlobalPoint &gp) const |
Private Attributes | |
bool | cacheLastVolume |
int | geometryVersion |
std::atomic< MagVolume const * > | lastVolume |
MagBinFinders::GeneralBinFinderInR < double > const * | theBarrelBinFinder |
std::vector< MagBLayer const * > | theBLayers |
std::vector< MagVolume6Faces const * > | theBVolumes |
PeriodicBinFinderInPhi< float > const * | theEndcapBinFinder |
std::vector< MagESector const * > | theESectors |
std::vector< MagVolume6Faces const * > | theEVolumes |
Friends | |
class | MagGeometryExerciser |
Entry point to the geometry of magnetic volumes.
Definition at line 23 of file MagGeometry.h.
Definition at line 27 of file MagGeometry.h.
Definition at line 26 of file MagGeometry.h.
MagGeometry::MagGeometry | ( | int | geomVersion, |
const std::vector< MagBLayer * > & | tbl, | ||
const std::vector< MagESector * > & | tes, | ||
const std::vector< MagVolume6Faces * > & | tbv, | ||
const std::vector< MagVolume6Faces * > & | tev | ||
) |
Constructor.
Definition at line 23 of file MagGeometry.cc.
MagGeometry::MagGeometry | ( | int | geomVersion, |
const std::vector< MagBLayer const * > & | tbl, | ||
const std::vector< MagESector const * > & | tes, | ||
const std::vector< MagVolume6Faces const * > & | tbv, | ||
const std::vector< MagVolume6Faces const * > & | tev | ||
) |
Definition at line 30 of file MagGeometry.cc.
References gather_cfg::cout, verbose::debugOut, Geom::pi(), theBarrelBinFinder, theBLayers, theEndcapBinFinder, and theESectors.
MagGeometry::~MagGeometry | ( | ) |
Destructor.
Definition at line 61 of file MagGeometry.cc.
References theBarrelBinFinder, theBLayers, theEndcapBinFinder, and theESectors.
|
inline |
Definition at line 52 of file MagGeometry.h.
References theBVolumes.
|
inline |
Definition at line 53 of file MagGeometry.h.
References theEVolumes.
GlobalVector MagGeometry::fieldInTesla | ( | const GlobalPoint & | gp | ) | const |
Return field vector at the specified global point.
Definition at line 78 of file MagGeometry.cc.
References MagVolume::fieldInTesla(), findVolume(), edm::isNotFinite(), PV3DBase< T, PVType, FrameType >::mag(), and findQualityFiles::v.
Referenced by VolumeBasedMagneticField::inTesla(), and VolumeBasedMagneticField::inTeslaUnchecked().
MagVolume const * MagGeometry::findVolume | ( | const GlobalPoint & | gp, |
double | tolerance = 0. |
||
) | const |
Find a volume.
Definition at line 137 of file MagGeometry.cc.
References newFWLiteAna::bin, PeriodicBinFinderInPhi< T >::binIndex(), MagBinFinders::GeneralBinFinderInR< T >::binIndex(), cacheLastVolume, gather_cfg::cout, verbose::debugOut, inBarrel(), lastVolume, bookConverter::max, PV3DBase< T, PVType, FrameType >::perp(), phi, PV3DBase< T, PVType, FrameType >::phi(), dttmaxenums::R, mps_fire::result, theBarrelBinFinder, theBLayers, theEndcapBinFinder, and theESectors.
Referenced by fieldInTesla(), and VolumeBasedMagneticField::findVolume().
|
private |
Definition at line 101 of file MagGeometry.cc.
References gather_cfg::cout, newFWLiteAna::found, inBarrel(), theBVolumes, theEVolumes, and findQualityFiles::v.
|
private |
Definition at line 186 of file MagGeometry.cc.
References geometryVersion, PV3DBase< T, PVType, FrameType >::perp(), dttmaxenums::R, Gflash::Z, and PV3DBase< T, PVType, FrameType >::z().
Referenced by findVolume(), and findVolume1().
|
inline |
Definition at line 49 of file MagGeometry.h.
Referenced by VolumeBasedMagneticField::isZSymmetric().
|
friend |
Definition at line 57 of file MagGeometry.h.
|
private |
Definition at line 77 of file MagGeometry.h.
Referenced by findVolume().
|
private |
Definition at line 78 of file MagGeometry.h.
Referenced by inBarrel().
|
mutableprivate |
Definition at line 65 of file MagGeometry.h.
Referenced by findVolume().
|
private |
Definition at line 74 of file MagGeometry.h.
Referenced by findVolume(), MagGeometry(), and ~MagGeometry().
|
private |
Definition at line 67 of file MagGeometry.h.
Referenced by findVolume(), MagGeometry(), and ~MagGeometry().
|
private |
Definition at line 71 of file MagGeometry.h.
Referenced by barrelVolumes(), and findVolume1().
|
private |
Definition at line 75 of file MagGeometry.h.
Referenced by findVolume(), MagGeometry(), and ~MagGeometry().
|
private |
Definition at line 68 of file MagGeometry.h.
Referenced by findVolume(), MagGeometry(), and ~MagGeometry().
|
private |
Definition at line 72 of file MagGeometry.h.
Referenced by endcapVolumes(), and findVolume1().