32 std::ostringstream ost;
33 ost <<
"Validating configuration of module: class=" << moduleName <<
" label='" << moduleLabel <<
"'";
39 std::ostringstream ost;
47 if (edmType != expected) {
49 <<
"The base type in the python configuration is " << expected <<
", but the base type\n" 50 <<
"for the module's C++ class is " << edmType <<
". " 51 <<
"Please fix the configuration.\n" 52 <<
"It must use the same base type as the C++ class.\n";
80 std::shared_ptr<maker::ModuleHolder>
module;
81 bool postCalled =
false;
86 module->setModuleDescription(md);
88 module->registerProductsAndCallbacks(p.
reg_);
virtual ModuleDescription const & moduleDescription() const =0
T getParameter(std::string const &) const
roAction_t actions[nactions]
void throwConfigurationException(ModuleDescription const &md, cms::Exception &iException) const
ParameterSetID id() const
std::string const & moduleName() const
std::string const & moduleLabel() const
static unsigned int getUniqueID()
Returns a unique id each time called. Intended to be passed to ModuleDescription's constructor's modI...
std::unique_ptr< Worker > makeWorker(ExceptionToActionTable const *, maker::ModuleHolder const *) const
std::string moduleName(Provenance const &provenance)
bool insertMapped(value_type const &v, bool forceUpdate=false)
void validateEDMType(std::string const &edmType, MakeModuleParams const &p) const
virtual void fillDescriptions(ConfigurationDescriptions &iDesc) const =0
void addContext(std::string const &context)
virtual const std::string & baseType() const =0
std::shared_ptr< maker::ModuleHolder > makeModule(MakeModuleParams const &, signalslot::Signal< void(ModuleDescription const &)> &iPre, signalslot::Signal< void(ModuleDescription const &)> &iPost) const
ModuleDescription createModuleDescription(MakeModuleParams const &p) const
auto wrap(F iFunc) -> decltype(iFunc())
void validate(ParameterSet &pset, std::string const &moduleLabel) const
PreallocationConfiguration const * preallocate_
T mod(const T &a, const T &b)
ParameterSet const & registerIt()
static Registry * instance()
std::shared_ptr< ProcessConfiguration const > processConfiguration_
void throwValidationException(MakeModuleParams const &p, cms::Exception &iException) const