Newer
Older
"plugins": [],
"panes": [
{
"width": 1,
"row": {
"1": 1,
"2": 1,
"3": 1,
"html": "let clock = datasources[\"Clock\"][\"numeric_value\"]; // trick to trigger the update\nlet cols = document.getElementsByClassName('gs_w')[0].getAttribute('data-sizex');\ndocument.getElementsByClassName('gs_w')[0].firstElementChild.firstElementChild.innerHTML = \"\";\n\nlet title = \"Public Operations Screen\"; // Change this title. Try not to exceed the 30 chars\n\nlet fontsize = Math.round((-0.66486486*title.length+66.67567568)*cols/4);\nlet lmargin = Math.round((0.43918919*title.length-4.05405405)+3.75*cols*cols-34.75*cols+79.75);\nlet width = 100-lmargin;\n\nvar text = `<div style=\\\"position: relative; margin-top: -15px; text-align: left;\\\">\n\t\t\t<div style=\\\"position: relative;\\\">\n\t\t\t\t<img src=\\\"../img/ess-logo.svg\\\" title=\\\"Designed by Emanuele Laface with PyEpics and Freeboard. Graphics by Dirk Nordt.\\\"></img>\n\t\t\t</div>\n<div class=\\\"tw-value\\\" style=\\\"font-size: `+String(fontsize)+`px; color:#ffffff !important; position: absolute; left: `+String(lmargin)+`%; width: `+String(width)+`%; height: 100%; justify-content: center; display: flex; align-items: center;\\\" title=\\\"Designed by Emanuele Laface with PyEpics and Freeboard. Graphics by Dirk Nordt.\\\">\n\t\t\t\t`+title+`\n\t\t\t</div>\n\t\t</div>`;\n\nif (cols == 1){\n text = \"<div style=\\\"position: static; margin-top: -15px;\\\"><img src=\\\"../img/ess-logo.svg\\\" title=\\\"Designed by Emanuele Laface with PyEpics and Freeboard. Graphics by Dirk Nordt.\\\"><div class=\\\"tw-value\\\" style=\\\"font-size: 30px; color:#ffffff !important; position: relative; bottom: 55px; left: 30px;\\\" title=\\\"Designed by Emanuele Laface with PyEpics and Freeboard. Graphics by Dirk Nordt.\\\"></div></img></div>\";\n document.getElementsByClassName('gs_w')[0].firstElementChild.firstElementChild.innerHTML = title;\n}\n\nreturn text;",
{
"title": "Permit table",
"width": 1,
"row": {
"1": 7,
"2": 7,
"3": 7,
"4": 7,
},
"col": {
"1": 1,
"2": 1,
"3": 1,
"4": 1,
},
"col_width": 1,
"widgets": [
{
"type": "indicator",
"settings": {
"title": "",
"value": "datasources[\"general\"][\"FBIS::beam_permit_ok\"][\"value\"][\"index\"]",
"on_text": "FBIS Global Permit",
"off_text": "FBIS Global Permit"
}
},
"value": "datasources[\"general\"][\"BPROD:Ops:BState\"][\"value\"][\"index\"]",
"on_text": "OP Beam Requested",
"off_text": "OP Beam Requested"
}
},
{
"type": "text_widget",
"settings": {
"title": "PSS1 Mode of Operation",
"size": "regular",
"value": "return datasources[\"general\"][\"AccPSS:PSS-Area-1:PSSMode\"][\"value\"][\"choices\"][datasources[\"general\"][\"AccPSS:PSS-Area-1:PSSMode\"][\"value\"][\"index\"]];",
"2": 1,
"3": 2,
"4": 3,
"5": 4,
"6": 5,
"7": 3,
"8": 3,
"9": 3,
"11": 3
"value": "let timelength = datasources[\"rfq\"][\"RFQ-010:RFS-EVR-101:RFSyncWdt-SP\"][\"value\"]/1000;\nlet pwxdata = datasources[\"rfq\"][\"RFQ-010:RFS-DIG-101:Dwn6-XAxis.[0:100:-1]\"][\"value\"];\nlet pwydata = datasources[\"rfq\"][\"RFQ-010:RFS-DIG-101:Dwn6-Cmp0.[0:100:-1]\"][\"value\"];\n\nlet power = datasources[\"rfq\"][\"RFQ-010:RFS-DIG-101:AI2-SMonAvg-Mag\"][\"value\"]-datasources[\"rfq\"][\"RFQ-010:RFS-DIG-101:AI3-SMonAvg-Mag\"][\"value\"]+datasources[\"rfq\"][\"RFQ-010:RFS-DIG-101:AI4-SMonAvg-Mag\"][\"value\"]-datasources[\"rfq\"][\"RFQ-010:RFS-DIG-101:AI5-SMonAvg-Mag\"][\"value\"];\n\nlet pwdata = 0;\nlet counts = 0;\n\nlet timestamp = datasources[\"rfq\"][\"RFQ-010:RFS-DIG-101:Dwn6-Cmp0.[0:100:-1]\"][\"timeStamp\"][\"secondsPastEpoch\"];\nlet now = Math.floor((new Date()).getTime() / 1000);\nvar enable = 1;\nif (now - timestamp > 60) {\n enable = 0;\n}\n\nfor (i=0; i < pwxdata.length; i++) {\n if (pwxdata[i] > timelength) {\n break;\n }\n\tpwdata += enable*pwydata[i];\n counts += 1;\n}\n\nif (counts == 0) {\n return 0;\n}\n\nif (pwdata/counts < 3) {\n return 0;\n}\n\nreturn 1;",
"on_text": "let power = datasources[\"rfq\"][\"RFQ-010:RFS-DIG-101:AI2-SMonAvg-Mag\"][\"value\"]-datasources[\"rfq\"][\"RFQ-010:RFS-DIG-101:AI3-SMonAvg-Mag\"][\"value\"]+datasources[\"rfq\"][\"RFQ-010:RFS-DIG-101:AI4-SMonAvg-Mag\"][\"value\"]-datasources[\"rfq\"][\"RFQ-010:RFS-DIG-101:AI5-SMonAvg-Mag\"][\"value\"];\n\nreturn \"Power: \"+String(power.toFixed(3))+\" kW\";",
"plot_type": "area",
"legend": true,
"height": 4,
"value": "datasources[\"Clock\"][\"numeric_value\"];\n\nlet timelength = datasources[\"rfq\"][\"RFQ-010:RFS-EVR-101:RFSyncWdt-SP\"][\"value\"]/1000*2;\n\nlet pwxdata = datasources[\"rfq\"][\"RFQ-010:RFS-DIG-101:Dwn6-XAxis.[0:100:-1]\"][\"value\"];\nlet pwydata = datasources[\"rfq\"][\"RFQ-010:RFS-DIG-101:Dwn6-Cmp0.[0:100:-1]\"][\"value\"];\n\nlet timestamp = datasources[\"rfq\"][\"RFQ-010:RFS-DIG-101:Dwn6-Cmp0.[0:100:-1]\"][\"timeStamp\"][\"secondsPastEpoch\"];\nlet now = Math.floor((new Date()).getTime() / 1000);\nvar enable = 1;\nif (now - timestamp > 120) {\n enable = 0;\n}\nelse {\n enable = 1;\n}\n\nvar pwdata = [];\n\nfor (i=0; i < pwxdata.length; i++) {\n if (pwxdata[i] > timelength) {\n break;\n }\n\tpwdata.push([pwxdata[i], enable*pwydata[i]]);\n}\n\nlet data = [{label: 'Power applied', data: pwdata, color: \"green\"}];\n\nreturn data;",
"xticks": "datasources[\"Clock\"][\"numeric_value\"];\n\nlet cols = document.getElementsByClassName('gs_w')[0].getAttribute('data-sizex');\n\nlet timelength = datasources[\"rfq\"][\"RFQ-010:RFS-EVR-101:RFSyncWdt-SP\"][\"value\"]/1000*2;\nlet xdata = datasources[\"rfq\"][\"RFQ-010:RFS-DIG-101:Dwn6-XAxis.[0:100:-1]\"][\"value\"];\n\nif (xdata.length == 0) {\n return;\n}\n\nif (timelength > xdata[xdata.length-1]) {\n timelength = xdata[xdata.length-1];\n}\n\nvar xtick = [];\nvar size = 10;\nif (cols == 1) {\n size = 4;\n}\n\nfor (i = 0; i < (size+1); i += 1) {\n xtick.push([timelength*i/size, (timelength*i/size).toFixed(3).toString()]);\n}\nxtick[size/2][1] = xtick[size/2][1]+\"<br>t [ms]\";\n\nreturn xtick;\n\n",
"yticks": "datasources[\"Clock\"][\"numeric_value\"];\n\nlet rfq_data = datasources[\"rfq\"][\"RFQ-010:RFS-DIG-101:Dwn6-Cmp0.[0:100:-1]\"][\"value\"];\nvar rfq_ticks = [];\nlet min_rfq = Math.min(...rfq_data);\nlet max_rfq = Math.max(...rfq_data);\n\nif (max_rfq-min_rfq < 1) {\n return([[-2,\"-2\"],[-1,\"-1\"],[0,\"0\"],[1,\"1\"],[2,\"P [kW]\"]]);\n}\n\nfor (i = min_rfq; i <= max_rfq; i += (max_rfq-min_rfq)/5) {\n\trfq_ticks.push([i, Math.trunc(i)]);\n}\n\nrfq_ticks.push([max_rfq+(max_rfq-min_rfq)/5, \"P [kW]\"]);\nreturn rfq_ticks;",
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
{
"title": "Ion Source",
"width": 1,
"row": {
"1": 41,
"2": 7,
"3": 31,
"4": 7,
"5": 17,
"6": 7,
"7": 7,
"8": 7,
"9": 7,
"10": 7,
"11": 7,
"12": 7
},
"col": {
"1": 1,
"2": 2,
"3": 2,
"4": 2,
"5": 3,
"6": 4,
"7": 1,
"8": 1,
"9": 1,
"10": 1,
"11": 1,
"12": 1
},
"col_width": 1,
"widgets": [
{
"type": "indicator",
"settings": {
"value": "datasources[\"source\"][\"ISrc-CS:ISS-Magtr-01:MwRdy\"][\"value\"][\"index\"]",
"on_text": "Magnetron On",
"off_text": "Magnetron Off"
}
},
{
"type": "text_widget",
"settings": {
"title": "Power",
"size": "regular",
"value": "datasources[\"source\"][\"ISrc-CS:ISS-Magtr-01:PulsHLvl-S\"][\"value\"]",
"animate": true,
"units": "W"
}
},
{
"type": "indicator",
"settings": {
"title": "High Voltage Platform",
"value": "datasources[\"source\"][\"ISrc-CS:ISS-HVPS-01:Pwr-R\"][\"value\"][\"index\"]\n",
"on_text": "String(datasources[\"source\"][\"ISrc-CS:ISS-HVPS-01:Vol-R\"][\"value\"].toFixed(0))+\" \"+datasources[\"source\"][\"ISrc-CS:ISS-HVPS-01:Vol-R\"][\"display\"][\"units\"]",
"off_text": "String(datasources[\"source\"][\"ISrc-CS:ISS-HVPS-01:Vol-R\"][\"value\"].toFixed(0))+\" \"+datasources[\"source\"][\"ISrc-CS:ISS-HVPS-01:Vol-R\"][\"display\"][\"units\"]"
}
}
]
},
"5": 7,
"6": 7,
"7": 7,
"8": 7,
"9": 7,
"10": 7,
"11": 7,
"12": 7,
"13": 7,
"14": 7,
"15": 7
},
"col": {
"1": 1,
"2": 1,
"5": 3,
"6": 2,
"7": 1,
"8": 1,
"9": 1,
"10": 1,
"11": 1,
"12": 1,
"13": 1,
"14": 1,
"15": 1
"value": "datasources[\"general\"][\"NSO:Ops:SID\"][\"value\"]",
}
},
{
"type": "text_widget",
"settings": {
"size": "regular",
"value": "datasources[\"Clock\"][\"numeric_value\"];\n\nvar elements = document.getElementsByClassName('tw-value');\n\nfor (var i = 0; i < elements.length; i++) {\n var element = elements[i];\n if (element.innerHTML == datasources[\"general\"][\"NSO:Ops:Msg\"][\"value\"]) {\n element.style.fontSize = \"18px\";\n }\n}\n\nreturn datasources[\"general\"][\"NSO:Ops:Msg\"][\"value\"];",
"value": "if (datasources[\"general\"][\"NSO:Ops:ESSSystemPermit\"][\"value\"][\"index\"] == 1) {\n return 1;\n}\nelse {\n return 0;\n}",
"on_text": "Beam Authorization",
"off_text": "Beam Authorization"
}
},
{
"type": "indicator",
"settings": {
"value": "datasources[\"general\"][\"NSO:Ops:ESSSystemPermit\"][\"value\"][\"index\"]",
{
"title": "Beam Production Table",
"width": 1,
"row": {
"1": 21,
"2": 15,
"3": 31,
"4": 15,
"5": 7,
"6": 7,
"7": 13,
"8": 13,
"9": 13,
"10": 13,
},
"col": {
"1": 1,
"2": 2,
"3": 3,
"4": 2,
"5": 2,
"6": 3,
"7": 1,
"8": 1,
"9": 1,
"10": 1,
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
},
"col_width": 1,
"widgets": [
{
"type": "text_widget",
"settings": {
"title": "Frequency",
"size": "regular",
"value": "datasources[\"general\"][\"TD-M:Ctrl-SCE-1:ScTable-RB\"][\"value\"].split(\"__\")[1];",
"animate": true
}
},
{
"type": "text_widget",
"settings": {
"title": "ISrc Pulse Length",
"size": "regular",
"value": "valueArray = [];\nrawArray = datasources[\"general\"][\"TD-M:Ctrl-SCE-1:ScTable-RB\"][\"value\"].split(\"_\")\nrawArray.forEach(function (item, index) {\n if (item != \"\") {\n valueArray.push(item);\n }\n});\n\nreturn valueArray[2];",
"animate": true,
"units": "µs"
}
},
{
"type": "text_widget",
"settings": {
"title": "LEBT Pulse Length",
"size": "regular",
"value": "valueArray = [];\nrawArray = datasources[\"general\"][\"TD-M:Ctrl-SCE-1:ScTable-RB\"][\"value\"].split(\"_\")\nrawArray.forEach(function (item, index) {\n if (item != \"\") {\n valueArray.push(item);\n }\n});\n\nreturn valueArray[3];",
"animate": true,
"units": "µs"
}
},
{
"type": "text_widget",
"settings": {
"title": "MEBT Pulse Length",
"size": "regular",
"value": "valueArray = [];\nrawArray = datasources[\"general\"][\"TD-M:Ctrl-SCE-1:ScTable-RB\"][\"value\"].split(\"_\")\nrawArray.forEach(function (item, index) {\n if (item != \"\") {\n valueArray.push(item);\n }\n});\n\nreturn valueArray[4];",
"animate": true,
"units": "µs"
}
}
]
},
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
{
"title": "Beam Mode",
"width": 1,
"row": {
"1": 15,
"2": 29,
"3": 25,
"4": 25,
"5": 15,
"6": 15,
"7": 21,
"8": 21,
"9": 21,
"10": 21,
"11": 21,
"12": 21
},
"col": {
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"5": 1,
"6": 1,
"7": 3,
"8": 3,
"9": 3,
"10": 3,
"11": 3,
"12": 3
},
"col_width": 1,
"widgets": [
{
"type": "text_widget",
"settings": {
"size": "regular",
"value": "datasources[\"general\"][\"TD-M:Ctrl-SCE-1:BMod-Sel\"][\"value\"][\"choices\"][datasources[\"general\"][\"TD-M:Ctrl-SCE-1:BMod-Sel\"][\"value\"][\"index\"]]\n",
"animate": true
"title": "Destination",
"size": "regular",
"value": "datasources[\"general\"][\"TD-M:Ctrl-SCE-1:BDest-Sel\"][\"value\"][\"choices\"][datasources[\"general\"][\"TD-M:Ctrl-SCE-1:BDest-Sel\"][\"value\"][\"index\"]]",
"animate": true
{
"title": "Beam Energy",
"width": 1,
"row": {
"12": 2
},
"col_width": 1,
"widgets": [
{
"type": "text_widget",
"settings": {
"size": "regular",
"value": "switch(datasources[\"general\"][\"TD-M:Ctrl-SCE-1:BDest-Sel\"][\"value\"][\"index\"]) {\n case 0:\n return \"0 keV\";\n break;\n case 1:\n\t\treturn \"75 keV\";\n break;\n\tcase 2:\n\t\treturn String(datasources[\"general\"][\"PBI-FBPM01::Energy-R\"][\"value\"].toFixed(2))+\" MeV\";\n break;\n\tcase 3:\n\t\treturn \"21 MeV (Calc.)\";\n break;\n\tcase 4:\n\t\treturn \"DLT3 Energy\";\n break;\n default:\n return \"NO Energy reading\";\n}",
"animate": true
}
}
]
},
{
"title": "ISrc Beam Current",
"width": 1,
"row": {
},
"col": {
"1": 1,
"2": 2,
"3": 1,
},
"col_width": 1,
"widgets": [
{
"type": "text_widget",
"settings": {
"size": "regular",
"value": "datasources[\"source\"][\"ISrc-010:PBI-BCM-001:FlatTopCurrentR\"][\"value\"].toFixed(3)",
"animate": true,
"units": "mA"
}
}
]
},
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
{
"title": "DTL",
"width": 1,
"row": {
"1": 69,
"2": 47,
"3": 19,
"4": 19,
"5": 19,
"6": 19,
"9": 19,
"10": 19,
"12": 19
},
"col": {
"1": 1,
"2": 1,
"3": 2,
"4": 3,
"5": 4,
"6": 5,
"9": 5,
"10": 5,
"12": 5
},
"col_width": 2,
"widgets": [
{
"type": "indicator",
"settings": {
"value": "let power = datasources[\"dtl\"][\"DTL-010:RFS-DIG-101:AI2-SMonAvg-Mag\"][\"value\"]-datasources[\"dtl\"][\"DTL-010:RFS-DIG-101:AI3-SMonAvg-Mag\"][\"value\"]+datasources[\"dtl\"][\"DTL-010:RFS-DIG-101:AI4-SMonAvg-Mag\"][\"value\"]-datasources[\"dtl\"][\"DTL-010:RFS-DIG-101:AI5-SMonAvg-Mag\"][\"value\"];\n\nif (power > 1) {\n return 1;\n}\nelse {\n return 0;\n}\n",
"on_text": "let power = datasources[\"dtl\"][\"DTL-010:RFS-DIG-101:AI2-SMonAvg-Mag\"][\"value\"]-datasources[\"dtl\"][\"DTL-010:RFS-DIG-101:AI3-SMonAvg-Mag\"][\"value\"]+datasources[\"dtl\"][\"DTL-010:RFS-DIG-101:AI4-SMonAvg-Mag\"][\"value\"]-datasources[\"dtl\"][\"DTL-010:RFS-DIG-101:AI5-SMonAvg-Mag\"][\"value\"];\n\nreturn \"Power: \"+String(power.toFixed(3))+\" kW\";",
"off_text": "DTL Off"
}
},
{
"type": "flot_extended_plugin",
"settings": {
"plot_type": "area",
"legend": true,
"height": 4,
"value": "datasources[\"Clock\"][\"numeric_value\"];\n\nlet timelength = datasources[\"dtl\"][\"DTL-010:RFS-EVR-101:RFSyncWdt-SP\"][\"value\"]/1000*2;\n\nlet pwxdata = datasources[\"dtl\"][\"DTL-010:RFS-DIG-101:Dwn6-XAxis\"][\"value\"];\nlet pwydata = datasources[\"dtl\"][\"DTL-010:RFS-DIG-101:Dwn6-Cmp0\"][\"value\"];\n\nlet timestamp = datasources[\"dtl\"][\"DTL-010:RFS-DIG-101:Dwn6-Cmp0\"][\"timeStamp\"][\"secondsPastEpoch\"];\nlet now = Math.floor((new Date()).getTime() / 1000);\nvar enable = 1;\nif (now - timestamp > 120) {\n enable = 0;\n}\nelse {\n enable = 1;\n}\n\nvar pwdata = [];\n\nfor (i=0; i < pwxdata.length; i++) {\n if (pwxdata[i] > timelength) {\n break;\n }\n\tpwdata.push([pwxdata[i], enable*pwydata[i]]);\n}\n\nlet data = [{label: 'Power applied', data: pwdata, color: \"green\"}];\n\nreturn data;",
"xticks": "datasources[\"Clock\"][\"numeric_value\"];\n\nvar cols = document.getElementsByClassName('gs_w')[0].getAttribute('data-sizex');\n\nlet timelength = datasources[\"dtl\"][\"DTL-010:RFS-EVR-101:RFSyncWdt-SP\"][\"value\"]/1000*2;\nlet xdata = datasources[\"dtl\"][\"DTL-010:RFS-DIG-101:Dwn6-XAxis\"][\"value\"];\n\nif (xdata.length == 0) {\n return;\n}\n\nif (timelength > xdata[xdata.length-1]) {\n timelength = xdata[xdata.length-1];\n}\n\nvar xtick = [];\nvar size = 10;\nif (cols == 1) {\n size = 4;\n}\n\nfor (i = 0; i < (size+1); i += 1) {\n xtick.push([timelength*i/size, (timelength*i/size).toFixed(3).toString()]);\n}\nxtick[size/2][1] = xtick[size/2][1]+\"<br>t [ms]\";\n\nreturn xtick;\n\n",
"yticks": "datasources[\"Clock\"][\"numeric_value\"];\n\nlet dtl_data = datasources[\"dtl\"][\"DTL-010:RFS-DIG-101:Dwn6-Cmp0\"][\"value\"];\nvar dtl_ticks = [];\nlet min_dtl = Math.min(...dtl_data);\nlet max_dtl = Math.max(...dtl_data);\n\nif (max_dtl-min_dtl < 1) {\n return([[-2,\"-2\"],[-1,\"-1\"],[0,\"0\"],[1,\"1\"],[2,\"P [kW]\"]]);\n}\n\nfor (i = min_dtl; i <= max_dtl; i += (max_dtl-min_dtl)/5) {\n\tdtl_ticks.push([i, Math.trunc(i)]);\n}\n\ndtl_ticks.push([max_dtl+(max_dtl-min_dtl)/5, \"P [kW]\"]);\nreturn dtl_ticks;",
"zoom": "xy"
}
}
]
},
},
"col": {
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"widgets": [
{
"type": "flot_extended_plugin",
"settings": {
"plot_type": "line",
"legend": true,
"height": 5,
"value": "datasources[\"Clock\"][\"numeric_value\"];\n\nvar lebtdata = [];\nvar rfqdata = [];\nvar mebt1data = [];\nvar mebt2data = [];\nvar dtl2data = [];\nvar fclebtdata = [];\nvar fcmebtdata = [];\nvar fcdtl2data = [];\n\nvar lebtydata = [];\nvar rfqydata = [];\nvar mebt1ydata = [];\nvar mebt2ydata = [];\nvar dtl2ydata = [];\nvar fclebtydata = [];\nvar fcmebtydata = [];\nvar fcdtl2ydata = [];\n\nvar startroi = 0;\nvar endroi = 0;\n\nvar data = [];\n\nswitch(datasources[\"general\"][\"TD-M:Ctrl-SCE-1:BDest-Sel\"][\"value\"][\"index\"]) {\n case 0:\n return \"ISrc\";\n break;\n case 1:\n\t\tlebtydata = datasources[\"pbi\"][\"LEBT-010:PBI-BCM-001:PRC-TR1-ArrayData.[5503:200:49530]\"][\"value\"];\n fclebtydata = datasources[\"pbi\"][\"LEBT-010:PBI-FC-001:TRC2-ArrayData-Comp.[1000:40:9000]\"][\"value\"];\n startroi = 1000;\n\t\tendroi = 9000;\n for (i=0; i < lebtydata.length; i++) {\n\t\t\tlebtdata.push([((endroi-startroi)/lebtydata.length*i+startroi)/1000, lebtydata[i]]);\n\t\t}\n for (i=0; i < fclebtydata.length; i++) {\n \tfclebtdata.push([((endroi-startroi)/fclebtydata.length*i+startroi)/1000, fclebtydata[i]]);\n\t\t}\n data = [{label: 'BCM LEBT', data: lebtdata, color: \"red\"},\n {label: 'FC LEBT', data: fclebtdata, color: \"lime\"}];\n break;\n\tcase 2:\n lebtydata = datasources[\"pbi\"][\"LEBT-010:PBI-BCM-001:PRC-TR1-ArrayData.[35772:4:36872]\"][\"value\"];\n rfqydata = datasources[\"pbi\"][\"RFQ-010:PBI-BCM-001:PRC-TR1-ArrayData.[35772:4:36872]\"][\"value\"];\n mebt1ydata = datasources[\"pbi\"][\"MEBT-010:PBI-BCM-001:PRC-TR1-ArrayData.[35772:4:36872]\"][\"value\"];\n mebt2ydata = datasources[\"pbi\"][\"MEBT-010:PBI-BCM-002:PRC-TR1-ArrayData.[35772:4:36872]\"][\"value\"];\n fcmebtydata = datasources[\"pbi\"][\"MEBT-010:PBI-FC-001:TRC2-ArrayData-Comp.[6500:1:6700]\"][\"value\"];\n startroi = 6500;\n\t\tendroi = 6700;\n for (i=0; i < lebtydata.length; i++) {\n\t\t\tlebtdata.push([((endroi-startroi)/lebtydata.length*i+startroi)/1000, lebtydata[i]]);\n\t\t}\n for (i=0; i < rfqydata.length; i++) {\n \trfqdata.push([((endroi-startroi)/rfqydata.length*i+startroi)/1000, rfqydata[i]]);\n\t\t}\n for (i=0; i < mebt1ydata.length; i++) {\n\t\t\tmebt1data.push([((endroi-startroi)/mebt1ydata.length*i+startroi)/1000, mebt1ydata[i]]);\n\t\t}\n\t\tfor (i=0; i < mebt2ydata.length; i++) {\n\t\t\tmebt2data.push([((endroi-startroi)/mebt2ydata.length*i+startroi)/1000, mebt2ydata[i]]);\n\t\t}\n\t\tfor (i=0; i < fcmebtydata.length; i++) {\n\t\t\tfcmebtdata.push([((endroi-startroi)/fcmebtydata.length*i+startroi)/1000, fcmebtydata[i]]);\n\t\t}\n\t\tdata = [{label: 'BCM LEBT', data: lebtdata, color: \"red\"},\n {label: 'BCM RFQ', data: rfqdata, color: \"green\"},\n {label: 'BCM MEBT 1', data: mebt1data, color: \"pink\"},\n {label: 'BCM MEBT 2', data: mebt2data, color: \"black\"},\n {label: 'FC MEBT', data: fcmebtdata, color: \"yellow\"}];\n break;\n\tcase 3:\n lebtydata = datasources[\"pbi\"][\"LEBT-010:PBI-BCM-001:PRC-TR1-ArrayData.[35772:4:36872]\"][\"value\"];\n rfqydata = datasources[\"pbi\"][\"RFQ-010:PBI-BCM-001:PRC-TR1-ArrayData.[35772:4:36872]\"][\"value\"];\n mebt1ydata = datasources[\"pbi\"][\"MEBT-010:PBI-BCM-001:PRC-TR1-ArrayData.[35772:4:36872]\"][\"value\"];\n mebt2ydata = datasources[\"pbi\"][\"MEBT-010:PBI-BCM-002:PRC-TR1-ArrayData.[35772:4:36872]\"][\"value\"];\n dtl2ydata = datasources[\"pbi\"][\"DTL-010:PBI-BCM-001:PRC-TR1-ArrayData.[35772:4:36872]\"][\"value\"];\n fcdtl2ydata = datasources[\"pbi\"][\"DTL-010:PBI-FC-001:TRC2-ArrayData-Comp.[6500:1:6700]\"][\"value\"];\n startroi = 6500;\n\t\tendroi = 6700;\n for (i=0; i < lebtydata.length; i++) {\n\t\t\tlebtdata.push([((endroi-startroi)/lebtydata.length*i+startroi)/1000, lebtydata[i]]);\n\t\t}\n\t\tfor (i=0; i < rfqydata.length; i++) {\n\t\t\trfqdata.push([((endroi-startroi)/rfqydata.length*i+startroi)/1000, rfqydata[i]]);\n\t\t}\n for (i=0; i < mebt1ydata.length; i++) {\n \tmebt1data.push([((endroi-startroi)/mebt1ydata.length*i+startroi)/1000, mebt1ydata[i]]);\n\t\t}\n\t\tfor (i=0; i < mebt2ydata.length; i++) {\n\t\t\tmebt2data.push([((endroi-startroi)/mebt2ydata.length*i+startroi)/1000, mebt2ydata[i]]);\n\t\t}\n\t\tfor (i=0; i < dtl2ydata.length; i++) {\n\t\t\tdtl2data.push([((endroi-startroi)/dtl2ydata.length*i+startroi)/1000, dtl2ydata[i]]);\n\t\t}\n for (i=0; i < fcdtl2ydata.length; i++) {\n\t\t\tfcdtl2data.push([((endroi-startroi)/fcdtl2ydata.length*i+startroi)/1000, fcdtl2ydata[i]]);\n\t\t}\n\t\tdata = [{label: 'BCM LEBT', data: lebtdata, color: \"red\"},\n {label: 'BCM RFQ', data: rfqdata, color: \"green\"},\n {label: 'BCM MEBT 1', data: mebt1data, color: \"pink\"},\n {label: 'BCM MEBT 2', data: mebt2data, color: \"black\"},\n\t\t\t{label: 'BCM DTL 2', data: dtl2data, color: \"lime\"},\n {label: 'FC DTL 2', data: fcdtl2data, color: \"white\"}];\n break;\n\tcase 4:\n\t\treturn \"DLT4\";\n break;\n default:\n return \"NO Destination\";\n}\n\n\nreturn data;",
"url": "/data/api/v2/pvget/AccPSS:PSS-Area-1:PSSMode,BPROD:Ops:BState,NSO:Ops:SID,NSO:Ops:Msg,NSO:Ops:BeamAuthorization,NSO:Ops:ESSSystemPermit,FBIS::beam_permit_ok,PBI-FBPM01::Energy-R,TD-M:Ctrl-SCE-1:ScTable-RB,TD-M:Ctrl-SCE-1:BState-Sts,TD-M:Ctrl-SCE-1:BMod-Sel,TD-M:Ctrl-SCE-1:BDest-Sel",
},
{
"name": "Clock",
"type": "clock",
"settings": {
"refresh": 1,
"name": "Clock"
},
{
"name": "source",
"type": "JSON",
"settings": {
"url": "/data/api/v2/pvget/ISrc-CS:ISS-Magtr-01:MwRdy,ISrc-CS:ISS-Magtr-01:PulsHLvl-S,ISrc-CS:ISS-HVPS-01:Pwr-R,ISrc-010:PBI-BCM-001:FlatTopCurrentR,ISrc-CS:ISS-HVPS-01:Vol-R",
"use_thingproxy": true,
"refresh": 10,
"method": "GET"
}
},
{
"name": "rfq",
"type": "JSON",
"settings": {
"url": "/data/api/v2/pvget/RFQ-010:RFS-DIG-101:AI2-SMonAvg-Mag,RFQ-010:RFS-DIG-101:AI3-SMonAvg-Mag,RFQ-010:RFS-DIG-101:AI4-SMonAvg-Mag,RFQ-010:RFS-DIG-101:AI5-SMonAvg-Mag,RFQ-010:RFS-DIG-101:Dwn6-XAxis.[0:100:-1],RFQ-010:RFS-DIG-101:Dwn6-Cmp0.[0:100:-1],RFQ-010:RFS-EVR-101:RFSyncWdt-SP",
"use_thingproxy": true,
"refresh": 10,
"method": "GET"
}
},
{
"name": "pbi",
"type": "JSON",
"settings": {
"url": "/data/api/v2/pvget/RFQ-010:PBI-BCM-001:PRC-TR1-ArrayData.[35772:4:36872],RFQ-010:PBI-BCM-001:PRC-TR1-ArrayData.[5503:200:49530],LEBT-010:PBI-FC-001:TRC2-ArrayData-Comp.[6500:1:6700],LEBT-010:PBI-FC-001:TRC2-ArrayData-Comp.[1000:40:9000],LEBT-010:PBI-BCM-001:PRC-TR1-ArrayData.[35772:4:36872],LEBT-010:PBI-BCM-001:PRC-TR1-ArrayData.[5503:200:49530],MEBT-010:PBI-FC-001:TRC2-ArrayData-Comp.[6500:1:6700],MEBT-010:PBI-FC-001:TRC2-ArrayData-Comp.[1000:40:9000],MEBT-010:PBI-BCM-001:PRC-TR1-ArrayData.[35772:4:36872],MEBT-010:PBI-BCM-001:PRC-TR1-ArrayData.[5503:200:49530],MEBT-010:PBI-BCM-002:PRC-TR1-ArrayData.[35772:4:36872],MEBT-010:PBI-BCM-002:PRC-TR1-ArrayData.[5503:200:49530],DTL-010:PBI-FC-001:TRC2-ArrayData-Comp.[1000:40:9000],DTL-010:PBI-FC-001:TRC2-ArrayData-Comp.[6500:1:6700],DTL-010:PBI-BCM-001:PRC-TR1-ArrayData.[5503:200:49530],DTL-010:PBI-BCM-001:PRC-TR1-ArrayTimeMs.[5503:200:49530],DTL-010:PBI-BCM-001:PRC-TR1-ArrayData.[35772:4:36872],DTL-010:PBI-BCM-001:PRC-TR1-ArrayTimeMs.[35772:4:36872]",
}
},
{
"name": "dtl",
"type": "JSON",
"settings": {
"url": "/data/api/v2/pvget/DTL-010:RFS-DIG-101:AI2-SMonAvg-Mag,DTL-010:RFS-DIG-101:AI3-SMonAvg-Mag,DTL-010:RFS-DIG-101:AI4-SMonAvg-Mag,DTL-010:RFS-DIG-101:AI5-SMonAvg-Mag,DTL-010:RFS-DIG-101:Dwn6-XAxis,DTL-010:RFS-DIG-101:Dwn6-Cmp0,DTL-010:RFS-EVR-101:RFSyncWdt-SP",
"use_thingproxy": true,
"refresh": 10,