00001 #ifndef FWCore_Framework_ModuleChanger_h 00002 #define FWCore_Framework_ModuleChanger_h 00003 // -*- C++ -*- 00004 // 00005 // Package: Framework 00006 // Class : ModuleChanger 00007 // 00017 // 00018 // Original Author: Chris Jones 00019 // Created: Thu Jul 15 15:05:17 EDT 2010 00020 // $Id: ModuleChanger.h,v 1.1 2010/07/22 15:00:27 chrjones Exp $ 00021 // 00022 00023 // system include files 00024 #include <string> 00025 00026 // user include files 00027 00028 // forward declarations 00029 00030 namespace edm { 00031 class ParameterSet; 00032 class Schedule; 00033 00034 class ModuleChanger { 00035 00036 public: 00037 ModuleChanger(Schedule*); 00038 virtual ~ModuleChanger(); 00039 00040 // ---------- const member functions --------------------- 00041 bool changeModule(const std::string& iLabel, 00042 const ParameterSet& iPSet) const; 00043 00044 // ---------- static member functions -------------------- 00045 00046 // ---------- member functions --------------------------- 00047 00048 private: 00049 ModuleChanger(const ModuleChanger&); // stop default 00050 00051 const ModuleChanger& operator=(const ModuleChanger&); // stop default 00052 00053 // ---------- member data -------------------------------- 00054 Schedule* schedule_; 00055 }; 00056 } 00057 #endif