CMS 3D CMS Logo

MuonRPCDetLayerGeometryBuilder.h
Go to the documentation of this file.
1 #ifndef MuonRPCDetLayerGeometryBuilder_h
2 #define MuonRPCDetLayerGeometryBuilder_h
3 
11 class DetLayer;
13 class MuRodBarrelLayer;
14 
15 
18 #include <vector>
19 
21  public:
24 
27 
30  static std::pair<std::vector<DetLayer*>, std::vector<DetLayer*> > buildEndcapLayers(const RPCGeometry& geo);
31 
33  static std::vector<DetLayer*> buildBarrelLayers(const RPCGeometry& geo);
34 
35  private:
36  static void makeBarrelLayers(std::vector<const GeomDet *> & geomDets,
37  std::vector<MuRodBarrelLayer*> & result);
38  static void makeBarrelRods(std::vector<const GeomDet *> & geomDets,
39  std::vector<const DetRod*> & result);
40  static bool isFront(const RPCDetId & rpcId);
41  static MuRingForwardDoubleLayer* buildLayer(int endcap,const std::vector<int>& rings, int station,int layer, std::vector<int>& rolls,const RPCGeometry& geo);
42 
43 };
44 #endif
45 
MuonRPCDetLayerGeometryBuilder()
Constructor (disabled, only static access is allowed)
static bool isFront(const RPCDetId &rpcId)
static void makeBarrelRods(std::vector< const GeomDet * > &geomDets, std::vector< const DetRod * > &result)
static void makeBarrelLayers(std::vector< const GeomDet * > &geomDets, std::vector< MuRodBarrelLayer * > &result)
static std::pair< std::vector< DetLayer * >, std::vector< DetLayer * > > buildEndcapLayers(const RPCGeometry &geo)
static MuRingForwardDoubleLayer * buildLayer(int endcap, const std::vector< int > &rings, int station, int layer, std::vector< int > &rolls, const RPCGeometry &geo)
static std::vector< DetLayer * > buildBarrelLayers(const RPCGeometry &geo)
Builds the barrel layers. Result vector is sorted inside-out.