[focas] FOCAS — ODBST status flags as fixed-tree nodes #325
Reference in New Issue
Block a user
Delete Branch "auto/focas/F1-a"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Projects the 9 fields of FOCAS
cnc_statinfo(ODBST struct) underStatus/per device.FocasStatusInforecord (9 short fields:Dummy,Tmmode,Aut,Run,Motion,Mstb,EmergencyStop,Alarm,Edit) and default-implementationIFocasClient.GetStatusAsyncso existing impls (IpcFocasClient, fakes) compile unchanged.FwlibFocasClientdecodes the full ODBST struct.ProbeAsynchealth probe preserved verbatim.FocasDriver.DiscoverAsyncemits aStatus/subfolder per device with 9 read-onlyInt16variables.FocasDriver.ProbeLoopAsyncrefreshes a per-device cached snapshot on every probe tick after a successful probe.ReadAsyncintercepts status-node references and serves from cache (returnsBadCommunicationErroruntil first refresh).EmergencyStopandAlarmdocumented as small enums (0..7) per Fanuc docs, so Int16 is the safer surfacing.Test plan
dotnet build src/ZB.MOM.WW.OtOpcUa.Driver.FOCAS— clean (0 / 0)dotnet test tests/ZB.MOM.WW.OtOpcUa.Driver.FOCAS.Tests— 207 / 207 passed (5 new inFocasStatusFixedTreeTests: discovery, cached read, empty-cache fallback, back-compat,FwlibFocasClientnull guard)dotnet test tests/ZB.MOM.WW.OtOpcUa.Driver.FOCAS.Host.Tests— 13 / 13dotnet test tests/ZB.MOM.WW.OtOpcUa.Driver.FOCAS.Shared.Tests— 24 / 24🤖 Auto-generated by the Mode-B execution loop. Closes #257.
Closes #257