35std::vector<const confmodel::DaqModule*>
40 std::vector<const confmodel::DaqModule*> modules;
42 std::map<std::string, std::vector<const appmodel::TdeAmcDetDataSender*>> ctrlhost_sender_map;
46 if (d2d_conn_res->disabled(*
session)) {
47 TLOG_DEBUG(7) <<
"Ignoring disabled DetectorToDaqConnection " << d2d_conn_res->UID();
51 TLOG_DEBUG(6) <<
"Processing DetectorToDaqConnection " << d2d_conn_res->UID();
56 throw(BadConf(
ERS_HERE,
"ReadoutApplication contains something other than DetectorToDaqConnection"));
59 if (d2d_conn->get_contains().empty()) {
60 throw(BadConf(
ERS_HERE,
"DetectorToDaqConnection does not contain senders or receivers"));
66 for (
const auto* sender : det_senders) {
68 if ( sender->disabled(*
session) ) {
69 TLOG() <<
"Skipping disabled sender: " << sender->UID();
76 throw(BadConf(
ERS_HERE, fmt::format(
"DataSender {} is not a appmodel::TdeAmcDetDataSender", sender->UID())));
79 ctrlhost_sender_map[tde_sender->get_control_host()].push_back(tde_sender);
82 for(
const auto& [ctrlhost, senders] : ctrlhost_sender_map ) {
const T * get_dal(std::string uid) const
conffwk::ConfigObject create(const std::string &class_name, const std::string &id) const
std::vector< const dunedaq::confmodel::DaqModule * > generate_modules(const confmodel::Session *) const override
const dunedaq::appmodel::TDEAMCModuleConf * get_tde_amc_module_conf() const
Get "tde_amc_module_conf" relationship value.
void set_obj(const std::string &name, const ConfigObject *o, bool skip_non_null_check=false)
Set relationship single-value.
const ConfigObject & config_object() const
const std::string & UID() const noexcept
std::vector< const confmodel::DetDataSender * > get_senders() const
const std::vector< const dunedaq::confmodel::ResourceBase * > & get_contains() const
Get "contains" relationship value. A resource set is a container of resources to easily implement gro...
#define TLOG_DEBUG(lvl,...)