Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 11:57:32

0001 #ifndef _CALOMISCALIBTOOLSMC_H
0002 #define _CALOMISCALIBTOOLSMC_H
0003 
0004 // -*- C++ -*-
0005 //
0006 // Package:    CaloMiscalibToolsMC
0007 // Class:      CaloMiscalibToolsMC
0008 //
0009 /**\class CaloMiscalibToolsMC CaloMiscalibToolsMC.cc CalibCalorimetry/CaloMiscalibToolsMC/src/CaloMiscalibToolsMC.cc
0010 
0011  Description: Definition of CaloMiscalibToolsMC
0012 
0013  Implementation:
0014      <Notes on implementation>
0015 */
0016 //
0017 // Original Author:  Lorenzo AGOSTINO
0018 //         Created:  Mon Jul 17 18:07:01 CEST 2006
0019 //
0020 // Modified       : Luca Malgeri
0021 // Date:          : 11/09/2006
0022 // Reason         : split class definition (.h) from source code (.cc)
0023 
0024 // system include files
0025 #include <memory>
0026 
0027 // user include files
0028 #include "FWCore/Framework/interface/SourceFactory.h"
0029 
0030 #include "FWCore/Framework/interface/Frameworkfwd.h"
0031 #include "FWCore/Framework/interface/ESProducer.h"
0032 
0033 #include "FWCore/Framework/interface/Event.h"
0034 #include "FWCore/Framework/interface/MakerMacros.h"
0035 
0036 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0037 
0038 #include "FWCore/Framework/interface/EventSetupRecordIntervalFinder.h"
0039 #include "FWCore/Framework/interface/EventSetup.h"
0040 #include "CondFormats/EcalObjects/interface/EcalIntercalibConstantsMC.h"
0041 #include "CondFormats/DataRecord/interface/EcalIntercalibConstantsMCRcd.h"
0042 #include "CalibCalorimetry/CaloMiscalibTools/interface/CaloMiscalibMapEcal.h"
0043 
0044 //
0045 // class decleration
0046 //
0047 
0048 class CaloMiscalibToolsMC : public edm::ESProducer, public edm::EventSetupRecordIntervalFinder {
0049 public:
0050   CaloMiscalibToolsMC(const edm::ParameterSet &);
0051   ~CaloMiscalibToolsMC() override;
0052 
0053   typedef std::unique_ptr<EcalIntercalibConstantsMC> ReturnType;
0054 
0055   ReturnType produce(const EcalIntercalibConstantsMCRcd &);
0056 
0057 private:
0058   // ----------member data ---------------------------
0059   void setIntervalFor(const edm::eventsetup::EventSetupRecordKey &,
0060                       const edm::IOVSyncValue &,
0061                       edm::ValidityInterval &) override;
0062 
0063   std::string barrelfile_;
0064   std::string endcapfile_;
0065   std::string barrelfileinpath_;
0066   std::string endcapfileinpath_;
0067 };
0068 
0069 #endif