00001 #ifndef DTTPGConfigProducers_DTConfigTrivialProducer_h 00002 #define DTTPGConfigProducers_DTConfigTrivialProducer_h 00003 00004 // -*- C++ -*- 00005 // 00006 // Package: DTTPGConfigProducers 00007 // Class: DTConfigTrivialProducer 00008 // 00016 // 00017 // Original Author: Sara Vanini 00018 // Created: March 2007 00019 // 00020 // 00021 00022 00023 // system include files 00024 #include <memory> 00025 #include <boost/shared_ptr.hpp> 00026 #include <vector> 00027 00028 // user include files 00029 #include "FWCore/Framework/interface/ModuleFactory.h" 00030 #include "FWCore/Framework/interface/ESProducer.h" 00031 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00032 00033 #include "FWCore/Framework/interface/ESHandle.h" 00034 00035 #include "L1TriggerConfig/DTTPGConfig/interface/DTConfigManager.h" 00036 #include "L1TriggerConfig/DTTPGConfig/interface/DTConfigManagerRcd.h" 00037 00038 // 00039 // class declaration 00040 // 00041 00042 class DTConfigTrivialProducer : public edm::ESProducer { 00043 public: 00044 00046 DTConfigTrivialProducer(const edm::ParameterSet&); 00047 00049 ~DTConfigTrivialProducer(); 00050 00052 std::auto_ptr<DTConfigManager> produce(const DTConfigManagerRcd&); 00053 00054 private: 00055 00057 void buildManager(); 00058 00060 DTConfigPedestals buildTrivialPedestals(); 00061 00062 std::string mapEntryName(const DTChamberId & chambid) const; 00063 00064 bool m_debug; 00065 edm::ParameterSet m_ps; 00066 DTConfigManager* m_manager; 00067 DTTPGParameters* m_tpgParams; 00068 00069 }; 00070 00071 #endif