00001 // -*- C++ -*- 00002 // 00003 // Package: L1TriggerConfigOnlineProd 00004 // Class: L1TriggerConfigOnlineProd 00005 // 00013 // 00014 // Original Author: Werner Man-Li Sun 00015 // Created: Sat Mar 1 05:02:13 CET 2008 00016 // $Id: L1TriggerConfigOnlineProd.cc,v 1.5 2008/07/08 14:42:40 wsun Exp $ 00017 // 00018 // 00019 00020 00021 // system include files 00022 00023 // user include files 00024 #include "CondTools/L1Trigger/plugins/L1TriggerConfigOnlineProd.h" 00025 00026 // #include "FWCore/Framework/interface/HCTypeTagTemplate.h" 00027 // #include "FWCore/Framework/interface/EventSetup.h" 00028 00029 // 00030 // class declaration 00031 // 00032 00033 // 00034 // constants, enums and typedefs 00035 // 00036 00037 // 00038 // static data member definitions 00039 // 00040 00041 // 00042 // constructors and destructor 00043 // 00044 L1TriggerConfigOnlineProd::L1TriggerConfigOnlineProd(const edm::ParameterSet& iConfig) 00045 : m_omdsReader( iConfig.getParameter< std::string >( "onlineDB" ), 00046 iConfig.getParameter< std::string >( "onlineAuthentication" ) 00047 ), 00048 m_forceGeneration( iConfig.getParameter< bool >( "forceGeneration") ) 00049 { 00050 //the following line is needed to tell the framework what 00051 // data is being produced 00052 setWhatProduced( this, &L1TriggerConfigOnlineProd::produceL1RCTParameters ) ; 00053 setWhatProduced( this, &L1TriggerConfigOnlineProd::produceL1RPCConfig ) ; 00054 00055 //now do what ever other initialization is needed 00056 } 00057 00058 00059 L1TriggerConfigOnlineProd::~L1TriggerConfigOnlineProd() 00060 { 00061 00062 // do anything here that needs to be done at desctruction time 00063 // (e.g. close files, deallocate resources etc.) 00064 00065 } 00066 00067 00068 // 00069 // member functions 00070 // 00071 00072 // ------------ method called to produce the data ------------ 00073 00074 // // Skeleton for produce functions 00075 // boost::shared_ptr< TData > 00076 // L1TriggerConfigOnlineProd::produce( const TRcd& iRecord ) 00077 // { 00078 // using namespace edm::es; 00079 // boost::shared_ptr< TData > pData ; 00080 00081 // // Get subsystem key and check if already in ORCON 00082 // std::string key ; 00083 // if( getSubsystemKey( iRecord, pData, key ) || 00084 // m_forceGeneration ) 00085 // { 00086 // // Key not in ORCON -- get data from OMDS and make C++ object 00087 // } 00088 // else 00089 // { 00090 // throw l1t::DataAlreadyPresentException( 00091 // "TData for key " + key + " already in CondDB." ) ; 00092 // } 00093 00094 // return pData ; 00095 // } 00096 00097 //define this as a plug-in 00098 //DEFINE_FWK_EVENTSETUP_MODULE(L1TriggerConfigOnlineProd);