EPICS Qt Fall Meeting October 2014 Saclay

Slides:



Advertisements
Similar presentations
Introduction to Computers Section 6A. home The Operating System (OS) The operating system (OS) is software that controls the interaction between hardware.
Advertisements

Wir schaffen Wissen – heute für morgen A.C.Mezger, Paul Scherrer Institut, Switzerland caQtDM, an EPICS display manager with Qt Paul Scherrer Institut.
The Ribbon Standard to all Office 2007 applications Organized by feature and functionality Navigation Pane Access to all objects in the current database.
Microsoft SharePoint 2010 technology for Developers
Goals Give you a feeling of what Eclipse is.
Wayne Lewis Australian Synchrotron Beamline Controls Design and Implementation.
UNIT-e Roadmap Technology Day - November Where were we in 2006?  VB 6 Applications  Database Manager  Managers/Proformas  Office Builder  RG.
Logistics SIG Sunday, September 28, :30 PM Moscone West – 3003 Welcome!
Wir schaffen Wissen – heute für morgen caQtDM: a Qt-based EPICS display manager, status report Helge Brands, Anton Mezger, Paul Scherrer Institut At the.
Getting Started with Windows ® XP 1 Getting Started with Windows ® XP By Robert T. Grauer Maryann Barber.
Wir schaffen Wissen – heute für morgen A.C.Mezger An EPICS Display manager with Qt The EPICS display manager MEDM is a very powerful tool with many features.
Wir schaffen Wissen – heute für morgen A.C.Mezger An EPICS Display manager with Qt.
EDM Screen Display Using PYTHON Python and the CLS and me.
EPICS Qt Update Paul Martin 1. Australian Synchrotron 3GeV, 216m circumference synchrotron 8 Beamlines 12 Software Engineers IMBL – Worlds Widest Beam.
Control System Studio (CSS)‏ Kunal Shroff EPICS Training Meeting 07/10/2010.
Electronic Research Administration (eRA) OER, OD, National Institutes of Health.
JAS3 + AIDA LC Simulations Workshop SLAC 19 th May 2003.
Instant Messaging for the Workplace A pure collaborative communication tool that does not distract users from their normal activities.
STAC usage at Diamond Richard Fearn Software Engineer.
Presentation of the SITS:Vision Accessibility Module by Alex Johnson.
Standalone Firefly Tools with an embedded Tomcat 7 No additional dependencies besides Java 1.8.
1 What’s the difference between DocuShare 3.1 and 4.0?
Control System Studio (CSS) Overview Kay Kasemir, July 2009.
Implementation In this presentation… –Methodology –Software Development Life Cycle.
CSS Developments at Diamond Light Source Mark Heron, on behalf of Will Rogers, Matt Furseman, Tom Cobb, Giles Knap, Nick Battam, Ian Gillingham and Friederike.
How to Operate Prosilica GC1380H CCD? Power up & connect Prosilica to PC via Ethernet cable (Cat 5e or better); Use the secondary Ethernet card labeled.
Australian Nuclear Science & Technology Organisation GumTree A Java Based GUI Framework for Beamline Experiments Tony Lam (ANSTO) Andy Götz (ESRF) Ferdi.
CSS – Control System Studio
EDM Update John Sinclair ORNL. EDM Update Minor feature additions Limits New env vars Optional widget attributes Modifications that support conversion.
Mobile First by Oleksandr Krasnokutskyi SoftServe Inc. July 6, 2013.
Introduction to KE EMu
McIDAS-V Status and Demonstration by Gail Dengel Tom Whittaker University of Wisconsin-Madison SSEC 2005 MUG Meeting October 27-28, 2005 Madison, WI.
April 27, 2006 The New GANGA GUI 26th LHCb Software Week C L Tan
User focused applications with epicsQt Andrew Rhyder Andrew Starritt 1.
A quick tour. Section Overview Look at UI in game engines using the Unity engine as an example. Intro: UI In UnityFrame-based UIDevelopment ResourcesExample.
APPX Design Environment Futures Planned development.
Giulio Eulisse, Northeastern University CHEP’04, Interlaken, 27th Sep - 1st Oct, 2004 CHEP’04 IGUANA Interactive Graphics Project:
CHANGING THE VOLUME Click the volume icon in the bottom right hand corner of the screen.
Copyright © 2013 MyGraphicsLab / Pearson Education DREAMWEAVER INTERFACE MYGRAPHICSLAB: ADOBE DREAMWEAVER CS6.
© 2015 Lexmark International, Inc. All rights reserved. December 8 – 16 th, x Enovia Upgrade Training.
7/8/2016 OAF Jean-Jacques Gras Stephen Jackson Blazej Kolad 1.
QGate Partner Showcase Duplicate Data: Prevention and Cure (& CTI) Rowland Dexter Managing Director.
WIR SCHAFFEN WISSEN – HEUTE FÜR MORGEN caQtDM: future use of a display manager Helge Brands, Anton Mezger :: Paul Scherrer Institut, Switzerland Spring.
Chapter 8 Using Document Collaboration, Integration, and Charting Tools Microsoft Word 2013.
KDE Plasma Mobile workspaces Marco Martin. What is Plasma?
Introducing Windows Applications Lesson 1. Objectives.
Introducing Windows Applications Lesson 1. Objectives.
Software Operating System Applications BIOS.
Microsoft Word Objectives
Qt GUI and IDE development in EPICS
CST 1101 Problem Solving Using Computers
Newly updated World eBooks
TPC Desktop 2015 Updated Interface
The Desktop Screen image displayed when a PC starts up A metaphor
TPC Desktop 2015 Updated Interface
COSC-4840 Software Engineering
KDE mobile: Plasma Marco Martin 1.
Integrating Word, Excel, Access, and PowerPoint
Introduction to Computers
Mobile Application Development with MeeGo™ - Programming with SDK
CaQtDM: a Qt-based EPICS display manager, status report Helge Brands, Anton Mezger, Paul Scherrer Institut At the Paul Scherrer Institut the new Qt-based.
caQtDM: future use of a display manager
Collaborative Business Solutions
Next-Gen GUI for Web Services John D
05 | Desktop Applications
Shirley Breytenbach Application Consultant
Enhanced agent workspace for messaging
CA16R405 - Mobile Application Development (Theory)
Presentation transcript:

