Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:15:09

0001 #ifndef Geometry_HGCalGeometry_CaloGeometryDBHGCal_h
0002 #define Geometry_HGCalGeometry_CaloGeometryDBHGCal_h
0003 
0004 #include "Geometry/CaloEventSetup/interface/CaloGeometryDBEP.h"
0005 #include "Geometry/HGCalGeometry/interface/HGCalGeometry.h"
0006 
0007 // Specializations for HGCal
0008 namespace calogeometryDBEPimpl {
0009   static constexpr auto nameHGCal = "HGCalEESensitive";
0010   template <>
0011   struct GeometryTraits<HGCalGeometry, true> {
0012     using TokenType = edm::ESGetToken<HGCalGeometry, IdealGeometryRecord>;
0013 
0014     static TokenType makeToken(edm::ESConsumesCollectorT<HGCalGeometry::AlignedRecord>& cc) {
0015       return cc.template consumesFrom<HGCalGeometry, IdealGeometryRecord>(edm::ESInputTag{"", nameHGCal});
0016     }
0017   };
0018   template <>
0019   struct AdditionalTokens<HGCalGeometry> {
0020     void makeTokens(edm::ESConsumesCollectorT<HGCalGeometry::AlignedRecord>& cc) {
0021       topology = cc.consumesFrom<HGCalTopology, IdealGeometryRecord>(edm::ESInputTag{"", nameHGCal});
0022     }
0023     edm::ESGetToken<HGCalTopology, IdealGeometryRecord> topology;
0024   };
0025 }  // namespace calogeometryDBEPimpl
0026 
0027 #endif