13 using namespace GeomDetEnumerators;
28 vector<BarrelDetLayer const*> barrelLayers=track->barrelLayers();
29 vector<BarrelDetLayer const*>::const_iterator
ib;
30 vector<ForwardDetLayer const*> forwardPosLayers=track->posForwardLayers();
31 vector<ForwardDetLayer const*> forwardNegLayers=track->negForwardLayers();
32 vector<ForwardDetLayer const*>::const_iterator ie;
34 for (ib = barrelLayers.begin(); ib != barrelLayers.end(); ib++)
35 theLayers.push_back(*ib);
38 for (ie = forwardPosLayers.begin(); ie != forwardPosLayers.end(); ie++)
39 theLayers.push_back(*ie);
40 for (ie = forwardNegLayers.begin(); ie != forwardNegLayers.end(); ie++)
41 theLayers.push_back(*ie);
49 vector<const DetLayer*>::const_iterator il;
50 for (il=theLayers.begin();il!=theLayers.end();il++) result.push_back(
MSLayer(*il));
59 float r=1;
float dirZ = r*sinh(eta);
65 vector<const DetLayer*>::const_iterator il;
67 for (il = theLayers.begin(); il != theLayers.end(); il++) {
71 if ( (*il)->location() ==
barrel ) {
86 else if ((*il)->location() ==
endcap) {
89 if (fl->
position().
z() * eta < 0)
continue;
91 tsos = propagator.propagate(fts, disk);
93 float zMin = disk.position().z()-disk.bounds().thickness()/2;
94 float zMax = disk.position().z()+disk.bounds().thickness()/2;
101 if (contains) result.push_back(
MSLayer(*il));
116 result.push_back(beampipe);
122 if (0 < endfPoint.
r() && endfPoint.
r() < supportR) {
124 result.push_back(endflanges);
129 result.push_back(support);
static const float endflangesZ
bool contains(EventRange const &lh, EventID const &rh)
std::vector< MSLayer > otherLayers(float eta, const edm::EventSetup &iSetup) const
GlobalPoint globalPosition() const
static const float supportR
static const float beamPipeR
std::vector< MSLayer > detLayers(float eta, float z, const edm::EventSetup &iSetup) const
virtual const Surface::PositionType & position() const
Returns position of the surface.
bool inside(const T &value) const
virtual const BoundDisk & specificSurface() const GCC11_FINAL
tuple StraightLinePropagator
PixelRecoRange< float > Range
virtual const BoundCylinder & specificSurface() const GCC11_FINAL
Extension of the interface.
MultipleScatteringGeometry(const edm::EventSetup &iSetup)