42 std::pair<bool,double>
const Bounds * bounds(const NavVolume *vol) override
Bounds corresponding to a NavVolume if present.
const Surface & surface() const override
Access to actual surface.
LinearSearchNavSurfaceImpl theImpl
std::pair< bool, double > distanceAlongLine(const NavSurface::GlobalPoint &pos, const NavSurface::GlobalVector &dir) const override
const Bounds * bounds(const NavVolume *vol)
NavSurface::TSOSwithPath propagateWithPath(const Propagator &prop, const TrajectoryStateOnSurface &startingState) const override
hook for double dispatch to avoid propagation to generic surface.
void addVolume(const NavVolume *vol, const Bounds *bounds, SurfaceOrientation::Side side) override
NavVolumes are supposed to call this method to "register" with the NavSurface.
TrajectoryStateOnSurface propagate(const Propagator &prop, const TrajectoryStateOnSurface &startingState) const override
hook for double dispatch to avoid propagation to generic surface.
const NavVolume * nextVolume(const NavSurface::LocalPoint &point, SurfaceOrientation::Side side) const override
ConstReferenceCountingPointer< Cylinder > theSurfaceP
const NavVolume * nextVolume(const NavSurface::LocalPoint &point, SurfaceOrientation::Side side) const
NavCylinder(const Cylinder *cylinder)
std::pair< TrajectoryStateOnSurface, double > TSOSwithPath
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
void addVolume(const NavVolume *vol, const Bounds *bounds, SurfaceOrientation::Side side)