From ae496bebe76821fad2001b1add4c89d784800b94 Mon Sep 17 00:00:00 2001
From: Reinder Kraaij <kraaij@astron.nl>
Date: Tue, 8 Apr 2025 12:43:35 +0000
Subject: [PATCH] Let antenafield be field, and antenna be antenna

---
 proto/stationcontrol/antenna.proto      | 58 +++++++++++++++++++++++++
 proto/stationcontrol/antennafield.proto | 57 ++++++++----------------
 proto/stationcontrol/subrack.proto      | 36 ---------------
 tests/test_sid.py                       |  2 +-
 4 files changed, 77 insertions(+), 76 deletions(-)
 create mode 100644 proto/stationcontrol/antenna.proto
 delete mode 100644 proto/stationcontrol/subrack.proto

diff --git a/proto/stationcontrol/antenna.proto b/proto/stationcontrol/antenna.proto
new file mode 100644
index 0000000..3bb7574
--- /dev/null
+++ b/proto/stationcontrol/antenna.proto
@@ -0,0 +1,58 @@
+syntax = "proto3";
+
+service Antenna {
+  rpc GetAntenna(GetAntennaRequest) returns (AntennaReply) {}
+  rpc SetAntennaStatus(SetAntennaStatusRequest) returns (AntennaReply) {}
+  rpc SetAntennaUse(SetAntennaUseRequest) returns (AntennaReply) {}
+  
+}
+
+enum Antenna_Status {
+  OK = 0;
+  SUSPICIOUS = 1;
+  BROKEN = 2;
+  BEYOND_REPAIR = 3;
+  NOT_AVAILABLE = 4;
+}
+
+enum Antenna_Use {
+  // use antenna only if it's OK or SUSPICIOUS
+  AUTO = 0;
+  // force antenna to be on, regardless of status
+  ON = 1;
+  // force antenna to be off, regardless of status
+  OFF = 2;
+}
+
+message Identifier {
+  // e.g. "LBA"
+  string antennafield_name = 1;
+  // e.g. "LBA00"
+  string antenna_name = 2;
+}
+
+message SetAntennaStatusRequest {
+  Identifier identifier = 1;
+  Antenna_Status antenna_status = 2 ;
+}
+
+message GetAntennaRequest {
+  Identifier identifier = 1;
+}
+
+message SetAntennaUseRequest {
+  Identifier identifier = 1;
+  Antenna_Use antenna_use = 2;
+}
+
+message AntennaResult {
+  Identifier identifier = 1;
+  Antenna_Use antenna_use = 2;
+  Antenna_Status antenna_status = 3;
+}
+
+message AntennaReply {
+  bool success = 1;
+  string exception = 2;
+  AntennaResult result = 3;
+}
diff --git a/proto/stationcontrol/antennafield.proto b/proto/stationcontrol/antennafield.proto
index c4f9262..0646573 100644
--- a/proto/stationcontrol/antennafield.proto
+++ b/proto/stationcontrol/antennafield.proto
@@ -1,57 +1,36 @@
 syntax = "proto3";
 
 service Antennafield {
-  rpc GetAntenna(GetAntennaRequest) returns (AntennaReply) {}
-  rpc SetAntennaStatus(SetAntennaStatusRequest) returns (AntennaReply) {}
-  rpc SetAntennaUse(SetAntennaUseRequest) returns (AntennaReply) {}
+  rpc GetAntennafieldPower(GetAntennafieldRequest) returns (AntennafieldReply) {}
+  rpc SetAntennafieldPower(SetAntennafieldRequest) returns (AntennafieldReply) {}
 }
 
-enum Antenna_Status {
-  OK = 0;
-  SUSPICIOUS = 1;
-  BROKEN = 2;
-  BEYOND_REPAIR = 3;
-  NOT_AVAILABLE = 4;
+enum Antennafield_Power_Status {
+  Antennafield_POWER_OFF = 0;
+  Antennafield_POWER_ON = 1;
 }
 
-enum Antenna_Use {
-  // use antenna only if it's OK or SUSPICIOUS
-  AUTO = 0;
-  // force antenna to be on, regardless of status
-  ON = 1;
-  // force antenna to be off, regardless of status
-  OFF = 2;
+message AntennafieldIdentifier {
+  // e.g. "LBA","HBA"
+  string antenna_field_id = 1;
 }
 
-message Identifier {
-  // e.g. "LBA"
-  string antennafield_name = 1;
-  // e.g. "LBA00"
-  string antenna_name = 2;
+message SetAntennafieldRequest {
+  AntennafieldIdentifier identifier = 1;
+  Antennafield_Power_Status power_status = 2 ;
 }
 
-message SetAntennaStatusRequest {
-  Identifier identifier = 1;
-  Antenna_Status antenna_status = 2 ;
+message GetAntennafieldRequest {
+  AntennafieldIdentifier identifier = 1;
 }
 
-message GetAntennaRequest {
-  Identifier identifier = 1;
+message AntennafieldResult {
+  AntennafieldIdentifier identifier = 1;
+  Antennafield_Power_Status power_status = 2 ;
 }
 
-message SetAntennaUseRequest {
-  Identifier identifier = 1;
-  Antenna_Use antenna_use = 2;
-}
-
-message AntennaResult {
-  Identifier identifier = 1;
-  Antenna_Use antenna_use = 2;
-  Antenna_Status antenna_status = 3;
-}
-
-message AntennaReply {
+message AntennafieldReply {
   bool success = 1;
   string exception = 2;
-  AntennaResult result = 3;
+  AntennafieldResult result = 3;
 }
diff --git a/proto/stationcontrol/subrack.proto b/proto/stationcontrol/subrack.proto
deleted file mode 100644
index acc9c07..0000000
--- a/proto/stationcontrol/subrack.proto
+++ /dev/null
@@ -1,36 +0,0 @@
-syntax = "proto3";
-
-service Subrack {
-  rpc GetSubrackPower(GetSubrackRequest) returns (SubrackReply) {}
-  rpc SetSubrackPower(SetSubrackRequest) returns (SubrackReply) {}
-}
-
-enum Subrack_Power_Status {
-  Subrack_POWER_OFF = 0;
-  Subrack_POWER_ON = 1;
-}
-
-message SubrackIdentifier {
-  // e.g. "l0, l1,h0"
-  string subrack_id = 1;
-}
-
-message SetSubrackRequest {
-  SubrackIdentifier identifier = 1;
-  Subrack_Power_Status power_status = 2 ;
-}
-
-message GetSubrackRequest {
-  SubrackIdentifier identifier = 1;
-}
-
-message SubrackResult {
-  SubrackIdentifier identifier = 1;
-  Subrack_Power_Status power_status = 2 ;
-}
-
-message SubrackReply {
-  bool success = 1;
-  string exception = 2;
-  SubrackResult result = 3;
-}
diff --git a/tests/test_sid.py b/tests/test_sid.py
index c1e4120..fafb158 100644
--- a/tests/test_sid.py
+++ b/tests/test_sid.py
@@ -7,7 +7,7 @@ from unittest import TestCase
 
 from lofar_sid.contract import about
 
-from lofar_sid.interface.stationcontrol.antennafield_pb2 import Antenna_Status
+from lofar_sid.interface.stationcontrol.antenna_pb2 import Antenna_Status
 
 
 class SidModule(TestCase):
-- 
GitLab