#247 renamed tcallbackdsp to tcd and added handler to RTU

This commit is contained in:
Mikayla Fischler 2023-06-03 17:40:57 -04:00
parent 2427561dc5
commit 8d248408d4
16 changed files with 58 additions and 54 deletions

View File

@ -7,7 +7,7 @@ require("/initenv").init_env()
local crash = require("scada-common.crash") local crash = require("scada-common.crash")
local log = require("scada-common.log") local log = require("scada-common.log")
local ppm = require("scada-common.ppm") local ppm = require("scada-common.ppm")
local tcallbackdsp = require("scada-common.tcallbackdsp") local tcd = require("scada-common.tcd")
local util = require("scada-common.util") local util = require("scada-common.util")
local core = require("graphics.core") local core = require("graphics.core")
@ -20,7 +20,7 @@ local sounder = require("coordinator.sounder")
local apisessions = require("coordinator.session.apisessions") local apisessions = require("coordinator.session.apisessions")
local COORDINATOR_VERSION = "v0.15.6" local COORDINATOR_VERSION = "v0.15.7"
local println = util.println local println = util.println
local println_ts = util.println_ts local println_ts = util.println_ts
@ -334,7 +334,7 @@ local function main()
apisessions.check_all_watchdogs(param1) apisessions.check_all_watchdogs(param1)
-- notify timer callback dispatcher -- notify timer callback dispatcher
tcallbackdsp.handle(param1) tcd.handle(param1)
end end
elseif event == "modem_message" then elseif event == "modem_message" then
-- got a packet -- got a packet

View File

@ -1,4 +1,4 @@
local tcd = require("scada-common.tcallbackdsp") local tcd = require("scada-common.tcd")
local util = require("scada-common.util") local util = require("scada-common.util")
local iocontrol = require("coordinator.iocontrol") local iocontrol = require("coordinator.iocontrol")

View File

@ -1,6 +1,6 @@
-- Loading/Waiting Animation Graphics Element -- Loading/Waiting Animation Graphics Element
local tcd = require("scada-common.tcallbackdsp") local tcd = require("scada-common.tcd")
local element = require("graphics.element") local element = require("graphics.element")

View File

@ -1,6 +1,6 @@
-- Hazard-bordered Button Graphics Element -- Hazard-bordered Button Graphics Element
local tcd = require("scada-common.tcallbackdsp") local tcd = require("scada-common.tcd")
local util = require("scada-common.util") local util = require("scada-common.util")
local core = require("graphics.core") local core = require("graphics.core")

View File

@ -1,6 +1,6 @@
-- Button Graphics Element -- Button Graphics Element
local tcd = require("scada-common.tcallbackdsp") local tcd = require("scada-common.tcd")
local core = require("graphics.core") local core = require("graphics.core")
local element = require("graphics.element") local element = require("graphics.element")

View File

@ -1,6 +1,6 @@
-- Sidebar Graphics Element -- Sidebar Graphics Element
local tcd = require("scada-common.tcallbackdsp") local tcd = require("scada-common.tcd")
local core = require("graphics.core") local core = require("graphics.core")
local element = require("graphics.element") local element = require("graphics.element")

View File

@ -1,6 +1,6 @@
-- Scroll-able List Box Display Graphics Element -- Scroll-able List Box Display Graphics Element
local tcd = require("scada-common.tcallbackdsp") local tcd = require("scada-common.tcd")
local core = require("graphics.core") local core = require("graphics.core")
local element = require("graphics.element") local element = require("graphics.element")

View File

@ -2,7 +2,7 @@
-- Indicator Light Flasher -- Indicator Light Flasher
-- --
local tcd = require("scada-common.tcallbackdsp") local tcd = require("scada-common.tcd")
local flasher = {} local flasher = {}

File diff suppressed because one or more lines are too long

View File

