From ae14d986581ca57b2982b37a49a5043e125e1f88 Mon Sep 17 00:00:00 2001 From: Joseph Doherty Date: Sun, 7 Jun 2026 04:54:36 -0400 Subject: [PATCH] feat(opcua): compose Equipment VirtualTag plans from VirtualTag+Script rows --- .../Phase7Composer.cs | 50 ++++++++++++- .../Phase7ComposerPurityTests.cs | 71 +++++++++++++++++++ 2 files changed, 120 insertions(+), 1 deletion(-) diff --git a/src/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer/Phase7Composer.cs b/src/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer/Phase7Composer.cs index 8a5f00c1..074edf24 100644 --- a/src/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer/Phase7Composer.cs +++ b/src/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer/Phase7Composer.cs @@ -175,6 +175,8 @@ public static class Phase7Composer /// The scripted alarms. /// The tags. /// The namespaces. + /// The Equipment-namespace virtual (calculated) tags. null = none. + /// The scripts joined to by ScriptId for the expression. null = none. /// The composition result. public static Phase7CompositionResult Compose( IReadOnlyList unsAreas, @@ -183,8 +185,12 @@ public static class Phase7Composer IReadOnlyList driverInstances, IReadOnlyList scriptedAlarms, IReadOnlyList tags, - IReadOnlyList namespaces) + IReadOnlyList namespaces, + IReadOnlyList? virtualTags = null, + IReadOnlyList