#include <DD4hep_volumeHandle.h>
Public Member Functions | |
volumeHandle | operator= (const volumeHandle &v)=delete |
DDSolidShape | shape () const override |
Shape of the solid. More... | |
std::vector< VolumeSide > | sides () const override |
The surfaces and they orientation, as required to build a MagVolume. More... | |
volumeHandle (const cms::DDFilteredView &fv, bool expand2Pi=false, bool debugVal=false) | |
volumeHandle (const volumeHandle &v)=delete | |
Public Member Functions inherited from magneticfield::BaseVolumeHandle | |
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... | |
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 () |
Private Member Functions | |
void | buildBox (double halfX, double halfY, double halfZ) |
void | buildCons (double zhalf, double rInMinusZ, double rOutMinusZ, double rInPlusZ, double rOutPlusZ, double startPhi, double deltaPhi) |
void | buildPseudoTrap (double x1, double x2, double y1, double y2, double halfZ, double radius, bool atMinusZ) |
void | buildTrap (double x1, double x2, double x3, double x4, double y1, double y2, double theta, double phi, double halfZ, double alpha1, double alpha2) |
void | buildTruncTubs (double zhalf, double rIn, double rOut, double startPhi, double deltaPhi, double cutAtStart, double cutAtDelta, bool cutInside) |
void | buildTubs (double zhalf, double rIn, double rOut, double startPhi, double deltaPhi) |
void | referencePlane (const cms::DDFilteredView &fv) |
Private Attributes | |
const cms::DDFilteredView & | solid |
const DDSolidShape | theShape |
Additional Inherited Members | |
Public Types inherited from magneticfield::BaseVolumeHandle | |
typedef Surface::GlobalPoint | GlobalPoint |
typedef Surface::LocalPoint | LocalPoint |
typedef Surface::LocalVector | LocalVector |
typedef SurfaceOrientation::GlobalFace | Sides |
Public Attributes inherited from magneticfield::BaseVolumeHandle | |
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 inherited from magneticfield::BaseVolumeHandle | |
typedef ConstReferenceCountingPointer< Surface > | RCPS |
Protected Member Functions inherited from magneticfield::BaseVolumeHandle | |
void | buildPhiZSurf (double startPhi, double deltaPhi, double zhalf, double rCentr) |
Protected Attributes inherited from magneticfield::BaseVolumeHandle | |
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 23 of file DD4hep_volumeHandle.h.
volumeHandle::volumeHandle | ( | const cms::DDFilteredView & | fv, |
bool | expand2Pi = false , |
||
bool | debugVal = false |
||
) |
Definition at line 33 of file DD4hep_volumeHandle.cc.
References buildBox(), buildCons(), buildPseudoTrap(), buildTrap(), buildTruncTubs(), buildTubs(), magneticfield::BaseVolumeHandle::center(), magneticfield::BaseVolumeHandle::center_, magneticfield::BaseVolumeHandle::copyno, cms::DDFilteredView::copyNum(), ztail::d, ddbox, ddcons, ddpseudotrap, ddtrap, ddtrunctubs, ddtubs, magneticfield::BaseVolumeHandle::debug, SiPixelRawToDigiRegional_cfi::deltaPhi, reco::deltaPhi(), mps_fire::i, magneticfield::BaseVolumeHandle::isAssigned, magneticfield::BaseVolumeHandle::isIronFlag, LogTrace, magneticfield::BaseVolumeHandle::magFile, magneticfield::BaseVolumeHandle::masterSector, cms::DDFilteredView::materialName(), magneticfield::BaseVolumeHandle::name, cms::DDFilteredView::name(), magneticfield::newln, cms::DDFilteredView::parameters(), PV3DBase< T, PVType, FrameType >::perp(), PV3DBase< T, PVType, FrameType >::phi(), referencePlane(), solid, cms::DDFilteredView::solid(), DDTruncTubs::startPhi(), DDTubs::startPhi(), AlCaHLTBitMon_QueryRunRegistry::string, magneticfield::BaseVolumeHandle::surfaces, magneticfield::BaseVolumeHandle::theRMax, magneticfield::BaseVolumeHandle::theRMin, magneticfield::BaseVolumeHandle::theRN, theShape, theta(), cms::DDFilteredView::trans(), HcalDetIdTransform::transform(), heppy_batch::val, cms::DDFilteredView::volume(), magneticfield::BaseVolumeHandle::volumeno, testProducerWithPsetDescEmpty_cfi::x1, testProducerWithPsetDescEmpty_cfi::x2, testProducerWithPsetDescEmpty_cfi::y1, and testProducerWithPsetDescEmpty_cfi::y2.
|
delete |
|
private |
Referenced by volumeHandle().
|
private |
Referenced by volumeHandle().
|
private |
Referenced by volumeHandle().
|
private |
Referenced by volumeHandle().
|
private |
Referenced by volumeHandle().
|
private |
Referenced by volumeHandle().
|
delete |
|
private |
Definition at line 164 of file DD4hep_volumeHandle.cc.
References magneticfield::BaseVolumeHandle::center_, ddpseudotrap, magneticfield::BaseVolumeHandle::debug, LogTrace, GloballyPositioned< T >::position(), magneticfield::BaseVolumeHandle::refPlane, cms::DDFilteredView::rot(), theShape, GloballyPositioned< T >::toGlobal(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by volumeHandle().
|
inlineoverridevirtual |
Shape of the solid.
Implements magneticfield::BaseVolumeHandle.
Definition at line 33 of file DD4hep_volumeHandle.h.
References theShape.
|
overridevirtual |
The surfaces and they orientation, as required to build a MagVolume.
Implements magneticfield::BaseVolumeHandle.
Definition at line 240 of file DD4hep_volumeHandle.cc.
References magneticfield::BaseVolumeHandle::center_, ddtubs, magneticfield::BaseVolumeHandle::expand, get, mps_fire::i, SurfaceOrientation::inner, SurfaceOrientation::phiminus, SurfaceOrientation::phiplus, mps_fire::result, alignCSCRings::s, magneticfield::BaseVolumeHandle::surfaces, magneticfield::BaseVolumeHandle::theRMin, and theShape.
Referenced by magneticfield::MagGeoBuilder::buildInterpolator().
|
private |
Definition at line 81 of file DD4hep_volumeHandle.h.
Referenced by volumeHandle().
|
private |
Definition at line 80 of file DD4hep_volumeHandle.h.
Referenced by referencePlane(), shape(), sides(), and volumeHandle().