Go to the documentation of this file. 1 #ifndef MagneticField_GeomBuilder_BaseVolumeHandle_H
2 #define MagneticField_GeomBuilder_BaseVolumeHandle_H
100 virtual std::vector<VolumeSide>
sides()
const = 0;
154 typedef std::vector<BaseVolumeHandle*>
handles;
173 return v->center().phi();
218 inline const char*
const newln =
"\n";
std::string magFile
Name of magnetic field table file.
BaseVolumeHandle(bool expand2Pi=false, bool debugVal=false)
Point3DBase< float, GlobalTag > GlobalPoint
int references(int which_side) const
Geom::Phi< float > thePhiMin
const GlobalPoint & center() const
Return the center of the volume.
const Surface & surface(int which_side) const
Get the current surface on specified side.
bool operator()(const BaseVolumeHandle *v1, const BaseVolumeHandle *v2) const
unsigned short volumeno
volume number
Geom::Phi< float > minPhi() const
Minimum value of phi covered by the volume.
ConstReferenceCountingPointer< Surface > RCPS
MagVolume6Faces * magVolume
Pointer to the final MagVolume (must be set from outside)
SurfaceOrientation::GlobalFace Sides
bool isPlaneMatched(int which_side) const
if the specified surface has been matched.
virtual ~BaseVolumeHandle()
virtual DDSolidShape shape() const =0
Shape of the solid.
Surface::GlobalPoint GlobalPoint
bool sameSurface(const Surface &s1, Sides which_side, float tolerance=0.01)
Find out if two surfaces are the same physical surface.
const GloballyPositioned< float > * placement() const
Position and rotation.
int masterSector
The sector for which an interpolator for this class of volumes should be built.
std::vector< BaseVolumeHandle * > handles
double minZ() const
Z limits.
Geom::Phi< float > maxPhi() const
Maximum value of phi covered by the volume.
Surface::LocalPoint LocalPoint
Surface::LocalVector LocalVector
unsigned short copyno
copy number
virtual std::vector< VolumeSide > sides() const =0
The surfaces and they orientation, as required to build a MagVolume.
const PositionType & position() const
std::string name
Name of the volume.
void buildPhiZSurf(double startPhi, double deltaPhi, double zhalf, double rCentr)
bool isIron() const
Temporary hack to pass information on material. Will eventually be replaced!
bool operator()(double phi1, double phi2) const
bool setSurface(const Surface &s1, Sides which_side)
Assign a shared surface perorming sanity checks.
GloballyPositioned< float > * refPlane
const double RN() const
Distance of (x,y) plane from origin.
double minR() const
Minimum R for any point within the volume.
Geom::Phi< T > phi() const