@ -7,7 +7,7 @@ require("/initenv").init_env()
local crash = require("scada-common.crash") local crash = require("scada-common.crash")
local log = require("scada-common.log") local log = require("scada-common.log")
local ppm = require("scada-common.ppm") local ppm = require("scada-common.ppm")
local tcallbackdsp = require("scada-common.tcallbackdsp") local tcd = require("scada-common.tcd")
local util = require("scada-common.util") local util = require("scada-common.util")
local core = require("graphics.core") local core = require("graphics.core")
@ -17,7 +17,7 @@ local coreio = require("pocket.coreio")
local pocket = require("pocket.pocket") local pocket = require("pocket.pocket")
local renderer = require("pocket.renderer") local renderer = require("pocket.renderer")
local POCKET_VERSION = "alpha-v0.3.6" local POCKET_VERSION = "alpha-v0.3.7"
local println = util.println local println = util.println
local println_ts = util.println_ts local println_ts = util.println_ts
@ -145,7 +145,7 @@ local function main()
else else
-- a non-clock/main watchdog timer event -- a non-clock/main watchdog timer event
-- notify timer callback dispatcher -- notify timer callback dispatcher
tcallbackdsp.handle(param1) tcd.handle(param1)
end end
elseif event == "modem_message" then elseif event == "modem_message" then
-- got a packet -- got a packet

View File

@ -18,7 +18,7 @@ local plc = require("reactor-plc.plc")
local renderer = require("reactor-plc.renderer") local renderer = require("reactor-plc.renderer")
local threads = require("reactor-plc.threads") local threads = require("reactor-plc.threads")
local R_PLC_VERSION = "v1.3.6" local R_PLC_VERSION = "v1.3.7"
local println = util.println local println = util.println
local println_ts = util.println_ts local println_ts = util.println_ts

View File

@ -1,7 +1,7 @@
local log = require("scada-common.log") local log = require("scada-common.log")
local mqueue = require("scada-common.mqueue") local mqueue = require("scada-common.mqueue")
local ppm = require("scada-common.ppm") local ppm = require("scada-common.ppm")
local tcallbackdsp = require("scada-common.tcallbackdsp") local tcd = require("scada-common.tcd")
local util = require("scada-common.util") local util = require("scada-common.util")
local databus = require("reactor-plc.databus") local databus = require("reactor-plc.databus")
@ -157,7 +157,7 @@ function threads.thread__main(smem, init)
smem.q.mq_rps.push_command(MQ__RPS_CMD.TRIP_TIMEOUT) smem.q.mq_rps.push_command(MQ__RPS_CMD.TRIP_TIMEOUT)
elseif event == "timer" then elseif event == "timer" then
-- notify timer callback dispatcher if no other timer case claimed this event -- notify timer callback dispatcher if no other timer case claimed this event
tcallbackdsp.handle(param1) tcd.handle(param1)
elseif event == "peripheral_detach" then elseif event == "peripheral_detach" then
-- peripheral disconnect -- peripheral disconnect
local type, device = ppm.handle_unmount(param1) local type, device = ppm.handle_unmount(param1)

View File

@ -28,7 +28,7 @@ local sna_rtu = require("rtu.dev.sna_rtu")
local sps_rtu = require("rtu.dev.sps_rtu") local sps_rtu = require("rtu.dev.sps_rtu")
local turbinev_rtu = require("rtu.dev.turbinev_rtu") local turbinev_rtu = require("rtu.dev.turbinev_rtu")
local RTU_VERSION = "v1.2.6" local RTU_VERSION = "v1.2.7"
local RTU_UNIT_TYPE = types.RTU_UNIT_TYPE local RTU_UNIT_TYPE = types.RTU_UNIT_TYPE
local RTU_UNIT_HW_STATE = databus.RTU_UNIT_HW_STATE local RTU_UNIT_HW_STATE = databus.RTU_UNIT_HW_STATE

View File

@ -1,6 +1,7 @@
local log = require("scada-common.log") local log = require("scada-common.log")
local mqueue = require("scada-common.mqueue") local mqueue = require("scada-common.mqueue")
local ppm = require("scada-common.ppm") local ppm = require("scada-common.ppm")
local tcd = require("scada-common.tcd")
local types = require("scada-common.types") local types = require("scada-common.types")
local util = require("scada-common.util") local util = require("scada-common.util")
@ -82,6 +83,9 @@ function threads.thread__main(smem)
elseif event == "timer" and conn_watchdog.is_timer(param1) then elseif event == "timer" and conn_watchdog.is_timer(param1) then
-- haven't heard from server recently? unlink -- haven't heard from server recently? unlink
rtu_comms.unlink(rtu_state) rtu_comms.unlink(rtu_state)
elseif event == "timer" then
-- notify timer callback dispatcher if no other timer case claimed this event
tcd.handle(param1)
elseif event == "peripheral_detach" then elseif event == "peripheral_detach" then
-- handle loss of a device -- handle loss of a device
local type, device = ppm.handle_unmount(param1) local type, device = ppm.handle_unmount(param1)

