1 #ifndef FWCore_ParameterSet_ParameterSetDescriptionFiller_h 2 #define FWCore_ParameterSet_ParameterSetDescriptionFiller_h 25 #include <type_traits> 41 T::prevalidate(descriptions);
47 const T*
type =
nullptr;
60 namespace fillDetails {
65 template <
typename T,
void (*)(ConfigurationDescriptions&)>
74 static constexpr
bool value = std::is_same<decltype(has_fillDescriptions_helper<T>(
nullptr)),
yes_tag>
::value;
77 template <
typename T,
void (*)(ConfigurationDescriptions&)>
86 static constexpr
bool value = std::is_same<decltype(has_prevalidate_helper<T>(
nullptr)),
yes_tag>
::value;
100 template <
typename T>
103 T::prevalidate(descriptions);
112 template <
typename T>
120 fillDetails::fillIfExists<T>(descriptions);
136 template <
typename T>
146 fillDetails::fillIfExists<T>(descriptions);
147 fillDetails::prevalidateIfExists<T>(descriptions);
155 template <
typename T>
165 fillDetails::fillIfExists<T>(descriptions);
166 fillDetails::prevalidateIfExists<T>(descriptions);
174 template <
typename T>
184 fillDetails::fillIfExists<T>(descriptions);
185 fillDetails::prevalidateIfExists<T>(descriptions);
const std::string & extendedBaseType() const override
const std::string & extendedBaseType() const override
DescriptionFillerForESProducers()
static const std::string kEmpty
const std::string & baseType() const override
static const std::string kBaseForEDLooper
void prevalidate(ConfigurationDescriptions &descriptions)
DescriptionFillerForServices()
DescriptionFillerForESSources()
static const std::string kBaseForService
void fill(ConfigurationDescriptions &descriptions) const override
no_tag has_prevalidate_helper(...)
const std::string & extendedBaseType() const override
static constexpr bool value
DescriptionFillerForEDLoopers()
no_tag has_fillDescriptions_helper(...)
const DescriptionFillerForEDLoopers & operator=(const DescriptionFillerForEDLoopers &)=delete
void addDefault(ParameterSetDescription const &psetDescription)
const DescriptionFillerForESProducers & operator=(const DescriptionFillerForESProducers &)=delete
const std::string & baseType() const override
void fill(ConfigurationDescriptions &descriptions) const override
ParameterSetDescriptionFiller()
static const std::string kBaseForESProducer
const std::string & baseType() const override
const std::string & extendedBaseType() const override
void fillIfExists(ConfigurationDescriptions &descriptions)
void fill(ConfigurationDescriptions &descriptions) const override
const DescriptionFillerForESSources & operator=(const DescriptionFillerForESSources &)=delete
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
static constexpr bool value
static const std::string kBaseForESSource
const ParameterSetDescriptionFiller & operator=(const ParameterSetDescriptionFiller &)=delete
void fill(ConfigurationDescriptions &descriptions) const override
void prevalidateIfExists(ConfigurationDescriptions &descriptions)
virtual const std::string & extendedBaseType() const =0
const std::string & baseType() const override
const DescriptionFillerForServices & operator=(const DescriptionFillerForServices &)
void fill(ConfigurationDescriptions &descriptions) const override
const std::string & extendedBaseType() const override
const std::string & baseType() const override