exportCouplerData
Definition
-- @/lua/vehicle/beamstate.lua:472
-- called from the vehicle that wants to import electrics
local function exportCouplerData(nodeid, dataList)
--print(obj:getId() .. "<-exportCouplerData(" .. nodeid .. "," .. dumps(dataList) .. ")")
transmitCouplers[nodeid] = attachedCouplers[nodeid] or {}
--merge possibly existing electrics/inputs with the newly requested ones. This is necessary if external systems require syncing that isn't defined in jbeam directly
transmitCouplers[nodeid].exportElectrics = transmitCouplers[nodeid].exportElectrics or {}
for _, electric in ipairs(dataList.electrics or {}) do
table.insert(transmitCouplers[nodeid].exportElectrics, electric)
end
transmitCouplers[nodeid].exportInputs = transmitCouplers[nodeid].exportInputs or {}
for _, input in ipairs(dataList.inputs or {}) do
table.insert(transmitCouplers[nodeid].exportInputs, input)
end
end
Callers
@/lua/vehicle/beamstate.lua
local function sendExportCouplerData(obj2Id, obj2nodeId, data)
obj:queueObjectLuaCommand(obj2Id, "beamstate.exportCouplerData(" .. tostring(obj2nodeId) .. ", " .. serialize(data) .. ")")
M.updateRemoteElectrics = updateRemoteElectrics
local data = {electrics = n.importElectrics, inputs = n.importInputs}
--print("couplerAttached -> beamstate.exportCouplerData("..tostring(obj2nodeId)..", "..serialize(data)..")")
-- obj:queueObjectLuaCommand(obj2id, "beamstate.exportCouplerData(" .. tostring(obj2nodeId) .. ", " .. serialize(data) .. ")")
--print("couplerAttached -> beamstate.exportCouplerData("..tostring(obj2nodeId)..", "..serialize(data)..")")
-- obj:queueObjectLuaCommand(obj2id, "beamstate.exportCouplerData(" .. tostring(obj2nodeId) .. ", " .. serialize(data) .. ")")
-- M.updateRemoteElectrics = updateRemoteElectrics
local function exportCouplerData(nodeid, dataList)
--print(obj:getId() .. "<-exportCouplerData(" .. nodeid .. "," .. dumps(dataList) .. ")")
transmitCouplers[nodeid] = attachedCouplers[nodeid] or {}