View File

@ -5,14 +5,14 @@
local log = require("scada-common.log") local log = require("scada-common.log")
local util = require("scada-common.util") local util = require("scada-common.util")
local tcallbackdsp = {} local tcd = {}
local registry = {} local registry = {}
-- request a function to be called after the specified time -- request a function to be called after the specified time
---@param time number seconds ---@param time number seconds
---@param f function callback function ---@param f function callback function
function tcallbackdsp.dispatch(time, f) function tcd.dispatch(time, f)
local timer = util.start_timer(time) local timer = util.start_timer(time)
registry[timer] = { registry[timer] = {
callback = f, callback = f,
@ -24,7 +24,7 @@ end
-- request a function to be called after the specified time, aborting any registered instances of that function reference -- request a function to be called after the specified time, aborting any registered instances of that function reference
---@param time number seconds ---@param time number seconds
---@param f function callback function ---@param f function callback function
function tcallbackdsp.dispatch_unique(time, f) function tcd.dispatch_unique(time, f)
-- cancel if already registered -- cancel if already registered
for timer, entry in pairs(registry) do for timer, entry in pairs(registry) do
if entry.callback == f then if entry.callback == f then
@ -47,7 +47,7 @@ end
-- abort a requested callback -- abort a requested callback
---@param f function callback function ---@param f function callback function
function tcallbackdsp.abort(f) function tcd.abort(f)
for timer, entry in pairs(registry) do for timer, entry in pairs(registry) do
if entry.callback == f then if entry.callback == f then
-- cancel event and remove from registry (even if it fires it won't call) -- cancel event and remove from registry (even if it fires it won't call)
@ -59,7 +59,7 @@ end
-- lookup a timer event and execute the callback if found -- lookup a timer event and execute the callback if found
---@param event integer timer event timer ID ---@param event integer timer event timer ID
function tcallbackdsp.handle(event) function tcd.handle(event)
if registry[event] ~= nil then if registry[event] ~= nil then
local callback = registry[event].callback local callback = registry[event].callback
-- clear first so that dispatch_unique call from inside callback won't throw a debug message -- clear first so that dispatch_unique call from inside callback won't throw a debug message
@ -70,7 +70,7 @@ end
-- identify any overdo callbacks<br> -- identify any overdo callbacks<br>
-- prints to log debug output -- prints to log debug output
function tcallbackdsp.diagnostics() function tcd.diagnostics()
for timer, entry in pairs(registry) do for timer, entry in pairs(registry) do
if entry.expiry < util.time_s() then if entry.expiry < util.time_s() then
local overtime = util.time_s() - entry.expiry local overtime = util.time_s() - entry.expiry
@ -82,4 +82,4 @@ function tcallbackdsp.diagnostics()
end end
end end
return tcallbackdsp return tcd

View File

@ -8,7 +8,7 @@ local crash = require("scada-common.crash")
local comms = require("scada-common.comms") local comms = require("scada-common.comms")
local log = require("scada-common.log") local log = require("scada-common.log")
local ppm = require("scada-common.ppm") local ppm = require("scada-common.ppm")
local tcd = require("scada-common.tcallbackdsp") local tcd = require("scada-common.tcd")
local util = require("scada-common.util") local util = require("scada-common.util")
local core = require("graphics.core") local core = require("graphics.core")
@ -20,7 +20,7 @@ local supervisor = require("supervisor.supervisor")
local svsessions = require("supervisor.session.svsessions") local svsessions = require("supervisor.session.svsessions")
local SUPERVISOR_VERSION = "v0.16.6" local SUPERVISOR_VERSION = "v0.16.7"
local println = util.println local println = util.println
local println_ts = util.println_ts local println_ts = util.println_ts