35 std::ostringstream ost;
36 ost <<
"Validating configuration of module: class=" << moduleName
37 <<
" label='" << moduleLabel <<
"'";
46 std::ostringstream ost;
56 if (edmType != expected) {
58 <<
"The base type in the python configuration is " << expected <<
", but the base type\n"
59 <<
"for the module's C++ class is " << edmType <<
". "
60 <<
"Please fix the configuration.\n"
61 <<
"It must use the same base type as the C++ class.\n";
65 std::unique_ptr<Worker>
90 std::unique_ptr<Worker> worker;
T getParameter(std::string const &) const
ParameterSetID id() const
std::string const & moduleName() const
virtual const std::string & baseType() const =0
void swapModule(Worker *, ParameterSet const &)
std::string const & moduleLabel() const
void validateEDMType(std::string const &edmType, WorkerParams const &p) const
virtual void implSwapModule(Worker *, ParameterSet const &)=0
ModuleDescription createModuleDescription(WorkerParams const &p) const
void stdToEDM(std::exception const &e)
virtual void fillDescriptions(ConfigurationDescriptions &iDesc) const =0
void charPtrToEDM(char const *c)
void stringToEDM(std::string &s)
void throwConfigurationException(ModuleDescription const &md, signalslot::Signal< void(ModuleDescription const &)> &post, cms::Exception &iException) const
void addContext(std::string const &context)
std::unique_ptr< Worker > makeWorker(WorkerParams const &, signalslot::Signal< void(ModuleDescription const &)> &iPre, signalslot::Signal< void(ModuleDescription const &)> &iPost) const
boost::shared_ptr< ProcessConfiguration const > processConfiguration_
void validate(ParameterSet &pset, std::string const &moduleLabel) const
ParameterSet const & registerIt()
void throwValidationException(WorkerParams const &p, cms::Exception &iException) const