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  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: New edm widgets
From: "Sinclair, John William" <[email protected]>
To: "Young, James R." <[email protected]>
Cc: "[email protected]" <[email protected]>
Date: Wed, 28 Aug 2013 10:10:09 -0400
Hi James,

I'm not exactly sure what you would like to accomplish but it sounds as if you would like to use an existing screen as a template. This is doable, but the process is not integrated into the object creation menus.

Suppose you have a template screen that contains one control and one readback. The control PV might be given as $(db):$(pv)Ctl and the readback as $(db):$(pv)Read. This example assumes a simplistic naming convention (which you must externally administer and about which edm knows nothing). In this case, $(pv) is the parameter to be varied implying that all names will be of the form $(db):<pvName>Ctl and $(db):<pvName>Read. Clearly, no one would use a scheme this simple but it might make the example easier to follow.

Before saving the screen you open the "Display Properties" dialog and click the button at the bottom labeled "Template Params".  This dialog contains a multiline text entry field labeled "Info" and 30 parameter fields labeled "Param1" through "Param30". In the info field, you may put simple free-form instructions like "Enter the value for pv". For this example, you would enter "pv" into the "Param1" field. After making these entries, save the file.

To use this template file in another screen, you do the following:

  1. create a new screen (or open an existing one)
  2. Middle click and choose "Insert File as Template"; a dialog pops up
  3. Choose the file from the file selection dialog; a dialog pops up displaying Info and containing a text entry field labeled "pv" (from above)
  4. Enter the value for "pv"

After the "OK" button is clicked, the contents of the template file are inserted and each occurrence of "pv" in the above names is replaced with the contents entered in step 4 above.

The template file dialog box uses the current path location so you might have a template directory containing a hierarchy of subdirectories representing various categories. You would select the appropriated path location before performing the "Insert File as Template" process. Clearly, the work flow could be improved to make things more natural but no one to my knowledge (except myself) even uses this feature.

Hope this is helpful,
John Sinclair



-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Young, James R.
Sent: Tuesday, August 27, 2013 6:58 PM
To: [email protected]
Subject: New edm widgets

Hello,

I would like to create widgets that show up as Objects in the edm builder.  Instead of just Graphics/Line or Monitors/Meter (for example) there would also be an option like "Controls/NEWOBJECT," where NEWOBJECT is a widget that accepts PVs and has a list of fields that should be completed.  I realize you can do this by simply creating an embedded window called NEWOBJECT and referencing it wherever you need to, but this often seems to lead to a complicated process of locating the original file to edit it.  


To my knowledge, the only way to add a new object is to actually write a new class file (like activeLineClass.cc) and header file (like activeLineClass.h) and add the edmObjects file like "activeLineClass $(EDMLIBS)/libEdmBase.so Graphics Lines."  Is this the only way to do this?  Or is there possibly a way to create an embedded window and translate this to an object.  

Thank You,
James


References:
New edm widgets Young, James R.

Navigate by Date:
Prev: Re: StreamDevice communication problems Dirk Zimoch
Next: Is there an official EPICS collaboration membership? Jeong Han Lee
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: New edm widgets Young, James R.
Next: has anyone used ipc-100 of ADVANTECH company as softioc? Silver
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 20 Apr 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·