Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:14:41

0001 #ifndef Geometry_GEMGeometry_GEMGeometryBuilderFromCondDB_H
0002 #define Geometry_GEMGeometry_GEMGeometryBuilderFromCondDB_H
0003 
0004 /** \class  GEMGeometryBuilderFromCondDB
0005  *  Build the GEMGeometry from the RecoIdealGeometry description stored in Condition DB 
0006  *
0007  *  \author M. Maggi - INFN Bari
0008  *
0009  */
0010 
0011 #include "CondFormats/GeometryObjects/interface/RecoIdealGeometry.h"
0012 #include "Geometry/GEMGeometry/interface/GEMGeometry.h"
0013 
0014 class GEMGeometryBuilderFromCondDB {
0015 public:
0016   GEMGeometryBuilderFromCondDB();
0017 
0018   ~GEMGeometryBuilderFromCondDB();
0019 
0020   void build(GEMGeometry& theGeometry, const RecoIdealGeometry& rgeo);
0021 
0022 private:
0023   typedef ReferenceCountingPointer<BoundPlane> RCPBoundPlane;
0024 
0025   GEMSuperChamber* buildSuperChamber(const RecoIdealGeometry& rgeo, unsigned int gid, GEMDetId detId) const;
0026 
0027   GEMChamber* buildChamber(const RecoIdealGeometry& rgeo, unsigned int gid, GEMDetId detId) const;
0028 
0029   GEMEtaPartition* buildEtaPartition(const RecoIdealGeometry& rgeo, unsigned int gid, GEMDetId detId) const;
0030 
0031   RCPBoundPlane boundPlane(const RecoIdealGeometry& rgeo, unsigned int gid, GEMDetId detId) const;
0032 };
0033 
0034 #endif