Skip to content

Commit 797fc96

Browse files
committed
Systems: make it into an object of objects
1 parent 2d249ec commit 797fc96

File tree

1 file changed

+29
-24
lines changed

1 file changed

+29
-24
lines changed

rfcs/RFC-004-systems.rst

Lines changed: 29 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -65,10 +65,10 @@ Referencing Systems
6565
~~~~~~~~~~~~~~~~~~~
6666

6767
In the SECNode descriptive data, the optional property ``systems`` is
68-
introduced. It is a JSON object with local system names as keys and the schema
69-
name of the system and a mapping of module names as the value. For a system to
70-
be valid, all non-optional modules that are included in the system definition
71-
have to be present.
68+
introduced. It is a JSON object with local system names as keys and a
69+
description, the schema name of the system and a mapping of module names as the
70+
value. For a system to be valid, all non-optional modules that are included in
71+
the system definition have to be present.
7272

7373
Local system names may not clash with module names on the same SEC node.
7474

@@ -77,13 +77,14 @@ Example:
7777
.. code:: json
7878
7979
"systems": {
80-
"cryo1": [
81-
"OrangeCryostat",
82-
{
80+
"cryo1": {
81+
"description": "A cryo",
82+
"system": "OrangeCryostat",
83+
"modules": {
8384
"T": "cryo1_T",
8485
"HeLevel": "cryo1_helevel",
8586
},
86-
],
87+
},
8788
},
8889
8990
@@ -92,36 +93,40 @@ For subsystems:
9293
.. code:: json
9394
9495
"systems": {
95-
"mag5t_x": [
96-
"PowerSupply",
97-
{
96+
"mag5t_x": {
97+
"description": "X axis power supply",
98+
"system": "PowerSupply",
99+
"modules": {
98100
"current": "magcur_x",
99101
"voltage": "magvolt_x"
100102
}
101-
],
102-
"mag5t_y": [
103-
"PowerSupply",
104-
{
103+
},
104+
"mag5t_y": {
105+
"description": "Y axis power supply",
106+
"system": "PowerSupply",
107+
"modules": {
105108
"current": "magcur_y",
106109
"voltage": "magvolt_y"
107110
}
108-
],
109-
"mag5t_z": [
110-
"PowerSupply",
111-
{
111+
},
112+
"mag5t_z": {
113+
"description": "Z axis power supply",
114+
"system": "PowerSupply",
115+
"modules": {
112116
"current": "magcur_z",
113117
"voltage": "magvolt_z"
114118
}
115-
],
116-
"mag5t": [
117-
"VectorMagnet",
118-
{
119+
},
120+
"mag5t": {
121+
"description": "5 Tesla magnet",
122+
"system": "VectorMagnet",
123+
"modules": {
119124
"T": "magtemp",
120125
"X": "mag5t_x",
121126
"Y": "mag5t_y",
122127
"Z": "mag5t_z",
123128
},
124-
],
129+
},
125130
},
126131
127132

0 commit comments

Comments
 (0)