CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_4_5_patch3/src/EventFilter/L1GlobalTriggerRawToDigi/interface/L1GtTriggerMenuLiteProducer.h

Go to the documentation of this file.
00001 #ifndef EventFilter_L1GlobalTriggerRawToDigi_L1GtTriggerMenuLiteProducer_h
00002 #define EventFilter_L1GlobalTriggerRawToDigi_L1GtTriggerMenuLiteProducer_h
00003 
00022 // system include files
00023 #include <memory>
00024 
00025 // user include files
00026 #include "FWCore/Framework/interface/Frameworkfwd.h"
00027 #include "FWCore/Framework/interface/EDProducer.h"
00028 
00029 #include "FWCore/Framework/interface/Event.h"
00030 #include "FWCore/Framework/interface/MakerMacros.h"
00031 
00032 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00033 #include "FWCore/Utilities/interface/InputTag.h"
00034 
00035 #include "CondFormats/L1TObjects/interface/L1GtTriggerMenuFwd.h"
00036 
00037 // forward declarations
00038 class L1GtStableParameters;
00039 class L1GtTriggerMenu;
00040 class L1GtTriggerMask;
00041 class L1GtPrescaleFactors;
00042 
00043 // class declaration
00044 class L1GtTriggerMenuLiteProducer : public edm::EDProducer
00045 {
00046 
00047 public:
00048 
00050     explicit L1GtTriggerMenuLiteProducer(const edm::ParameterSet&);
00051 
00053     virtual ~L1GtTriggerMenuLiteProducer();
00054 
00055 private:
00056 
00059     void retrieveL1EventSetup(const edm::EventSetup&);
00060 
00061     virtual void beginJob();
00062     void beginRun(edm::Run&, const edm::EventSetup&);
00063 
00064     virtual void produce(edm::Event&, const edm::EventSetup&);
00065 
00066     void endRun(edm::Run&, const edm::EventSetup&);
00067     virtual void endJob();
00068 
00069 private:
00070     
00072 
00074     const L1GtStableParameters* m_l1GtStablePar;
00075     unsigned long long m_l1GtStableParCacheID;
00076 
00078     unsigned int m_numberPhysTriggers;
00079 
00081     unsigned int m_numberTechnicalTriggers;
00082 
00083     // trigger menu
00084     const L1GtTriggerMenu* m_l1GtMenu;
00085     unsigned long long m_l1GtMenuCacheID;
00086 
00087     const AlgorithmMap* m_algorithmMap;
00088     const AlgorithmMap* m_algorithmAliasMap;
00089     const AlgorithmMap* m_technicalTriggerMap;
00090 
00092     const L1GtTriggerMask* m_l1GtTmAlgo;
00093     unsigned long long m_l1GtTmAlgoCacheID;
00094  
00095     const L1GtTriggerMask* m_l1GtTmTech;
00096     unsigned long long m_l1GtTmTechCacheID;
00097     
00098     const std::vector<unsigned int>* m_triggerMaskAlgoTrig;
00099     const std::vector<unsigned int>* m_triggerMaskTechTrig;
00100 
00102     const L1GtPrescaleFactors* m_l1GtPfAlgo;
00103     unsigned long long m_l1GtPfAlgoCacheID;
00104 
00105     const L1GtPrescaleFactors* m_l1GtPfTech;
00106     unsigned long long m_l1GtPfTechCacheID;
00107 
00108     const std::vector<std::vector<int> >* m_prescaleFactorsAlgoTrig;
00109     const std::vector<std::vector<int> >* m_prescaleFactorsTechTrig;
00110 
00111 private:
00112 
00114     unsigned int m_physicsDaqPartition;
00115 
00116 };
00117 
00118 #endif // EventFilter_L1GlobalTriggerRawToDigi_L1GtTriggerMenuLiteProducer_h