Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:31:36

0001 // -*- C++ -*-
0002 //
0003 // Package:     TrackingTools/TrackAssociator
0004 // Class  :     CaloDetIdAssociatorMaker
0005 //
0006 // Implementation:
0007 //     [Notes on implementation]
0008 //
0009 // Original Author:  Christopher Jones
0010 //         Created:  Thu, 30 May 2019 15:05:57 GMT
0011 //
0012 
0013 // system include files
0014 
0015 // user include files
0016 #include "CaloDetIdAssociatorMaker.h"
0017 #include "Geometry/Records/interface/CaloGeometryRecord.h"
0018 #include "FWCore/Framework/interface/ESHandle.h"
0019 #include "TrackingTools/Records/interface/DetIdAssociatorRecord.h"
0020 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0021 #include "CaloDetIdAssociator.h"
0022 
0023 //
0024 // constants, enums and typedefs
0025 //
0026 
0027 //
0028 // static data member definitions
0029 //
0030 
0031 //
0032 // constructors and destructor
0033 //
0034 CaloDetIdAssociatorMaker::CaloDetIdAssociatorMaker(edm::ParameterSet const& pSet,
0035                                                    edm::ESConsumesCollectorT<DetIdAssociatorRecord>&& iCollector)
0036     : geomToken_{iCollector.consumesFrom<CaloGeometry, CaloGeometryRecord>()},
0037       etaBinSize{pSet.getParameter<double>("etaBinSize")},
0038       nPhi{pSet.getParameter<int>("nPhi")},
0039       nEta{pSet.getParameter<int>("nEta")} {}
0040 
0041 std::unique_ptr<DetIdAssociator> CaloDetIdAssociatorMaker::make(const DetIdAssociatorRecord& iRecord) const {
0042   return make(iRecord.get(geomToken_), nPhi, nEta, etaBinSize);
0043 }
0044 
0045 std::unique_ptr<DetIdAssociator> CaloDetIdAssociatorMaker::make(CaloGeometry const& iGeom,
0046                                                                 int nPhi,
0047                                                                 int nEta,
0048                                                                 double etaBinSize) const {
0049   return std::unique_ptr<DetIdAssociator>(new CaloDetIdAssociator(nPhi, nEta, etaBinSize, &iGeom));
0050 }