1 #ifndef FWCore_Framework_SourceFactory_h
2 #define FWCore_Framework_SourceFactory_h
23 #include "boost/shared_ptr.hpp"
35 namespace eventsetup {
41 boost::shared_ptr<DataProxyProvider> pProvider(iComponent);
44 pProvider->setDescription(description);
45 iProvider.
add(pProvider);
55 static std::string
name();
60 addProviderTo(iProvider, iComponent, static_cast<const T*>(0));
61 boost::shared_ptr<EventSetupRecordIntervalFinder> pFinder(iComponent);
62 iProvider.
add(pFinder);
66 template<
class TType>
74 #define DEFINE_FWK_EVENTSETUP_SOURCE(type) \
75 DEFINE_EDM_PLUGIN (edm::eventsetup::SourcePluginFactory,edm::eventsetup::SourceMaker<type>,#type); \
76 DEFINE_DESC_FILLER_FOR_ESSOURCES(type)
static std::string name()
void add(boost::shared_ptr< DataProxyProvider >)
ComponentFactory< SourceMakerTraits > SourceFactory
EventSetupRecordIntervalFinder base_type
void addProviderTo(EventSetupProvider &iProvider, boost::shared_ptr< T > iComponent, const DataProxyProvider *)
static void addTo(EventSetupProvider &iProvider, boost::shared_ptr< T > iComponent)