EPICS Qt Fall Meeting October 2014 Saclay Andrew Rhyder - Australian Synchrotron Fall Meeting October 2014 Saclay I’ll be talking about Qt within the EPICS community, and an update on the Qt framework from the Australian Synchrotron.

But before I begin, I’d like to invite you all to Melbourne next year when the Australian Synchrotron will be hosting the 2015 International Conference on Accelerator and Large Experimental Physics Control Systems. Which will be proceeded by a one day EPICS workshop, I’m told.

Presentation Summary Qt Intro Qt Within the EPICS community Qt Update I’ll be talking about Qt itself, how the EPICS community uses and can use Qt. In particular I’ll cover recent developments with the EPICS Qt product from the Australian Synchrotron and where we are headed with it.

What is Qt Qt is a cross-platform application and UI framework for developers using C++. It can be used under an open source licence. Qt has had a good track record of ongoing development and expanding use. Strong community based governance. What is Qt? The first couple of points here come direct from the Qt Project web site: Qt is a cross-platform framework for developing applications and user interfaces It builds on C++, and it’s open source. Qt has a great track record of ongoing development with an expanding user base. Qt is also a well managed open source project with a governance structure that works well for its user base.

Qt is an ecosystem An active open source community supporting documentation, forums, and tools Any applications we produce come with a lot of support from that community. Qt is more than a coding framework. Its an ecosystem where an active community supports documentation, forums, and tools. Any application we produce can draw on the support of a community of hundreds of thousands of other developers.

