24 theMiddleLayer(middle),
25 theInnerLayer(inner) {
42 bool seedfromoverlaps = ((
std::abs(radius1 - radius2) < 0.1) || (
std::abs(radius3 - radius2) < 0.1)) ?
true :
false;
43 std::vector<const TrackingRecHit *>::const_iterator ohh;
44 std::vector<const TrackingRecHit *>::const_iterator mhh;
45 std::vector<const TrackingRecHit *>::const_iterator ihh;
51 if (!seedfromoverlaps) {
56 float z_diff = mh->globalPosition().z() - oh->globalPosition().z();
57 float midy = mh->globalPosition().y();
58 float outy = oh->globalPosition().y();
59 float midx = mh->globalPosition().x();
60 float outx = oh->globalPosition().x();
61 float dxdy =
std::abs((outx - midx) / (outy - midy));
62 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)) {
81 float z_diff = mh->globalPosition().z() - oh->globalPosition().z();
82 float midy = mh->globalPosition().y();
83 float outy = oh->globalPosition().y();
84 float midx = mh->globalPosition().x();
85 float outx = oh->globalPosition().x();
86 float dxdy =
std::abs((outx - midx) / (outy - midy));
87 float DeltaR = oh->globalPosition().perp() - mh->globalPosition().perp();
88 if ((
std::abs(z_diff) < 18) && (
std::abs(oh->globalPosition().phi() - mh->globalPosition().phi()) < 0.05) &&
89 (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 TrackerGeometry * trackerGeometry
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)