Presentation is loading. Please wait.

Presentation is loading. Please wait.

Janez Golob, Jernej Kamenik, Rok Šabjan, Matej Šekoranja EPICS Meeting, Aix-en-Provence, 2010-06-02 Visual DCT for IRMIS and pvData.

Similar presentations


Presentation on theme: "Janez Golob, Jernej Kamenik, Rok Šabjan, Matej Šekoranja EPICS Meeting, Aix-en-Provence, 2010-06-02 Visual DCT for IRMIS and pvData."— Presentation transcript:

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)


Download ppt "Janez Golob, Jernej Kamenik, Rok Šabjan, Matej Šekoranja EPICS Meeting, Aix-en-Provence, 2010-06-02 Visual DCT for IRMIS and pvData."

Similar presentations


Ads by Google