Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 #ifndef L1GtConfigProducers_L1GtVhdlWriter_h
0002 #define L1GtConfigProducers_L1GtVhdlWriter_h
0003 
0004 /**
0005  * \class L1GtVhdlWriter
0006  *
0007  *
0008  * Description: write VHDL templates for the L1 GT.
0009  *
0010  * Implementation:
0011  *    <TODO: enter implementation details>
0012  *
0013  * \author: Philipp Wagner
0014  *
0015  *
0016  */
0017 
0018 // system include files
0019 #include <string>
0020 
0021 // base class
0022 
0023 #include "FWCore/Framework/interface/one/EDAnalyzer.h"
0024 
0025 #include "FWCore/Framework/interface/Event.h"
0026 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0027 
0028 #include "FWCore/Framework/interface/EventSetup.h"
0029 #include "FWCore/Framework/interface/ESHandle.h"
0030 
0031 #include "CondFormats/L1TObjects/interface/L1GtTriggerMenu.h"
0032 #include "CondFormats/DataRecord/interface/L1GtTriggerMenuRcd.h"
0033 
0034 class Event;
0035 class EventSetup;
0036 class ParameterSet;
0037 
0038 // forward declarations
0039 
0040 // class declaration
0041 class L1GtVhdlWriter : public edm::one::EDAnalyzer<> {
0042 public:
0043   /// constructor
0044   explicit L1GtVhdlWriter(const edm::ParameterSet&);
0045 
0046   void analyze(const edm::Event&, const edm::EventSetup&) override;
0047 
0048 private:
0049   /// templates directory
0050   std::string vhdlDir_;
0051 
0052   /// output directory
0053   std::string outputDir_;
0054 
0055   edm::ESGetToken<L1GtTriggerMenu, L1GtTriggerMenuRcd> menuToken_;
0056 };
0057 #endif /*L1GtConfigProducers_L1GtVhdlWriter_h*/