00001 #include "CondCore/PopCon/interface/PopConAnalyzer.h" 00002 #include "CondTools/Hcal/interface/HcalL1TriggerObjectsHandler.h" 00003 #include "FWCore/Framework/interface/MakerMacros.h" 00004 00005 //typedef popcon::PopConAnalyzer<HcalL1TriggerObjectsHandler> HcalL1TriggerObjectsPopConAnalyzer; 00006 00007 class HcalL1TriggerObjectsPopConAnalyzer: public popcon::PopConAnalyzer<HcalL1TriggerObjectsHandler> 00008 { 00009 public: 00010 typedef HcalL1TriggerObjectsHandler SourceHandler; 00011 00012 HcalL1TriggerObjectsPopConAnalyzer(const edm::ParameterSet& pset): 00013 popcon::PopConAnalyzer<HcalL1TriggerObjectsHandler>(pset), 00014 m_populator(pset), 00015 m_source(pset.getParameter<edm::ParameterSet>("Source")) {} 00016 00017 private: 00018 virtual void endJob() 00019 { 00020 m_source.initObject(myDBObject); 00021 write(); 00022 } 00023 00024 virtual void analyze(const edm::Event& ev, const edm::EventSetup& esetup) 00025 { 00026 //Using ES to get the data: 00027 00028 edm::ESHandle<HcalL1TriggerObjects> objecthandle; 00029 esetup.get<HcalL1TriggerObjectsRcd>().get(objecthandle); 00030 myDBObject = new HcalL1TriggerObjects(*objecthandle.product() ); 00031 } 00032 00033 void write() { m_populator.write(m_source); } 00034 00035 private: 00036 popcon::PopCon m_populator; 00037 SourceHandler m_source; 00038 00039 HcalL1TriggerObjects* myDBObject; 00040 }; 00041 00042 DEFINE_FWK_MODULE(HcalL1TriggerObjectsPopConAnalyzer);