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  <20082009  2010  2011  2012  2013  2014  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  <20082009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: sequence compilation in multi-device IOC
From: Emmanuel Mayssat <[email protected]>
To: Mark Rivers <[email protected]>
Cc: epics <[email protected]>
Date: Thu, 17 Apr 2008 11:20:47 -0700
Mark,

Thank you for your answer. There is a problem with this compilation
scheme (which is why I asked the question in the first place):
>From then on, you need to have the sequencer installed prior to
compiling the driver.

This issue is actually mostly due to the registrar entry in ipSupport
which is not conditional on the SNCSEQ compilation/makefile variable.
Now, one could say, well I could have 2 Support.dbd files, but that
means that at the IOC level I need to understand/remember how the device
driver was implemented. 

Worse, if the device is improved/changed at a later time, the IOC
compilation could break.

Is it possible to have conditional includes in the ipSupport.dbd file?

--
E

On Sat, 2008-03-08 at 17:48 -0600, Mark Rivers wrote:
> Hi Emmanuel,
>  
> I'm not sure I understand your question, but in general state programs ARE included in the respective EPICS device libraries.
>  
> Here is part of a Makefile for a module called "ip"
>  
> ******************
> LIBRARY_IOC_solaris = -nil-
> LIBRARY_IOC_DEFAULT += ip
> DBD += ipSupport.dbd
> DBD += ipVXSupport.dbd
> DBD += ip.dbd
> DBD += ipVX.dbd
> ip_SRCS += devXxStrParm.c
> ip_SRCS += devXxEurotherm.c
> ip_SRCS += devAiHeidND261.c
> ip_SRCS += devAiMKS.c
> ip_SRCS += Keithley2kDMM.st
> ip_SRCS += Federal.st
> ip_SRCS += devMPC.c
> ip_SRCS += devGP307gpib.c 
> ******************
> Note that the library includes a seq program, Keithley2kDMM.st.
>  
> Here is part of ipSupport.dbd
> 
>  
> 
> ******************
> 
> # Pfeiffer TPG261 Vacuum Controller
> device(ai,        INST_IO, devAiTPG261,    "asyn TPG261")
> device(bi,        INST_IO, devBiTPG261,    "asyn TPG261")
> device(mbbi,      INST_IO, devMbbiTPG261,  "asyn TPG261")
> device(stringin,  INST_IO, devSiTPG261,    "asyn TPG261")
> device(ao,        INST_IO, devAoTPG261,    "asyn TPG261")
> device(bo,        INST_IO, devBoTPG261,    "asyn TPG261")
> device(mbbo,      INST_IO, devMbboTPG261,  "asyn TPG261")
> 
>  
> registrar(Keithley2kDMMRegistrar)
> ******************
>  
> Note that it includes the line to register the seq program.
>  
> Any EPICS application that wants to use this seq program simply includes the ip library and ipSupport.dbd.
>  
> In the st.cmd for an IOC that uses that application you just execute the "seq" command to start the seq program.
>  
> Does this answer your question?
>  
> Mark
> 
>  
> ________________________________
> 
> From: [email protected] on behalf of Emmanuel Mayssat
> Sent: Sat 3/8/2008 5:27 PM
> To: epics
> Subject: sequence compilation in multi-device IOC
> 
> 
> 
> Hello,
> 
> I have two different devices drivers.
> Each one of them:
> * uses the sequencer
> * compiles a basic/simpleOC that works
> * build dset/rset epics libraries
> 
> I notice that the state programs are compiled in the IOC directly.
> That is, they are not included in the respective epics device libraries
> 
> Now, I would like to create a more complex IOC that supports all of my
> devices. How can I compile in the state programs? (without referencing
> directly the individual st file ?)
> 
> Cheers,
> --
> E
> 
> 
> 
> 
> 
> 


Replies:
RE: sequence compilation in multi-device IOC Emmanuel Mayssat
RE: sequence compilation in multi-device IOC Mark Rivers
References:
sequence compilation in multi-device IOC Emmanuel Mayssat
RE: sequence compilation in multi-device IOC Mark Rivers

Navigate by Date:
Prev: Re: autosave issues David Maden
Next: RE: sequence compilation in multi-device IOC Emmanuel Mayssat
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  <20082009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: sequence compilation in multi-device IOC Mark Rivers
Next: RE: sequence compilation in multi-device IOC Emmanuel Mayssat
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  <20082009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 02 Sep 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·