Download presentation
Presentation is loading. Please wait.
Published byCecilia Hamilton Modified over 9 years ago
1
Janez Golob, Jernej Kamenik, Rok Šabjan, Matej Šekoranja rok.sabjan@cosylab.com EPICS Meeting, Aix-en-Provence, 2010-06-02 Visual DCT for IRMIS and pvData (Version 3)
2
2 VDCT – a complete rewrite Motivation and Goals Architecture Technology Choices Current Status EPICS Collaboration Meeting 2 - 4 June 2010, Aix-en-Provence, France
3
3 Motivation Dramatic changes in EPICS More options for persistence (IRMIS) Different data model (pvData) EPICS Collaboration Meeting 2 - 4 June 2010, Aix-en-Provence, France
4
4 Nobody wants to edit this! EPICS Collaboration Meeting 2 - 4 June 2010, Aix-en-Provence, France <structure name = "plantSystemConfigurationParameters" extends = "plantSystemConfigurationParametersType"/>
5
5 Why re-write? 9-year old architecture does not allow big changes Spaghetti code to be avoided Future extensions or integrations possible IRMIS CSS? SDD (ITER)? EPICS Collaboration Meeting 2 - 4 June 2010, Aix-en-Provence, France
6
6 Goals of VDCT rewrite Immediate (visible) Visual database configuration tool with full EPICS v4 compliance (pvData) Allow for/support other related IRMIS control system views (cabling, etc..) Retain if not enhance the existing functionality of VDCT for EPICS v3. CapFast styles and symbols Behind the stage Clean architecture (model and GUI more separated) Flexible graphics based on proven technologies
7
7 Modular Architecture Engineer drawing style tool Spreadsheet editing tool Hierarchical Tree view Model (EPICS v3, pvData) defines editing, selection, structure rules, Actions contains Nodes, Edges, Primitives, Properties Persistence tool convertis the edited and created model designs into (and from) well defined formats (EPICS v3,4, IRMIS) and storing (reading) them into (from) local files or remote databases. Finally, the Application framework is responsible for interfacing the various aspects around the possibly multiple model designs (or aspects of one) together into a coherent stand-alone application.
8
8 Technology choices Programming language: Java 1.6. Drawing tool framework: Netbeans Visual library (decided after a thorough comparison with Eclipse Graphical Editing Framework)
9
9 Footnote: VL vs. GEF If present, features are marked as Outstanding support is marked with
10
10 Status of VDCT3: EPICS 3 Model
11
11 Spreadsheet Editor for EPICS 3 EPICS Collaboration Meeting 2 - 4 June 2010, Aix-en-Provence, France
12
12 Status of VDCT3: EPICS 4 Model EPICS Collaboration Meeting 2 - 4 June 2010, Aix-en-Provence, France
13
13 EPICS 4 Hierarchical View EPICS Collaboration Meeting 2 - 4 June 2010, Aix-en-Provence, France
14
14 Status of VDCT3 (1/3) General features Drawing view Spreadsheet view Hieararchy view Local configuration support Rendering Custom widgets per module, customize widget colors drawing of graphic primitives bird view magnification on cursor zoom all, select all auto de-cluttering of widgets on canvas snap-to-grid print canvas Editing Copy/Cut/Paste Mutliple Undo/Redo Drag & Drop moving of (multiple) nodes Property inspector (grouping/editing by type) naming convention specification & validation Keyboard accelerator key shortcuts
15
15 Status of VDCT3 (2/3) pvData support I/O open file import file into existing model save/save as file Editing static includes (edit, inspect) new record (by type) add/remove/set fields (scalar, structure) add/remove links view/edit substructures (hierarchy support) edit/inspect includes
16
16 Status of VDCT3 (3/3) EPICSv3 and IRMIS support I/O open file import file into existing model save/save as file Rendering integration of CapFast epics symbol library Editing handling of dbd includes new record (by type) set/unset fields add/remove links record morphing support IRMIS integration open single IOC from remote db location
17
17 VDCT3 future? Complete VDCT 2.6 feature set command-line capabilities plugin support DB template support still rudimentary Complete IRMIS integration browse available IOCs write modifications to remote PVs interface to other IRMIS layers (cabling, etc.) Support for editing pvData structure definitions Integration into CSS? Interface to other configuration data
18
18 Conclusions VisualDCT (3.0-beta) is available for download on sourceforge: Be careful how to start VisualDCT with appropriate model (see examples) Use it and send feedback! Use cases and best practices are yet to be defined (pvData) Thanks to Bob Dalesio and his NSLS2 team! https://sourceforge.net/projects/visualdct/
19
EPICS Collaboration Meeting 2 - 4 June 2010, Aix-en-Provence, France Page intentionally left blank
20
20 Model Design (1/2) Model (EPICS v3, pvData) defines editing, selection, structure rules, Actions contains Nodes, Edges, Primitives, Properties Node (Record, Structure) contains Pins, Properties Pin (Field) source/sink of Edges contains Properties Edge (Link) connects Pins contains Properties Model Node PinPinPinPin Pin Node PinPinPinPin Edge
21
21 Model Design (2/2) Primitive (text (html), geom. object) visual object with Properties Property container of meta information linked by type to editing rules, visual editors
22
22 Visual Design ModelScene Synchronizes model and visualization (event- driven) Pin/NodeWidget specifies rendering rules of Node/Pin in Scene depending on state Widget Factory creates Widgets for Nodes/Pins/Edges specifies global rendering rules for Scene
23
23 Application Design Module specifies Model; Widget Factory; Persistence layer; determined by configuration 3rd party Module implementations can be seamlessly interfaced and included into the application at startup Model (Structure, Rules, Actions) Rendering (Widgets, Connection routing) Persistence (Filesystem, Remote, Database)
24
24 Application Design & Implementation Details Swing GUI: support for applets, webstart, custom L&F Java2D printing java.awt.datatransfer: system-wide Copy/Paste Properties: persistence of user configuration and settings Action chains: unlimited Undo/Redo java.util.concurrent: model/GUI concurrency
25
25 Big Changes in EPICS DB Design Visual database creating and editing tool for EPICS v4 (pvData) Support for arbitrary hierarchies in both templates and primitive types Capability to interact with IRMIS RDB The information on encapsulation, cabling, housing is contained in a single descriptive database Enables linking of various control system aspects of the same component
26
26 VisualDCT Today visual configuration tool for EPICS written in Java (platform independent) open source product designed for EPICS version 3 simple “electronic drawing style” application
27
27 Existing Features (VDCT 2.6) Hierarchies support Templates support Debug plugins (JCA/JIOC) CapFast conversion tool Channel Archiver /Alarm Handler configuration plugins Spreadsheet view (for large databases)
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.