Qt roadmap Traditional desktop Embedded systems RTOS (including VxWorks) Touch screens Mobile platforms One of the reasons I’m attached to Qt and have high expectations for it is the greater Qt community. Anyone developing in Qt, discovers the support the community provides fairly quickly. And it is that community moving Qt forward now. The Qt project roadmap shows that as well as running Qt on Linux, Windows and Mac OS X desktops, Qt is moving towards: - Embedded Android, Linux, Windows - RTOS. VxWorks and others - Touch screens - Mobile platforms: Android, IOS, WinRT (under development) All of this is available now. And it’s in these areas Qt will be developing. What will we do in these areas? I don’t know. We can imagine a few things. But the point is Qt offers some interesting horizons.

Can we benefit from Qt? Already developers within our facilities are using Qt, and have been for a long time. Some are larger projects that have been presented here, others are more under the radar. Developers find Qt a valuable tool for producing applications. That’s good. A few of those projects have been designed to be shared, and that’s better, but we need to work on ensuring applications with similar scope are complimentary, are easy to get hold of and easy to use outside the facilities where they were designed.

Can we benefit from Qt? The Paul Scherrer Institute: MEDM conversion tools The Australian Synchrotron: Unifying GUI system Lyncean Technologies: Python physics and science applications. An example of this is what we have been doing with PSI… The Paul Scherrer Institute needed an medm conversion tool – the produced caQtDM and have added many features to this beyond a conversion tool. The Australian Synchrotron needed a unifying GUI system for all new developments – We developed EPICSQt. These two applications are effective tools, they are not competitors; they are complimentary in scope. Lyncean Technogies is producing python based physics and scientific applications for their accelerator. They want to use tools like these in those applications and they want that to be as easy as possible – easier than it currently is. Lyncean has begun an investigation supported by the nuclear physics office of the Department of Energy into how collaboration tools, systems, forums, whatever can be embedded within the EPICS community for the development of Qt based applications. Emanual Mayset is managing this program and an early output has been facilitating plans for the merger of the Paul Scherrer Institute’s Qt based GUI system and the Australian Synchrotron’s Qt based GUI system.

Collaboration results – EPICSQT + caQtDM Just like before – only combined! Common documentation Common packaging Includes all functionality from the Australian Synchrotron application Includes PSI’s MEDM conversion tools and extended functionality That merger is underway: We are making one product form two that both facilities can then use. We are still using Qt’s simple Form Designer for producing screens. Still use a simple GUI presentation tool. All the functionality from the Australian Synchrotron application is there. Plus PSI’s MEDM conversion tools and other features. Merging the two products was not a big ask, technically. One of the strengths of Qt is how easily Qt components can be mixed and matched. EPICSQt could already be used within the caQtDM framework, and now caQtDM can now be used within the EPICSQt. Non technical changes are also not difficult but are probably more important to making this combined application accessible. Common documentation. Common and convenient packaging and installation. Hopefully we can keep this moving in the following months to the point where we have a single suite of two complimentary products.

EPICSQt At the Australian Synchrotron we have placed particular emphasis on enabling the easy production of GUIs that focus on beamline users and their processes, rather a pure presentation of EPICS data. We did, by the way, produce a list of requirements covering all the accelerator GUIs within the Australian Synchrotron and ensured we have added functionality to cover all those requirements, but the focus of recent development has been beamline use.

EPICSQt At the Australian Synchrotron we have placed particular emphasis on enabling the easy production of GUIs that focus on beamline users and their processes, rather a pure presentation of EPICS data. We did, by the way, produce a list of requirements covering all the accelerator GUIs within the Australian Synchrotron and ensured we have added functionality to cover all those requirements, but the focus of recent development has been beamline use.

EPICSQt - differentiation UI presentation application that is not restricted to medm behaviour Docks Tabs Application specific menu bars and toolbars Widget set that is not restricted to medm behaviour At the Australian Synchrotron we have placed particular emphasis on enabling the easy production of GUIs that focus on beamline users and their processes, rather a pure presentation of EPICS data. We did, by the way, produce a list of requirements covering all the accelerator GUIs within the Australian Synchrotron and ensured we have added functionality to cover all those requirements, but the focus of recent development has been beamline use.

