29 {
30 const InDet::PixelCluster* pixclus1=dynamic_cast<const InDet::PixelCluster*>(prd1);
31 const InDet::PixelCluster* pixclus2=dynamic_cast<const InDet::PixelCluster*>(prd2);
32 const InDet::SCT_Cluster* sctclus1=dynamic_cast<const InDet::SCT_Cluster*>(prd1);
33 const InDet::SCT_Cluster* sctclus2=dynamic_cast<const InDet::SCT_Cluster*>(prd2);
34 const InDet::TRT_DriftCircle* trtclus1=dynamic_cast<const InDet::TRT_DriftCircle*>(prd1);
35 const InDet::TRT_DriftCircle* trtclus2=dynamic_cast<const InDet::TRT_DriftCircle*>(prd2);
36 if (pixclus1 && !pixclus2) return true;
37 else if (pixclus2 && !pixclus1) return false;
38 else if (sctclus1 && trtclus2) return true;
39 else if (sctclus2 && trtclus1) return false;
40 else if (pixclus1){
45 }
46 else if (sctclus1){
51
52 }
53 else if (trtclus1){
59 else return (std::abs(pos1.z())<std::abs(pos2.z()));
60 }
61 return true;
62}
virtual TRT_BaseElement::Type type() const =0
Type information: returns BARREL or ENDCAP.
virtual const Amg::Vector3D & center() const override final
Element Surface: center of a straw layer.
const Amg::Vector3D & globalPosition() const
return global position reference
virtual const InDetDD::SiDetectorElement * detectorElement() const override final
return the detector element corresponding to this PRD The pointer will be zero if the det el is not d...
virtual const InDetDD::TRT_BaseElement * detectorElement() const override final
return the detector element corresponding to this PRD
Identifier identify() const
return the identifier
Eigen::Matrix< double, 3, 1 > Vector3D