#593 radiation monitor data comms

This commit is contained in:
Mikayla
2025-06-03 14:10:30 +00:00
parent 79d63fce78
commit 9e59883a84
8 changed files with 80 additions and 11 deletions

View File

@@ -658,7 +658,6 @@ function iorx.record_waste_data(data)
fac.ps.publish("sps_process_rate", f_data[9])
end
-- update facility app with facility and unit data from API_GET_FAC_DTL
---@param data table
function iorx.record_fac_detail_data(data)
@@ -819,6 +818,42 @@ function iorx.record_fac_detail_data(data)
s_ps.publish("SPSStateStatus", s_stat)
end
-- update the radiation monitor app with radiation monitor data from API_GET_RAD
---@param data table
function iorx.record_radiation_data(data)
-- unit radiation monitors
for u_id = 1, #io.units do
local unit = io.units[u_id]
unit.radiation = types.new_zero_radiation_reading()
unit.rad_monitors = data[u_id]
local max_rad = 0
for _, mon in pairs(unit.rad_monitors) do
if mon.raw > max_rad then
max_rad = mon.raw
unit.radiation = mon.radiation
end
end
end
-- facility radiation monitors
local fac = io.facility
fac.radiation = types.new_zero_radiation_reading()
fac.rad_monitors = data[#io.units + 1]
local max_rad = 0
for _, mon in pairs(fac.rad_monitors) do
if mon.raw > max_rad then
max_rad = mon.raw
fac.radiation = mon.radiation
end
end
end
return function (io_obj)
io = io_obj
return iorx