EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  <20202021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  <20202021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: PVI Prototype - a framework for specifying the interface to an EPICS driver in a single YAML file
From: "Peterson, Kevin M. via Tech-talk" <tech-talk at aps.anl.gov>
To: "Yendell, Gary (DLSLtd,RAL,LSCI)" <gary.yendell at diamond.ac.uk>, "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov>
Date: Wed, 20 May 2020 16:55:30 +0000
Gary,

I saw the YAML file in the documentation.  It looks like creating the 
YAML file is more work than modifying the files that could be created 
based on it by hand.  I'm struggling to see the advantages of this 
approach for the motor support, but I'm probably missing something.

Kevin

On 5/20/20 4:05 AM, Yendell, Gary (DLSLtd,RAL,LSCI) wrote:
> Hi Kevin,
> 
> The ParamSet files in all of these branches are generated by hand. I did 
> this initially to verify the class hierarchy works as expected by 
> running some IOCs.
> 
> On readthedocs there is an example of generated files for pilatus. The 
> missing feature at this point the one time conversion to the YAML file. 
> Once this is done it should be simple enough to generate all of these fies.
> 
> I was also hoping for some feedback on the new design and any problems 
> it could cause before committing to it. Specifically the idea of moving 
> towards using the paramSet explicitly (rather that implicitly via 
> inheritance), which will require updating all parameter accesses in the 
> drivers. The generation logic itself is very simple, so it is not an 
> issue to update it once we have the correct design.
> 
> Cheers,
> Gary
> ------------------------------------------------------------------------
> *From:* Peterson, Kevin M. <kmpeters at anl.gov>
> *Sent:* 19 May 2020 21:03
> *To:* Yendell, Gary (DLSLtd,RAL,LSCI) <gary.yendell at diamond.ac.uk>; 
> tech-talk at aps.anl.gov <tech-talk at aps.anl.gov>
> *Subject:* Re: PVI Prototype - a framework for specifying the interface 
> to an EPICS driver in a single YAML file
> Gary,
> 
> I'm most familiar with the motor module, so my questions will be focused
> on the changes to motor.
> 
> Should there be a YAML file in the dls-controls fork of motor?
> 
> I see the new ParamSet file:
> 
> 
> https://github.com/dls-controls/motor/blob/pvi/motorApp/MotorSrc/asynMotorControllerParamSet.h
> 
> Was asynMotorControllerParamSet.h created by hand or generated based on
> a YAML file?
> 
> Kevin
> 
> On 5/19/20 12:03 PM, Yendell, Gary (DLSLtd, RAL, LSCI) via Tech-talk wrote:
>> Hi!
>> 
>> At DLS we have been working on an idea of Tom Cobb's making: PVI (PV 
>> Interface).
>> 
>> There is an outline hosted on readthedocs: 
>> https://pvi.readthedocs.io/en/latest/contents.html
>> 
>> As a brief summary, the goal of PVI is to consolidate the duplicated 
>> boiler plate of an EPICS driver (templates, low-level screens and the 
>> parameter creation in the c++ code) into one place, allowing these 
>> pieces to be generated instead.
>> 
>> 
>> The main purpose of this particular message is to point out the WIP 
>> branches of some key modules that have been updated for this framework:
>> #
>> 
>> asyn - https://github.com/dls-controls/asyn/tree/pvi
>> 
>> ||
>> #
>> 
>> ADCore - https://github.com/dls-controls/ADCore/tree/pvi
>> 
>> #
>> 
>> ADSimDetector - https://github.com/dls-controls/ADSimDetector/tree/pvi
>> 
>> #
>> 
>> ADPilatus - https://github.com/dls-controls/ADPilatus/tree/pvi
>> 
>> #
>> 
>> motor - https://github.com/dls-controls/motor/tree/pvi
>> 
>> #
>> 
>> pmac - https://github.com/dls-controls/pmac/tree/pvi
>> 
>> 
>> Other modules that we would like to extend this to are include further 
>> areaDetector drivers as well as streamDevice, but this has not been 
>> pursued as yet.
>> 
>> We are hoping for people to take an interest in this idea so that it can 
>> be adopted more widely than just at DLS, so any thoughts and comments 
>> would be appreciated, especially from those who have an interest in 
>> these modules and can comment on the new structure.
>> 
>> Cheers,
>> Gary
>> 
>> -- 
>> 
>> This e-mail and any attachments may contain confidential, copyright and 
>> or privileged material, and are for the use of the intended addressee 
>> only. If you are not the intended addressee or an authorised recipient 
>> of the addressee please notify us of receipt by returning the e-mail and 
>> do not use, copy, retain, distribute or disclose the information in or 
>> attached to the e-mail.
>> Any opinions expressed within this e-mail are those of the individual 
>> and not necessarily of Diamond Light Source Ltd.
>> Diamond Light Source Ltd. cannot guarantee that this e-mail or any 
>> attachments are free from viruses and we cannot accept liability for any 
>> damage which you may sustain as a result of software viruses which may 
>> be transmitted in or with the message.
>> Diamond Light Source Limited (company no. 4375679). Registered in 
>> England and Wales with its registered office at Diamond House, Harwell 
>> Science and Innovation Campus, Didcot, Oxfordshire, OX11 0DE, United Kingdom
>> 
> 
> -- 
> 
> This e-mail and any attachments may contain confidential, copyright and 
> or privileged material, and are for the use of the intended addressee 
> only. If you are not the intended addressee or an authorised recipient 
> of the addressee please notify us of receipt by returning the e-mail and 
> do not use, copy, retain, distribute or disclose the information in or 
> attached to the e-mail.
> Any opinions expressed within this e-mail are those of the individual 
> and not necessarily of Diamond Light Source Ltd.
> Diamond Light Source Ltd. cannot guarantee that this e-mail or any 
> attachments are free from viruses and we cannot accept liability for any 
> damage which you may sustain as a result of software viruses which may 
> be transmitted in or with the message.
> Diamond Light Source Limited (company no. 4375679). Registered in 
> England and Wales with its registered office at Diamond House, Harwell 
> Science and Innovation Campus, Didcot, Oxfordshire, OX11 0DE, United Kingdom
> 

Replies:
Re: PVI Prototype - a framework for specifying the interface to an EPICS driver in a single YAML file Yendell, Gary (DLSLtd, RAL, LSCI) via Tech-talk
References:
PVI Prototype - a framework for specifying the interface to an EPICS driver in a single YAML file Yendell, Gary (DLSLtd, RAL, LSCI) via Tech-talk
Re: PVI Prototype - a framework for specifying the interface to an EPICS driver in a single YAML file Peterson, Kevin M. via Tech-talk
Re: PVI Prototype - a framework for specifying the interface to an EPICS driver in a single YAML file Yendell, Gary (DLSLtd, RAL, LSCI) via Tech-talk

Navigate by Date:
Prev: Re: PVI Prototype - a framework for specifying the interface to an EPICS driver in a single YAML file Yendell, Gary (DLSLtd, RAL, LSCI) via Tech-talk
Next: Re: Displaying string Waveform in CaQtDM Paul Nord via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  <20202021  2022  2023  2024 
Navigate by Thread:
Prev: Re: PVI Prototype - a framework for specifying the interface to an EPICS driver in a single YAML file Yendell, Gary (DLSLtd, RAL, LSCI) via Tech-talk
Next: Re: PVI Prototype - a framework for specifying the interface to an EPICS driver in a single YAML file Yendell, Gary (DLSLtd, RAL, LSCI) via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  <20202021  2022  2023  2024 
ANJ, 21 May 2020 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·