00001 #ifndef CondTools_L1Trigger_L1CondDBIOVWriter_h 00002 #define CondTools_L1Trigger_L1CondDBIOVWriter_h 00003 // -*- C++ -*- 00004 // 00005 // Package: L1Trigger 00006 // Class : L1CondDBIOVWriter 00007 // 00016 // 00017 // Original Author: Werner Sun 00018 // Created: Sun Mar 2 20:10:36 CET 2008 00019 // $Id: L1CondDBIOVWriter.h,v 1.7 2011/05/10 19:16:53 wsun Exp $ 00020 // 00021 00022 // system include files 00023 #include <memory> 00024 00025 // user include files 00026 #include "FWCore/Framework/interface/Frameworkfwd.h" 00027 #include "FWCore/Framework/interface/EDAnalyzer.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 00034 #include "CondTools/L1Trigger/interface/DataWriter.h" 00035 00036 // forward declarations 00037 00038 class L1CondDBIOVWriter : public edm::EDAnalyzer { 00039 public: 00040 explicit L1CondDBIOVWriter(const edm::ParameterSet&); 00041 ~L1CondDBIOVWriter(); 00042 00043 00044 private: 00045 virtual void beginJob() ; 00046 virtual void analyze(const edm::Event&, const edm::EventSetup&); 00047 virtual void endJob() ; 00048 00049 // ----------member data --------------------------- 00050 l1t::DataWriter m_writer ; 00051 std::string m_tscKey ; 00052 00053 // List of record@type, used only for objects not tied to TSC key. 00054 // Otherwise, list of records comes from L1TriggerKey. 00055 std::vector< std::string > m_recordTypes ; 00056 00057 // When true, set IOVs for objects not tied to the TSC key. The records 00058 // and objects to be updated are given in the toPut parameter, and 00059 // m_tscKey is taken to be a common key for all the toPut objects, not 00060 // the TSC key. The IOV for L1TriggerKey is not updated when 00061 // m_ignoreTriggerKey = true. 00062 bool m_ignoreTriggerKey ; 00063 00064 bool m_logKeys ; 00065 00066 bool m_logTransactions ; 00067 00068 bool m_forceUpdate ; 00069 }; 00070 00071 00072 #endif