1 #ifndef NavVolume6Faces_H
2 #define NavVolume6Faces_H
39 virtual const std::vector<VolumeSide>&
faces()
const {
return theFaces; }
bool inside(const GlobalPoint &gp, double tolerance) const
virtual Container nextSurface(const NavVolume::LocalPoint &pos, const NavVolume::LocalVector &mom, double charge, PropagationDirection propDir=alongMomentum) const
Give a sorted list of possible surfaces to propagate to.
bool isIron() const
Access to Iron/Air information:
std::vector< SurfaceAndBounds > Container
virtual VolumeCrossReturnType crossToNextVolume(const TrajectoryStateOnSurface ¤tState, const Propagator &prop) const
Cross this volume and point at the next.
GloballyPositioned< float >::LocalPoint LocalPoint
GloballyPositioned< float >::LocalVector LocalVector
virtual bool inside(const GlobalPoint &gp, double tolerance=0.) const =0
NavVolume6Faces(const PositionType &pos, const RotationType &rot, DDSolidShape shape, const std::vector< NavVolumeSide > &faces, const MagneticFieldProvider< float > *mfp)
virtual const std::vector< VolumeSide > & faces() const
Access to volume faces.
std::vector< VolumeSide > theFaces
void computeBounds(const std::vector< NavVolumeSide > &faces)