38 if (std::abs(cyl1->
center().z() - cyl2->
center().z()) > 1.) {
39 return (std::abs(cyl1->
center().z()) < std::abs(cyl2->
center().z()));
43 if (disc1 and disc2) {
46 if (discbounds1->
rMax() < discbounds2->
rMin() + 1) {
49 if (discbounds1->
rMin() > discbounds2->
rMax() - 1) {
52 return (std::abs(disc1->
center().z()) < std::abs(disc2->
center().z()));
55 if ((cyl1 !=
nullptr) && (disc2 !=
nullptr)) {
63 return (std::abs(cyl1->
center().z()) < std::abs(disc2->
center().z()));
66 if ((disc1 ==
nullptr) || (cyl2 ==
nullptr)) {
67 throw std::logic_error(
"Unhandled surface combination.");
80 return (std::abs(cyl2->
center().z()) > std::abs(disc1->
center().z()));
88 return static_cast<const CylinderSurface *
>(&pLayer->surfaceRepresentation());
93 return static_cast<const DiscSurface *
>(&pLayer->surfaceRepresentation());
104 if (disc1 and disc2) {
105 return (std::abs(disc1->
center().z()) < std::abs(disc2->
center().z()));
bool operator()(const Trk::Layer *one, const Trk::Layer *two) const
bool operator()(const LayerPtrPair &one, const LayerPtrPair &two) const
std::pair< const Trk::Layer *, const Trk::Layer * > LayerPtrPair
Bounds for a cylindrical Surface.
virtual double r() const override final
This method returns the radius.
Class for a CylinderSurface in the ATLAS detector.
virtual const CylinderBounds & bounds() const override final
This method returns the CylinderBounds by reference (NoBounds is not possible for cylinder)
Class to describe the bounds for a planar DiscSurface.
double rMax() const
This method returns outer radius.
double rMin() const
This method returns inner radius.
Class for a DiscSurface in the ATLAS detector.
const SurfaceBounds & bounds() const override final
This method returns the bounds by reference.
Base Class for a Detector Layer in the Tracking realm.
const Amg::Vector3D & center() const
Returns the center position of the Surface.