EPICSQt update At the Australian Synchrotron we have placed particular emphasis on enabling the easy production of GUIs that focus on beamline users and their processes, rather a pure presentation of EPICS data. We did, by the way, produce a list of requirements covering all the accelerator GUIs within the Australian Synchrotron and ensured we have added functionality to cover all those requirements, but the focus of recent development has been beamline use.

EPICSQt update - GUIs for Beamline Users At the Australian Synchrotron we have placed particular emphasis on enabling the easy production of GUIs that focus on beamline users and their processes, rather a pure presentation of EPICS data. We did, by the way, produce a list of requirements covering all the accelerator GUIs within the Australian Synchrotron and ensured we have added functionality to cover all those requirements, but the focus of recent development has been beamline use.

EPICSQt update User levels Plotting Stripcharts EPICSQt now includes: User level management Stripchart and plotting tools

EPICSQt update PV Scratch pad tool Logging - PV Scratch pad tool - User levels - Logging

EPICSQt update Configuration Save/Restore Improved cut and paste - More documentation - Drag/drop, and Cut and paste is improved

EPICSQt update Dynamic tables PV Recipes User script management - Dynamic tables. UI designers can easily develop nested tables of sub-forms where macros are automatically set up according to the sub form’s position in the table - PV Recipes User script manager Note all the previous tools are widgets that can be used individually as shown here, or embedded within a larger GUI.

EPICSQt update Documentation PV properties tool PV properties tool More documentation

EPICSQt update Menu and tool bar customisation Enables the tool presenting the displays – QEGui – to be perform more like a custom user application and less like a display manager. On the right is QEGui with its standard menu bar, and on the left with a set of custom menus. The menu items can launch new windows, create docks, run commands, launch associated applications, and interact with widgets in the display. For example, a menu item could be added to provide zoom options for an embedded Image widget. Every other application you use has a set of menus supporting the purpose of the application. So if a beamline user is looking at their sample positioning application they should see meus related to sample positioning, not menus related to a GUI presentation tool you didn’t even know you were using.

EPICSQt update Imaging Interactive AreaDetector integration Interactive user tasks Analysis tools Local presentation options A lot of development has gone into the Image widget recently. The goals have been: Provide an interactive interface to areaDetector. For example, selecting regions of interest, or selecting image profile ordinates. Provide an interactive interface for common user functions such as sample positioning. Provide the most commonly used functions available in common imaging tools such as ImageJ. For example, thick line arbitrary profiling, recording and playback, snapshots. Provide local user presentation functions. For example brightness and contrast, rotation, flipping, clipping. While a lot of these functions can be performed through area detector plugins, they are intended to allow individual image manipulation that does not affect any other consumer of the image. The Image widget can take an image stream from CA, from an mpeg stream (typically from the mpeg plugin). The widget works exactly the same regardless of the image source providing the same interaction and tools. This ability to take an input from multiple sources shows the sharp internal distinction the EPICSQt framework has between the presentation widgets and the data classes feeding them. This separation will make it easier to introduce other data sources. For example, a data model where the data flow is controlled by the application or, in the case of the image widget, a V4 based source to make use of Diamond’s PVAccess areaDetector plugin.

Get involved Are you interested in Python python@epicsqt.org Are you interested in the EPICSQt project specifically? andrew.rhyder@epicsqt.org join@epicsqt.org www.epicsqt.org Do you want to know more? Do you want to let us know what is on your ‘must have’ list? Do you want to get involved? Here are some email addresses if you are interested in Python with Qt, The EPICSQt application (merged) or EPICS and Qt generally. There’s the web site. Join over 100 other people subscribing to the EPICS Qt newsletter. And of course, there is me. Please feel free to talk any time. AreaDetector demo if time Videos if time Now’s a good time if you have any questions.