7 #include "cetlib/HorizontalRule.h" 18 : pathResults_{numPaths}
31 bool const trigResultsNeeded)
33 assert(!modInfos.empty());
34 std::vector<WorkerInPath> pathWorkers;
35 for (
auto const& mci : modInfos) {
40 constexpr cet::HorizontalRule rule{100};
41 std::ostringstream err_msg;
43 << rule(
'=') <<
"\n\n" 44 <<
"!! The following modules have been misconfigured: !!" 47 err_msg <<
"\n" << rule(
'-') <<
"\n" << err;
49 err_msg <<
"\n" << rule(
'=') <<
"\n\n";
56 auto const bit_position_for_new_path =
pathPtrs_.size();
57 auto path = std::make_unique<art::Path>(
58 bit_position_for_new_path,
60 std::move(pathWorkers),
64 is_observer(modInfos.front().moduleConfigInfo().moduleType()));
70 std::vector<WorkerInPath>& pathWorkers)
76 cet::exempt_ptr<art::Worker>
92 p.pset_.get<std::string>(
"module_type"),
93 p.pset_.get<std::string>(
"module_label"),
100 it->second->setActivityRegistry(&
areg_);
103 std::ostringstream err_stream;
104 err_stream <<
"\n\nModule label: " 112 return cet::exempt_ptr<Worker>{it->second.get()};
std::string bold_fontify(std::string const &s)
std::string const & configPath() const
void makeWorker_(detail::ModuleInPathInfo const &mipi, std::vector< WorkerInPath > &pathWorkers)
GlobalSignal< detail::SignalResponseType::FIFO, void(ModuleDescription const &)> sPreModuleConstruction
std::vector< BranchDescription > ProductDescriptions
GlobalSignal< detail::SignalResponseType::LIFO, void(ModuleDescription const &)> sPostModuleConstruction
fhicl::ParameterSet const & procPS_
std::vector< std::string > configErrMsgs_
ModuleConfigInfo const & moduleConfigInfo() const
std::vector< detail::ModuleInPathInfo > ModInfos
PathsInfo(std::size_t const numPaths, detail::ModuleFactory &factory, fhicl::ParameterSet const &procPS, MasterProductRegistry &preg, ProductDescriptions &productsToProduce, ActionTable &actions, ActivityRegistry &areg)
T get(std::string const &key) const
ActionTable & exceptActions_
ProductDescriptions & productsToProduce_
std::string const & getReleaseVersion()
detail::ModuleFactory & fact_
ParameterSetID id() const
ModuleDescriptionID id() const
bool is_observer(ModuleType mt)
cet::coded_exception< errors::ErrorCodes, ExceptionDetail::translate > Exception
std::unique_ptr< Worker > makeWorker(WorkerParams const &wp, ModuleDescription const &md)
void makeAndAppendPath(std::string const &pathName, ModInfos const &modInfos, bool trigResultsNeeded=true)
char const * what() const noexcept override
WorkerInPath::FilterAction filterAction() const
HLTGlobalStatus & pathResults()
HLTGlobalStatus pathResults_
std::string const & label() const
MasterProductRegistry & preg_