13 using namespace GeomDetEnumerators;
28 vector<BarrelDetLayer*> barrelLayers=track->barrelLayers();
29 vector<BarrelDetLayer*>::const_iterator ib;
30 vector<ForwardDetLayer*> forwardPosLayers=track->posForwardLayers();
31 vector<ForwardDetLayer*> forwardNegLayers=track->negForwardLayers();
32 vector<ForwardDetLayer*>::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;
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
virtual float length() const =0
bool contains(EventRange const &lh, EventID const &rh)
virtual TSOS propagate(const FreeTrajectoryState &fts, const Surface &surface) const
std::vector< MSLayer > otherLayers(float eta, const edm::EventSetup &iSetup) const
GlobalPoint globalPosition() const
virtual float thickness() const =0
static const float supportR
Scalar radius() const
Radius of the cylinder.
virtual const BoundDisk & specificSurface() const
static const float beamPipeR
std::vector< MSLayer > detLayers(float eta, float z, const edm::EventSetup &iSetup) const
const Bounds & bounds() const
virtual const Surface::PositionType & position() const
Returns position of the surface.
bool inside(const T &value) const
virtual const BoundCylinder & specificSurface() const
Extension of the interface.
float outerRadius() const
The outer radius of the disk.
float innerRadius() const
The inner radius of the disk.
PixelRecoRange< float > Range
const PositionType & position() const
MultipleScatteringGeometry(const edm::EventSetup &iSetup)