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: write to a single element of an array field
From: Ben Franksen via Tech-talk <tech-talk at aps.anl.gov>
To: "Johnson, Andrew N." <anj at anl.gov>
Cc: EPICS tech-talk <tech-talk at aps.anl.gov>
Date: Sat, 14 Mar 2020 10:17:58 +0100
Am 14.03.20 um 00:05 schrieb Johnson, Andrew N.:
> Ralph was talking about the server-side filters that were added to
> Base in 3.15.

I thought so.

> Documentation for the filters available in 3.15.7 is
> available at https://epics.anl.gov/base/R3-15/7-docs/filters.html and
> the source code for those filters is found on the 3.15 branch in
> src/std/filters, or for 7.0 under modules/database/src/std/filters.
> The filter sources have a registrar routine that adds a Channel
> Filter Plugin by calling chfPluginRegister(); the IOC implementation
> is inside the dbChannel.c and dbChannel.h parts of the src/ioc/db
> directory.

Thanks, that is quite useful. I haven't looked at the code yet, but I
read the docs and I really like that you guys thought of adding nice and
concise syntax sugar for the array filters. So, if I use the latest 3.15
release (for both server and client), can I expect

  caget my_pv.VAL[3]

to work out of the box, or do I have to enable something first?

> However as Ralph said there isn’t a way for a filter to
> modify data that is being written to the IOC yet, so far we only have
> methods for filtering on reads (similar paths are used for both Get
> and Monitor operations).

Hmm. So the existing machinery for server side filters first has to be
extended to cover writes, too. How deep do you think this addition has
to go? I hope it doesn't involve having to delve into the innards of the
CA server implementation to add appropriate hooks there. OTOH, since
filters are now supported for DB links, too, I guess CA doesn't come
into play and the change would be limited to the core database code.

As a side note, given the world-wide Corona crisis, most facilities will
probably shut down operation pretty soon if they didn't already do that
(ours did, for external users at least). Our administration has allowed
us to request extended home office work as a contribution to mitigate
the problem by reducing the infection rate. I mention this only because
it means that during the coming weeks (perhaps months) we may actually
find the time to do some serious hacking...

Cheers
Ben

Attachment: pEpkey.asc
Description: application/pgp-keys


Replies:
Re: write to a single element of an array field Ralph Lange via Tech-talk
References:
write to a single element of an array field Benjamin Franksen via Tech-talk
Re: write to a single element of an array field Ralph Lange via Tech-talk
Re: write to a single element of an array field Ben Franksen via Tech-talk
Re: write to a single element of an array field Johnson, Andrew N. via Tech-talk

Navigate by Date:
Prev: Re: write to a single element of an array field Johnson, Andrew N. via Tech-talk
Next: Re: write to a single element of an array field Ralph Lange 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: write to a single element of an array field Johnson, Andrew N. via Tech-talk
Next: Re: write to a single element of an array field Ralph Lange 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, 14 Mar 2020 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·