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  <20162017  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  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Multiple layers of DB templates?
From: "Konrad, Martin" <[email protected]>
To: "[email protected]" <[email protected]>
Date: Wed, 6 Apr 2016 22:06:45 +0000
Ok, with your hints I figured it out :-) The three important pieces of 
information are:

1. dbLoadTemplate only supports a subset of the MSI keywords. The 
"substitute" keyword is only supported by MSI.
2. There are three different types of files:
    a) DB files (may or may not contain macros; macro substitution is 
supposed to happen at dbLoadDatabase time) - recommended file name: foo.db
    b) template files (DB files that are supposed to be expanded by MSI 
at build time)
    c) substitution files (substitution file syntax according to section 
6.12.1 of AppDevGuide) - recommended file name: foo.substitutions
3. The EPICS build system can automatically expand template/substitution 
files:
    b) It will automatically expand foo.template to foo.db if one adds 
foo.db to the list of DB files in the Makefile.
    a) It will automatically expand foo.substitutions to foo.db if one 
adds foo.db to the list of DB files in the Makefile.

With this information my problem was easy to solve: All I had to do was 
rename my mydevice.db template file to mydevice.template to make sure 
it's expanded by MSI. This pulls in myinput.db as often as needed for 
the device (using MSI's "substitute" and "include" keywords). In the end 
I get a long DB file that I can refer to in my substitutions file. The 
substitutions file is expanded as before at dbLoadTemplate time for 
maximum flexibility (I could as well have MSI expand it).

Thanks for your help!

Martin

-- 
Martin Konrad
Control System Engineer
Facility for Rare Isotope Beams
Michigan State University
640 South Shaw Lane
East Lansing, MI 48824-1321, USA
Tel. 517-908-7253
Email: [email protected]


References:
Multiple layers of DB templates? Konrad, Martin

Navigate by Date:
Prev: Training on asyn and areaDetector at the EPICS Collaboration Meeting Mark Rivers
Next: RE: PointGrey's image is always black Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Multiple layers of DB templates? Andrew Johnson
Next: set baud rate not work 梁雅翔
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 15 Jul 2016 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·