21 : TTRHbuilder(
nullptr),trackerGeometry(
nullptr),
23 theOuterLayer(outer),theMiddleLayer(middle), theInnerLayer(inner)
28 trackerGeometry = tracker.
product();
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
CosmicHitTripletGeneratorFromLayerTriplet(const LayerWithHits *inner, const LayerWithHits *middle, const LayerWithHits *outer, const edm::EventSetup &iSetup)
const LayerWithHits * theMiddleLayer
TransientTrackingRecHit::ConstRecHitPointer TkHitPairsCachedHit
std::shared_ptr< TrackingRecHit const > ConstRecHitPointer
Abs< T >::type abs(const T &t)
const LayerWithHits * theInnerLayer
T const * product() const
const std::vector< const TrackingRecHit * > & recHits() const
return the recHits of the Layer
const LayerWithHits * theOuterLayer
void hitTriplets(const TrackingRegion &ar, OrderedHitTriplets &ap, const edm::EventSetup &iSetup)