#include <BaseVolumeHandle.h>
Public Types | |
typedef Surface::GlobalPoint | GlobalPoint |
typedef Surface::LocalPoint | LocalPoint |
typedef Surface::LocalVector | LocalVector |
typedef SurfaceOrientation::GlobalFace | Sides |
Public Member Functions | |
BaseVolumeHandle (bool expand2Pi=false, bool debugVal=false) | |
BaseVolumeHandle (const BaseVolumeHandle &v)=delete | |
const GlobalPoint & | center () const |
Return the center of the volume. More... | |
bool | isIron () const |
Temporary hack to pass information on material. Will eventually be replaced! More... | |
bool | isPlaneMatched (int which_side) const |
if the specified surface has been matched. More... | |
Geom::Phi< float > | maxPhi () const |
Maximum value of phi covered by the volume. More... | |
double | maxZ () const |
Geom::Phi< float > | minPhi () const |
Minimum value of phi covered by the volume. More... | |
double | minR () const |
Minimum R for any point within the volume. More... | |
double | minZ () const |
Z limits. More... | |
const GloballyPositioned< float > * | placement () const |
Position and rotation. More... | |
int | references (int which_side) const |
const double | RN () const |
Distance of (x,y) plane from origin. More... | |
bool | sameSurface (const Surface &s1, Sides which_side, float tolerance=0.01) |
Find out if two surfaces are the same physical surface. More... | |
bool | setSurface (const Surface &s1, Sides which_side) |
Assign a shared surface perorming sanity checks. More... | |
virtual DDSolidShape | shape () const =0 |
Shape of the solid. More... | |
virtual std::vector< VolumeSide > | sides () const =0 |
The surfaces and they orientation, as required to build a MagVolume. More... | |
const Surface & | surface (int which_side) const |
Get the current surface on specified side. More... | |
const Surface & | surface (Sides which_side) const |
bool | toExpand () const |
virtual | ~BaseVolumeHandle () |
Public Attributes | |
unsigned short | copyno |
copy number More... | |
std::string | magFile |
Name of magnetic field table file. More... | |
MagVolume6Faces * | magVolume |
Pointer to the final MagVolume (must be set from outside) More... | |
int | masterSector |
The sector for which an interpolator for this class of volumes should be built. More... | |
std::string | name |
Name of the volume. More... | |
unsigned short | volumeno |
volume number More... | |
Protected Types | |
typedef ConstReferenceCountingPointer < Surface > | RCPS |
Protected Member Functions | |
void | buildPhiZSurf (double startPhi, double deltaPhi, double zhalf, double rCentr) |
Protected Attributes | |
GlobalPoint | center_ |
const bool | debug |
bool | expand |
bool | isAssigned [6] |
bool | isIronFlag |
GloballyPositioned< float > * | refPlane |
RCPS | surfaces [6] |
Geom::Phi< float > | thePhiMin |
double | theRMax |
double | theRMin |
double | theRN |
Definition at line 22 of file BaseVolumeHandle.h.
Definition at line 24 of file BaseVolumeHandle.h.
Definition at line 25 of file BaseVolumeHandle.h.
Definition at line 26 of file BaseVolumeHandle.h.
|
protected |
Definition at line 117 of file BaseVolumeHandle.h.
Definition at line 27 of file BaseVolumeHandle.h.
BaseVolumeHandle::BaseVolumeHandle | ( | bool | expand2Pi = false , |
bool | debugVal = false |
||
) |
Definition at line 24 of file BaseVolumeHandle.cc.
|
delete |
|
virtual |
Definition at line 35 of file BaseVolumeHandle.cc.
References refPlane.
|
protected |
Definition at line 44 of file BaseVolumeHandle.cc.
References center_, funct::cos(), gather_cfg::cout, debug, PV3DBase< T, PVType, FrameType >::perp(), PV3DBase< T, PVType, FrameType >::phi(), SurfaceOrientation::phiminus, SurfaceOrientation::phiplus, refPlane, funct::sin(), surfaces, theRN, GloballyPositioned< T >::toGlobal(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), PV3DBase< T, PVType, FrameType >::z(), SurfaceOrientation::zminus, and SurfaceOrientation::zplus.
const Surface::GlobalPoint & BaseVolumeHandle::center | ( | ) | const |
Return the center of the volume.
Definition at line 42 of file BaseVolumeHandle.cc.
References center_.
Referenced by magneticfield::MagGeoBuilder::build(), MagGeoBuilderFromDDD::build(), magneticfield::MagGeoBuilder::buildInterpolator(), MagGeoBuilderFromDDD::buildInterpolator(), magneticfield::ExtractZ::operator()(), magneticfield::ExtractAbsZ::operator()(), magneticfield::ExtractPhi::operator()(), magneticfield::ExtractR::operator()(), magneticfield::LessZ::operator()(), magneticfield::volumeHandle::volumeHandle(), and MagGeoBuilderFromDDD::volumeHandle::volumeHandle().
|
inline |
Temporary hack to pass information on material. Will eventually be replaced!
Definition at line 108 of file BaseVolumeHandle.h.
References isIronFlag.
|
inline |
if the specified surface has been matched.
Definition at line 55 of file BaseVolumeHandle.h.
References isAssigned.
|
inline |
Maximum value of phi covered by the volume.
Definition at line 85 of file BaseVolumeHandle.h.
References PV3DBase< T, PVType, FrameType >::phi(), SurfaceOrientation::phiplus, GloballyPositioned< T >::position(), and surface().
Referenced by magneticfield::ExtractPhiMax::operator()().
|
inline |
Definition at line 91 of file BaseVolumeHandle.h.
References GloballyPositioned< T >::position(), surface(), PV3DBase< T, PVType, FrameType >::z(), and SurfaceOrientation::zplus.
|
inline |
Minimum value of phi covered by the volume.
Definition at line 80 of file BaseVolumeHandle.h.
References thePhiMin.
|
inline |
Minimum R for any point within the volume.
Definition at line 94 of file BaseVolumeHandle.h.
References theRMin.
|
inline |
Z limits.
Definition at line 90 of file BaseVolumeHandle.h.
References GloballyPositioned< T >::position(), surface(), PV3DBase< T, PVType, FrameType >::z(), and SurfaceOrientation::zminus.
|
inline |
Position and rotation.
Definition at line 97 of file BaseVolumeHandle.h.
References refPlane.
Referenced by magneticfield::MagGeoBuilder::buildInterpolator(), and MagGeoBuilderFromDDD::buildInterpolator().
|
inline |
Definition at line 57 of file BaseVolumeHandle.h.
|
inline |
Distance of (x,y) plane from origin.
Definition at line 41 of file BaseVolumeHandle.h.
References theRN.
Referenced by magneticfield::ExtractRN::operator()().
Find out if two surfaces are the same physical surface.
Definition at line 101 of file BaseVolumeHandle.cc.
References gather_cfg::cout, debug, Vector3DBase< T, FrameTag >::dot(), mag(), Plane::normalVector(), Cone::openingAngle(), fireworks::p1, fireworks::p2, GloballyPositioned< T >::position(), Cylinder::radius(), surfaces, tolerance, GloballyPositioned< T >::toLocal(), Cone::vertex(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by setSurface().
Assign a shared surface perorming sanity checks.
Definition at line 177 of file BaseVolumeHandle.cc.
References copyno, gather_cfg::cout, debug, isAssigned, name, Plane::normalVector(), fireworks::p1, fireworks::p2, GloballyPositioned< T >::position(), sameSurface(), and surfaces.
|
pure virtual |
Shape of the solid.
Implemented in magneticfield::volumeHandle, and MagGeoBuilderFromDDD::volumeHandle.
|
pure virtual |
The surfaces and they orientation, as required to build a MagVolume.
Implemented in magneticfield::volumeHandle, and MagGeoBuilderFromDDD::volumeHandle.
const Surface & BaseVolumeHandle::surface | ( | int | which_side | ) | const |
Get the current surface on specified side.
Definition at line 215 of file BaseVolumeHandle.cc.
References cms::cuda::assert(), and surfaces.
Referenced by maxPhi(), maxZ(), and minZ().
|
inline |
Definition at line 105 of file BaseVolumeHandle.h.
References expand.
Referenced by magneticfield::MagGeoBuilder::buildInterpolator(), and MagGeoBuilderFromDDD::buildInterpolator().
|
protected |
Definition at line 142 of file BaseVolumeHandle.h.
Referenced by buildPhiZSurf(), center(), magneticfield::volumeHandle::referencePlane(), magneticfield::volumeHandle::sides(), magneticfield::volumeHandle::volumeHandle(), and MagGeoBuilderFromDDD::volumeHandle::volumeHandle().
unsigned short magneticfield::BaseVolumeHandle::copyno |
copy number
Definition at line 72 of file BaseVolumeHandle.h.
Referenced by magneticfield::MagGeoBuilder::build(), MagGeoBuilderFromDDD::build(), magneticfield::MagGeoBuilder::buildInterpolator(), MagGeoBuilderFromDDD::buildInterpolator(), setSurface(), MagGeoBuilderFromDDD::volumeHandle::volumeHandle(), and magneticfield::volumeHandle::volumeHandle().
|
protected |
Definition at line 151 of file BaseVolumeHandle.h.
Referenced by buildPhiZSurf(), runTauIdMVA.TauIDEmbedder::loadMVA_WPs_run2_2017(), magneticfield::volumeHandle::referencePlane(), runTauIdMVA.TauIDEmbedder::runTauID(), sameSurface(), setSurface(), magneticfield::volumeHandle::volumeHandle(), and MagGeoBuilderFromDDD::volumeHandle::volumeHandle().
|
protected |
Definition at line 146 of file BaseVolumeHandle.h.
Referenced by magneticfield::volumeHandle::sides(), and toExpand().
|
protected |
Definition at line 122 of file BaseVolumeHandle.h.
Referenced by isPlaneMatched(), setSurface(), magneticfield::volumeHandle::volumeHandle(), and MagGeoBuilderFromDDD::volumeHandle::volumeHandle().
|
protected |
Definition at line 149 of file BaseVolumeHandle.h.
Referenced by isIron(), MagGeoBuilderFromDDD::volumeHandle::volumeHandle(), and magneticfield::volumeHandle::volumeHandle().
std::string magneticfield::BaseVolumeHandle::magFile |
Name of magnetic field table file.
Definition at line 66 of file BaseVolumeHandle.h.
Referenced by magneticfield::MagGeoBuilder::build(), MagGeoBuilderFromDDD::build(), magneticfield::MagGeoBuilder::buildInterpolator(), MagGeoBuilderFromDDD::buildInterpolator(), magneticfield::volumeHandle::volumeHandle(), and MagGeoBuilderFromDDD::volumeHandle::volumeHandle().
MagVolume6Faces* magneticfield::BaseVolumeHandle::magVolume |
Pointer to the final MagVolume (must be set from outside)
Definition at line 103 of file BaseVolumeHandle.h.
int magneticfield::BaseVolumeHandle::masterSector |
The sector for which an interpolator for this class of volumes should be built.
Definition at line 111 of file BaseVolumeHandle.h.
Referenced by magneticfield::MagGeoBuilder::build(), MagGeoBuilderFromDDD::build(), magneticfield::MagGeoBuilder::buildInterpolator(), MagGeoBuilderFromDDD::buildInterpolator(), magneticfield::volumeHandle::volumeHandle(), and MagGeoBuilderFromDDD::volumeHandle::volumeHandle().
std::string magneticfield::BaseVolumeHandle::name |
Name of the volume.
Definition at line 63 of file BaseVolumeHandle.h.
Referenced by ElectronMVAID.ElectronMVAID::__call__(), FWLite.ElectronMVAID::__call__(), dirstructure.Directory::__create_pie_image(), DisplayManager.DisplayManager::__del__(), dqm_interfaces.DirID::__eq__(), dirstructure.Directory::__get_full_path(), dirstructure.Comparison::__get_img_name(), dataset.Dataset::__getDataType(), dataset.Dataset::__getFileInfoList(), dirstructure.Comparison::__make_image(), core.autovars.NTupleVariable::__repr__(), core.autovars.NTupleObjectType::__repr__(), core.autovars.NTupleObject::__repr__(), core.autovars.NTupleCollection::__repr__(), dirstructure.Directory::__repr__(), dqm_interfaces.DirID::__repr__(), dirstructure.Comparison::__repr__(), config.Service::__setattr__(), config.CFG::__str__(), counter.Counter::__str__(), average.Average::__str__(), FWLite.WorkingPoints::_reformat_cut_definitions(), core.autovars.NTupleObjectType::addSubObjects(), core.autovars.NTupleObjectType::addVariables(), core.autovars.NTupleObjectType::allVars(), dirstructure.Directory::calcStats(), geometryComparison.GeometryComparison::createScript(), validation.Sample::digest(), python.rootplot.utilities.Hist::divide(), python.rootplot.utilities.Hist::divide_wilson(), DisplayManager.DisplayManager::Draw(), core.autovars.NTupleVariable::fillBranch(), core.autovars.NTupleObject::fillBranches(), core.autovars.NTupleCollection::fillBranchesScalar(), core.autovars.NTupleCollection::fillBranchesVector(), core.autovars.NTupleCollection::get_cpp_declaration(), core.autovars.NTupleCollection::get_cpp_wrapper_class(), core.autovars.NTupleCollection::get_py_wrapper_class(), utils.StatisticalTest::get_status(), production_tasks.Task::getname(), dataset.CMSDataset::getPrimaryDatasetEntries(), dataset.PrivateDataset::getPrimaryDatasetEntries(), primaryVertexResolution.PrimaryVertexResolution::getRepMap(), primaryVertexValidation.PrimaryVertexValidation::getRepMap(), zMuMuValidation.ZMuMuValidation::getRepMap(), VIDSelectorBase.VIDSelectorBase::initialize(), core.autovars.NTupleVariable::makeBranch(), core.autovars.NTupleObject::makeBranches(), core.autovars.NTupleCollection::makeBranchesScalar(), core.autovars.NTupleCollection::makeBranchesVector(), dirstructure.Directory::print_report(), dataset.BaseDataset::printInfo(), dataset.Dataset::printInfo(), production_tasks.MonitorJobs::run(), setSurface(), python.rootplot.utilities.Hist::TGraph(), python.rootplot.utilities.Hist::TH1F(), magneticfield::volumeHandle::volumeHandle(), MagGeoBuilderFromDDD::volumeHandle::volumeHandle(), counter.Counter::write(), and average.Average::write().
|
protected |
Definition at line 139 of file BaseVolumeHandle.h.
Referenced by buildPhiZSurf(), placement(), magneticfield::volumeHandle::referencePlane(), and ~BaseVolumeHandle().
|
protected |
Definition at line 120 of file BaseVolumeHandle.h.
Referenced by buildPhiZSurf(), sameSurface(), setSurface(), magneticfield::volumeHandle::sides(), surface(), magneticfield::volumeHandle::volumeHandle(), and MagGeoBuilderFromDDD::volumeHandle::volumeHandle().
|
protected |
Definition at line 134 of file BaseVolumeHandle.h.
Referenced by minPhi().
|
protected |
Definition at line 133 of file BaseVolumeHandle.h.
Referenced by magneticfield::volumeHandle::volumeHandle(), and MagGeoBuilderFromDDD::volumeHandle::volumeHandle().
|
protected |
Definition at line 132 of file BaseVolumeHandle.h.
Referenced by minR(), magneticfield::volumeHandle::sides(), MagGeoBuilderFromDDD::volumeHandle::volumeHandle(), and magneticfield::volumeHandle::volumeHandle().
|
protected |
Definition at line 128 of file BaseVolumeHandle.h.
Referenced by buildPhiZSurf(), RN(), magneticfield::volumeHandle::volumeHandle(), and MagGeoBuilderFromDDD::volumeHandle::volumeHandle().
unsigned short magneticfield::BaseVolumeHandle::volumeno |
volume number
Definition at line 69 of file BaseVolumeHandle.h.
Referenced by magneticfield::MagGeoBuilder::build(), MagGeoBuilderFromDDD::build(), magneticfield::MagGeoBuilder::buildInterpolator(), MagGeoBuilderFromDDD::buildInterpolator(), magneticfield::volumeHandle::volumeHandle(), and MagGeoBuilderFromDDD::volumeHandle::volumeHandle().