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  <20102011  2012  2013  2014  2015  2016  2017  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017 
<== Date ==> <== Thread ==>

Subject: Re: How to force a record to generate a monitor
From: Andrew Johnson <anj@aps.anl.gov>
To: tech-talk@aps.anl.gov
Date: Mon, 24 May 2010 10:34:35 -0500
Hi Zen,

On Sunday 23 May 2010 18:17:31 Szalata, Zenon M. wrote:
> I am initializing a mbbo record with "menu" strings from my device driver. 
> This is done on demand and it works well.  Unfortunately, the record does
> not issue a monitor when that is done so EDM does not get that the record
> now has new set of strings.  If I toggle EDM to edit then to execute it
> gets the new strings.
>
> How can I nudge the mbbo record from my device driver to issue a monitor?
> I have access to the records data structure.

Which version of Base are you using?  If you have R3.14.11 there is a new 
event type called DBE_PROPERTY which we added to signal this kind of metadata 
change to the clients.  It currently only gets generated by the mbb[io] record 
types when someone modifies the state values or strings; you can see that by 
looking in the special() routine for those record types.

Unfortunately there are probably no clients that actually support this yet, 
but IIRC the approach is backwards compatible if you want to add it to your 
favourite client(s).  The change required would be to replace the initial 
ca_get_callback() using the DBR_GR_ENUM with a ca_create_subscription() for 
DBE_PROPERTY events and make sure that the client expects it.  The server will 
generate one such event at connection time even if the IOC code never posts 
another one, but those IOCs that do generate such events will update their 
clients whenever the channel properties are flagged.

HTH,

- Andrew
-- 
The best FOSS code is written to be read by other humans -- Harald Welte


References:
How to force a record to generate a monitor Szalata, Zenon M.

Navigate by Date:
Prev: RE: fsmRecord preview Dalesio, Leo
Next: running IOC on 80188 processor running DOS tanushyam bhattacharjee
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017 
Navigate by Thread:
Prev: RE: How to force a record to generate a monitor tom.cobb
Next: running IOC on 80188 processor running DOS tanushyam bhattacharjee
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017 
ANJ, 02 Sep 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·