AcquisitionDevice: IPv4 address and UDP destination port is property of the device and not of a particular run
This commit is contained in:
@@ -912,7 +912,7 @@ DiffractionExperiment::operator JFJochProtoBuf::DetectorInput() const {
|
||||
|
||||
JFJochProtoBuf::DetectorConfig DiffractionExperiment::DetectorConfig(const JFJochProtoBuf::ReceiverNetworkConfig &net_config) const {
|
||||
JFJochProtoBuf::DetectorConfig ret;
|
||||
if (net_config.fpga_mac_addr_size() < GetDataStreamsNum())
|
||||
if (net_config.device_size() < GetDataStreamsNum())
|
||||
throw JFJochException(JFJochExceptionCategory::ArrayOutOfBounds,
|
||||
"Number of FPGA boards in the receiver is less then necessary");
|
||||
|
||||
@@ -924,16 +924,17 @@ JFJochProtoBuf::DetectorConfig DiffractionExperiment::DetectorConfig(const JFJoc
|
||||
*ret.mutable_module_hostname() = internal.detector().module_hostname();
|
||||
|
||||
for (int d = 0; d < GetDataStreamsNum(); d++) {
|
||||
for (int module = 0; module < GetModulesNum(d); module++) {
|
||||
for (int m = 0; m < GetModulesNum(d); m++) {
|
||||
auto mod_cfg = ret.add_modules();
|
||||
mod_cfg->set_udp_dest_port_1(GetDestUDPPort(d, 2 * module));
|
||||
mod_cfg->set_udp_dest_port_2(GetDestUDPPort(d, 2 * module + 1));
|
||||
mod_cfg->set_ipv4_src_addr_1(IPv4AddressToStr(GetSrcIPv4Address(d, 2 * module)));
|
||||
mod_cfg->set_ipv4_src_addr_2(IPv4AddressToStr(GetSrcIPv4Address(d, 2 * module + 1)));
|
||||
mod_cfg->set_ipv4_dest_addr_1(IPv4AddressToStr(GetDestIPv4Address(d)));
|
||||
mod_cfg->set_ipv4_dest_addr_2(IPv4AddressToStr(GetDestIPv4Address(d)));
|
||||
mod_cfg->set_mac_addr_dest_1(net_config.fpga_mac_addr(d));
|
||||
mod_cfg->set_mac_addr_dest_2(net_config.fpga_mac_addr(d));
|
||||
mod_cfg->set_udp_dest_port_1(net_config.device(d).udp_port());
|
||||
mod_cfg->set_udp_dest_port_2(net_config.device(d).udp_port());
|
||||
mod_cfg->set_ipv4_src_addr_1(IPv4AddressToStr(GetSrcIPv4Address(d, 2 * m)));
|
||||
mod_cfg->set_ipv4_src_addr_2(IPv4AddressToStr(GetSrcIPv4Address(d, 2 * m + 1)));
|
||||
mod_cfg->set_ipv4_dest_addr_1(net_config.device(d).ipv4_addr());
|
||||
mod_cfg->set_ipv4_dest_addr_2(net_config.device(d).ipv4_addr());
|
||||
mod_cfg->set_mac_addr_dest_1(net_config.device(d).mac_addr());
|
||||
mod_cfg->set_mac_addr_dest_2(net_config.device(d).mac_addr());
|
||||
mod_cfg->set_module_id_in_data_stream(m);
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
|
||||
Reference in New Issue
Block a user