Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 // -*- C++ -*-
0002 //
0003 // Package:    CaloTopologyBuilder
0004 // Class:      CaloTopologyBuilder
0005 //
0006 /**\class CaloTopologyBuilder CaloTopologyBuilder.h 
0007 
0008  Description: <one line class summary>
0009 
0010  Implementation:
0011      <Notes on implementation>
0012 */
0013 //
0014 // Original Author:  Paolo Meridiani
0015 //
0016 //
0017 
0018 // system include files
0019 #include <memory>
0020 
0021 // user include files
0022 #include "FWCore/Framework/interface/ESProducer.h"
0023 
0024 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0025 #include "FWCore/Utilities/interface/ESGetToken.h"
0026 #include "Geometry/Records/interface/CaloTopologyRecord.h"
0027 #include "Geometry/CaloGeometry/interface/CaloGeometry.h"
0028 #include "Geometry/CaloTopology/interface/CaloTopology.h"
0029 
0030 //
0031 // class decleration
0032 //
0033 
0034 class CaloTopologyBuilder : public edm::ESProducer {
0035 public:
0036   CaloTopologyBuilder(const edm::ParameterSet& iP);
0037   ~CaloTopologyBuilder() override;
0038 
0039   using ReturnType = std::unique_ptr<CaloTopology>;
0040 
0041   ReturnType produceCalo(const CaloTopologyRecord&);
0042 
0043 private:
0044   // ----------member data ---------------------------
0045   edm::ESGetToken<CaloGeometry, CaloGeometryRecord> geometryToken_;
0046 };