> by analogy waveformRecord has
>> db_post_events(prec, &prec->val, monitor_mask);
> note 'val' not 'bptr'.
The mca record has worked with no changes in 3.14, 3.15, and 7.0.3 with these lines:
mcaRecord.dbd:
recordtype(mca) {
include "dbCommon.dbd"
field(VERS,DBF_DOUBLE) {
prompt("Code Version")
special(SPC_NOMOD)
initial("1")
}
field(VAL,DBF_NOACCESS) {
prompt("Value")
special(SPC_DBADDR)
pp(TRUE)
size(4)
extra("void *val")
}
field(BPTR,DBF_NOACCESS) {
prompt("Buffer Pointer")
special(SPC_NOMOD)
interest(4)
size(4)
extra("void *bptr")
}
mcaRecord.c:
if (MARKED(M_VAL)) db_post_events(pmca,pmca->bptr,monitor_mask);
So it is posting monitors on the bptr field, not the val field, and it seems to work fine.
It looks like Pete is doing what the mca record does, but it is not working. Why?
Mark
________________________________
From: Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of Michael Davidsaver via Tech-talk <tech-talk at aps.anl.gov>
Sent: Wednesday, March 18, 2020 11:25 AM
To: Siddons, David
Cc: EPICS Tech Talk
Subject: Re: monitors on array variables
On 3/18/20 9:10 AM, Siddons, David via Tech-talk wrote:
> I have an IOC with several array PVs. I do not seem to be able to have them post monitors, so my display screens don't update. Has something changed between 3.14 and 3.15 which might cause this?
>
> The PVs are declared in the dbd file like this:
>
> field(SPCT,DBF_NOACCESS) {
> prompt("Value")
> special(SPC_DBADDR)
> pp(TRUE)
> extra("void * spct")
> }
>
> field(PSPCT,DBF_NOACCESS) {
> prompt("Buffer Pointer")
> special(SPC_NOMOD)
> interest(4)
> extra("void * pspct")
> }
>
> and the changed values are posted in record support like this:
>
> db_post_events(pscal,&(pscal->pspct),DBE_VALUE);
>
> Am I doing something wrong? This setup used to work in 3.14, although I haven't tried regressing to 3.14 for this code.
Try:
> db_post_events(pscal,&pscal->spct,DBE_VALUE);
by analogy waveformRecord has
> db_post_events(prec, &prec->val, monitor_mask);
note 'val' not 'bptr'.
https://github.com/epics-base/epics-base/blob/25bb966cbc4be1f2a47116a8b9ec940bc2270b12/modules/database/src/std/rec/waveformRecord.c#L325
- References:
- monitors on array variables Siddons, David via Tech-talk
- Re: monitors on array variables Michael Davidsaver via Tech-talk
- Navigate by Date:
- Prev:
Re: monitors on array variables Michael Davidsaver via Tech-talk
- Next:
Re: monitors on array variables Michael Davidsaver 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
<2020>
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: monitors on array variables Michael Davidsaver via Tech-talk
- Next:
Re: monitors on array variables Michael Davidsaver 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
<2020>
2021
2022
2023
2024
|