Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:22:17

0001 #ifndef L1GtConfigProducers_L1GtBoardMapsTrivialProducer_h
0002 #define L1GtConfigProducers_L1GtBoardMapsTrivialProducer_h
0003 
0004 /**
0005  * \class L1GtBoardMapsTrivialProducer
0006  *
0007  *
0008  * Description: ESProducer for mappings of the L1 GT boards.
0009  *
0010  * Implementation:
0011  *    <TODO: enter implementation details>
0012  *
0013  * \author: Vasile Mihai Ghete - HEPHY Vienna
0014  *
0015  *
0016  */
0017 
0018 // system include files
0019 #include <memory>
0020 
0021 #include <vector>
0022 
0023 // user include files
0024 //   base class
0025 #include "FWCore/Framework/interface/ESProducer.h"
0026 
0027 #include "CondFormats/L1TObjects/interface/L1GtBoard.h"
0028 #include "CondFormats/L1TObjects/interface/L1GtBoardMaps.h"
0029 #include "CondFormats/DataRecord/interface/L1GtBoardMapsRcd.h"
0030 
0031 // forward declarations
0032 
0033 // class declaration
0034 class L1GtBoardMapsTrivialProducer : public edm::ESProducer {
0035 public:
0036   /// constructor
0037   L1GtBoardMapsTrivialProducer(const edm::ParameterSet&);
0038 
0039   /// destructor
0040   ~L1GtBoardMapsTrivialProducer() override;
0041 
0042   /// public methods
0043 
0044   /// produce mappings of the L1 GT boards
0045   std::unique_ptr<L1GtBoardMaps> produceBoardMaps(const L1GtBoardMapsRcd&);
0046 
0047 private:
0048   /// L1 GT boards and their mapping
0049   std::vector<L1GtBoard> m_gtBoardMaps;
0050 };
0051 
0052 #endif