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