41 bool seedfromoverlaps=((
std::abs(radius1-radius2)<0.1)|| (
std::abs(radius3-radius2)<0.1))?
true :
false;
42 std::vector<const TrackingRecHit*>::const_iterator ohh;
43 std::vector<const TrackingRecHit*>::const_iterator mhh;
44 std::vector<const TrackingRecHit*>::const_iterator ihh;
50 if(!seedfromoverlaps){
55 float z_diff =mh->globalPosition().z()-oh->globalPosition().z();
56 float midy=mh->globalPosition().y();
57 float outy=oh->globalPosition().y();
58 float midx=mh->globalPosition().x();
59 float outx=oh->globalPosition().x();
60 float dxdy=
std::abs((outx-midx)/(outy-midy));
61 if((
std::abs(z_diff)<30) && (outy*midy>0) &&(dxdy<2))
65 float z_diff =mh->globalPosition().z()-ih->globalPosition().z();
66 float inny=ih->globalPosition().y();
67 float innx=ih->globalPosition().x();
68 float dxdy=
std::abs((innx-midx)/(inny-midy));
69 if ((
std::abs(z_diff)<30) && (inny*midy>0) &&(dxdy<2)&&(!seedfromoverlaps))
82 float z_diff =mh->globalPosition().z()-oh->globalPosition().z();
83 float midy=mh->globalPosition().y();
84 float outy=oh->globalPosition().y();
85 float midx=mh->globalPosition().x();
86 float outx=oh->globalPosition().x();
87 float dxdy=
std::abs((outx-midx)/(outy-midy));
88 float DeltaR=oh->globalPosition().perp()-mh->globalPosition().perp();
89 if((
std::abs(z_diff)<18) && (
std::abs(oh->globalPosition().phi()-mh->globalPosition().phi())<0.05) &&(DeltaR<0)&&(dxdy<2)){
92 float z_diff =mh->globalPosition().z()-ih->globalPosition().z();
93 float inny=ih->globalPosition().y();
94 float innx=ih->globalPosition().x();
95 float dxdy=
std::abs((innx-midx)/(inny-midy));
96 if ((
std::abs(z_diff)<30) && (inny*midy>0) &&(dxdy<2))
const DetLayer * layer() const
const LayerWithHits * theMiddleLayer
const LayerWithHits * theInnerLayer
const std::vector< const TrackingRecHit * > & recHits() const
return the recHits of the Layer
const LayerWithHits * theOuterLayer