Draft: Synoptic view feature
Description
This is a continuation branch from synoptic-view original work
Based on branch: develop 2.8.0
Motivation
The synoptic view is a must have view for a control system. It represents schematically the system which is under control.
This synoptic version takes up the principles of the taurus-svgsynoptic software and thus fully compatible with any svg synoptic including attributes and description. Although the feature level is not that reach.
How to run this feature
This branch is dependant on:
- taranta-dashboard having an additionnal schema for storing the synoptics
- the taranta-dashboard instance is accessible to /synoptics (see the src/setupProxy.js)
Quick start
For a quick start, clone the Taranta Suite branch synoptic.
git clone -b synoptic git@gitlab.com:tango-controls/web/taranta-suite.git
cd taranta-suite
make all
make run
Then, go to http://localhost:22484/testdb/synoptic.
Demo
Once in the synoptic view:
- log in as user1
- import a synoptic and select the svg file in taranta/public/images/cryo.svg (this is not the best svg for a demo but it's a start)
- click start to run the synoptic with tango
Additional feature
To align with the feature of taurus-synoptic:
-
Zoom click. Area where a click goes to the next zoom level. -
css for the all synoptic -
JS for the all synoptic (quid of security issue) -
Open specific panel when clicking on the component
And to get better:
-
Inspector for simple edit of svg -
documentation for synoptic view
Question marked
- Import synoptic should maybe take a all synoptic config instead of a sole svg file
- Code duplication. A majority of the code is copied from the dashboard
Issues
-
Limited to 200 devices, otherwise tangogql crashes. Seems related to same the slow subscription impacting taurus. -
The view is not cleaned after deleting the dashboard. -
double data subscription in both svgwidget and SvgComponent -
missing a proper validate svg in synoptic view -
centering of the main synoptic -
thumbnail zoom area is shifted
Tests included/Docs Updated?
-
Included for each change/fix? -
Passing? (Merge will not be approved unless this is checked) -
Docs updated? -
New packages used/requires npm install? -
Toggle added for new features?