40 Here the configuration for an entire daq_application instance using DAQModules from hermesmodules is generated.
55 int(s.geo_id.stream_id > 63),
60 )
for s
in dro_map.streams
if s.kind ==
'eth'
64 hermes_cores =
group_by_key(tx_infos,
lambda x: (x[0], x[1], x[2], x[3]))
67 for (det, crate, slot, ctrl_ept), links
in hermes_cores.items():
68 d = hermescontroller.Device(name=f
"hermes_{det}_{crate}_{slot}", uri=f
"ipbusudp-2.0://{ctrl_ept}:50001", addrtab=addrtab)
69 g = hermescontroller.GeoInfo(det_id=det, crate_id=crate, slot_id=slot)
70 lm = hermescontroller.LinkConfMap(
71 [hermescontroller.LinkConf(
77 )
for _,_,_,_,link,tx_ip,tx_mac,rx_ip,rx_mac
in links]
80 modules += [DAQModule(name = f
"hermes_{det}_{crate}_{slot}",
81 plugin =
"HermesModule",
82 conf = hermescontroller.Conf(
90 mgraph = ModuleGraph(modules)
91 hermesmodules_app = App(modulegraph = mgraph, host = host, name = name)
93 return hermesmodules_app