CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_0/src/FWCore/ParameterSet/interface/ParameterSetDescriptionFillerPluginFactory.h

Go to the documentation of this file.
00001 #ifndef FWCore_ParameterSet_ParameterSetDescriptionFillerPluginFactory_h
00002 #define FWCore_ParameterSet_ParameterSetDescriptionFillerPluginFactory_h
00003 // -*- C++ -*-
00004 //
00005 // Package:     ParameterSet
00006 // Class  :     ParameterSetDescriptionFillerPluginFactory
00007 // 
00016 //
00017 // Original Author:  Chris Jones
00018 //         Created:  Wed Aug  1 16:47:01 EDT 2007
00019 //
00020 
00021 // system include files
00022 
00023 // user include files
00024 #include "FWCore/PluginManager/interface/PluginFactory.h"
00025 #include "FWCore/ParameterSet/interface/ParameterSetDescriptionFiller.h"
00026 
00027 // forward declarations
00028 
00029 namespace edm {
00030   typedef edmplugin::PluginFactory<ParameterSetDescriptionFillerBase*(void)> ParameterSetDescriptionFillerPluginFactory;
00031 }
00032 
00033 #define DEFINE_FWK_PSET_DESC_FILLER(type) \
00034 static edm::ParameterSetDescriptionFillerPluginFactory::PMaker<edm::ParameterSetDescriptionFiller<type > > EDM_PLUGIN_SYM(s_filler , __LINE__ ) (#type)
00035 //NOTE: Can't do the below since this appears on the same line as another factory and w'ed have two variables with the same name
00036 //DEFINE_EDM_PLUGIN (edm::ParameterSetDescriptionFillerPluginFactory,type,#type)
00037 
00038 // Define another analogous macro to handle the special case of services.
00039 
00040 #define DEFINE_DESC_FILLER_FOR_SERVICES(pluginName, serviceType)                \
00041 static edm::ParameterSetDescriptionFillerPluginFactory::PMaker<edm::DescriptionFillerForServices<serviceType > > EDM_PLUGIN_SYM(s_filler , __LINE__ ) (#pluginName)
00042 
00043 #define DEFINE_DESC_FILLER_FOR_ESSOURCES(type) \
00044 static edm::ParameterSetDescriptionFillerPluginFactory::PMaker<edm::DescriptionFillerForESSources<type > > EDM_PLUGIN_SYM(s_filler , __LINE__ ) (#type)
00045 
00046 #define DEFINE_DESC_FILLER_FOR_ESPRODUCERS(type) \
00047 static edm::ParameterSetDescriptionFillerPluginFactory::PMaker<edm::DescriptionFillerForESProducers<type > > EDM_PLUGIN_SYM(s_filler , __LINE__ ) (#type)
00048 
00049 #endif