Not Yet Another EPICS Display Manager Kay Kasemir
- Slides: 21
Not Yet Another EPICS Display Manager!? Kay Kasemir, Xihui Chen kasemirk@ornl. gov chenx 1@ornl. gov Kobe EPICS Meeting October 2009
EDM … serves us well at the SNS – Stable – Many deployed screens But: • Somewhat dated, especially the ‘edit’ part: – Fixed-size configuration panels; pop up in unexpected places – Limited editing of shared properties for multiple widgets – Limited integration with other tools • Keep maintaining it? – Coded in C++ for Unix, X 11, Motif – Fedora dropped Open. Motif 2 Managed by UT-Battelle for the U. S. Department of Energy
Use CSS Synoptic Display (SDS)? Good Ideas – Java, SWT (Windows, Linux GTK, Mac OS X) – Eclipse Graphical Editor Framework (GEF) – Generic Data Access Layer (DAL) for EPICS, Tine, Simulated PVs, … Every widget property can be ‘dynamic’ “Label” with static “Text” Label with “Text” linked to PV 3 Managed by UT-Battelle for the U. S. Department of Energy
Are simple things simple? • EDM: Add Text Update 1) Create Text Update 2) Enter PV Name 3) Save & Run • EDM widgets with PV connectivity: ü ü ü Show the PV’s value (with units) Show PV name on middle-button click Reflect PV’s severity via e. g. border color Use PV’s display limits as default range for “meter” widget etc. Indicate ‘disconnected’ state via e. g. white-out appearance • SDS: Same accomplished via dynamic properties – – – 4 ‘Text’: Link to PV’s value Border color: Link to PV’s severity and connection state Tool Tip: Show PV’s name Involved manual process “Initializers” automate this, but we couldn’t reach EDM functionality Managed by UT-Battelle for the U. S. Department of Energy
Re-think Dynamic Properties • EDM describes meaning – “Text Update” for PV, “Alarm Sensitive” • SDS’ dynamic properties implement representation – Text = value of PV – Border = red if value of PV’s severity is 2, yellow if …, white if severity is 3 or connection state is … 5 Managed by UT-Battelle for the U. S. Department of Energy
Concept for Best OPI, Yet (BOY) Prototype • Best of SDS ü Java portability ü CSS integration ü Great GEF editing • Best of EDM ü Simple things (Label, Text Update, …) are simple ü Configure the meaning, leave representation to tool • Combined with ü Production-tested PV layer ü PV-triggered scripts can make everything dynamic 6 Managed by UT-Battelle for the U. S. Department of Energy
Basic “Editor” Perspective • Navigator, Outline, Palette, Properties can be 7 Managed by UT-Battelle for the U. S. Department of Energy
Adding Widgets • Select widget on Palette – Draw outline in display or drag/drop to display • Configure Properties – Label ‘Text’ also editable via double-click – Can configure common properties of all selected widgets 8 Managed by UT-Battelle for the U. S. Department of Energy
Editor Features (GEF) • Snap-to • Context menu, keyboard shortcuts: Geometry – Copy/cut/paste/delete – Change front/back order – Full undo/redo • Snap to grid, geometry, align, distribute • Duplicate widgets via Alt-Drag • Select any types of widgets, edit common properties • Zoom, Outline view 9 Managed by UT-Battelle for the U. S. Department of Energy
PV Connectivity 1. Create “Text Update” 2. Enter “PV Name” EPICS CA, local, simulated, … 3. Save & Run Simple things are simple: By default, widgets use PV Metadata (units, precision, limits, …) and are sensitive to alarms 10 Managed by UT-Battelle for the U. S. Department of Energy (Note use of rulers to align widgets)
Macros • Macros can be defined a) In CSS preferences b) As ‘display’ properties c) In actions that invoke related displays • Use: a) $(macro_name) b) ${macro_name} • Every property is available as a macro; Example: Tooltip 11 Managed by UT-Battelle for the U. S. Department of Energy
Screen Navigation • Idea: Minimize number of open screens. • Similar to Web Browser links: – Default: Related displays replace the current display. – Optional open in ‘tabs’ or new window Displays in ‘Tabs’ – Allow previous/next navigation over display history 12 Managed by UT-Battelle for the U. S. Department of Energy
Scripts… – are written in Java. Script – can be attached to any Display or Widget – are executed whenever one of the input PVs change – can read/write widget properties, PVs, open dialogs, access any Java code Example: Dynamic Visibility 13 Managed by UT-Battelle for the U. S. Department of Energy
More Script Examples • React to operator input, possibly correct it 14 Managed by UT-Battelle for the U. S. Department of Energy
More Scripting Ideas • Arbitrary ‘color rules’ • Animation 15 Managed by UT-Battelle for the U. S. Department of Energy
Widgets … • So far 23 widgets – More to come – Eclipse plug-in mechanism; add site-specific widgets • Arc, polygon, … – Rotation – Fill-level • Buttons – “Are you sure? ” – Password 16 Managed by UT-Battelle for the U. S. Department of Energy
Grouping Container ‘Group’ in EDM: 1. 2. Rectangle around widgets Label on top of Rectangle for group name Looks OK, hard to edit/move Grouping Container Example: 17 1. Create from context of selected widgets, or drop widgets into it 2. Configure name, move, (auto-)size, even remove. 3. When moving widgets, highlight indicates if they’re still ‘inside’ container Managed by UT-Battelle for the U. S. Department of Energy Optical feedback when moving widget
Linking Container • Like EDM ‘embedded display’ • Common EDM use: ‘Tabs’ 1. Invisible button writes to local PV 2. Rectangle etc. show/hide depending on value of that PV 3. Embedded display shows different file depending on PV Plan for OPI (not yet): Designated ‘Tab’ support 18 Managed by UT-Battelle for the U. S. Department of Energy
XY Graph Widget • Chart types: Line, Scatter, Bar, Steps, Area, . . . • Five Zoom Types, Panning, Auto Scale • Add/Remove Annotations, Undo/Redo, Take snapshot. • Multiple axes: Linear, Log, Date/time • Configure properties during runtime • Generic SWT code, usable outside of CSS – Plan: Replace Data Browser’s plot 19 Managed by UT-Battelle for the U. S. Department of Energy
Transition from EDM • Translator for basics in the works – Rectangles, Label, Text Update, Text Entry, … – Includes handling of colors • Harder to translate: – “Tabs” simulated by invisible Message Buttons writing to local PVs, … – Rectangles that are really meant to create a ‘Group’ – Invisible related display buttons that could now be ‘actions’ attached to visible widgets 20 Managed by UT-Battelle for the U. S. Department of Energy
Summary • Initial Demo available for download from http: //ics-web. sns. ornl. gov/css/products. html • Please try it out: – Online Help: CSS Menu Help/Help Content/CSS Applications/Display – Tutorial for first steps: See Online Help • Send comments on issues or suggestions! 21 Managed by UT-Battelle for the U. S. Department of Energy
- What is epic convention
- Yet another compiler compiler
- Yarn yet another
- Yet another day
- Bash framework
- Difference between random scan and raster scan
- In random scan display, the frame buffer holds …
- Cathode ray tube in computer graphics
- The mysteries of harris burdick a strange day in july
- Who said i have not yet begun to fight
- Macbeth literary device
- Key points of romeo and juliet
- I am not yet born oh hear me poem
- Still not there yet
- So live that when thy summons comes to join
- If not yet done
- Jeopardylabs past simple
- English 9 vocabulary unit 1
- Senior manager vs general manager
- Portfolio manager synergy manager parental developer
- What is blank verse example
- Epics channel access