Experimental Physics and Industrial Control System
Benjamin Franksen wrote:
>
> The only solution I can think of: in case LINR == SLOPE, record support
> has to save the values of ESLO and EOFF and reinstall them after
> dset->init_record has been called. Yes, it's ugly.
Oooh, well spotted, I missed that bit...
> With the wisdom of hindsight it was of course a bad idea not to keep
> device support operations orthogonal. The initializing call to
> dset->special_linconv should be done from the record support rather than
> device support.
Agreed, but given the large number of device support that exists for ai
and ao there's no way we could change that in the existing record types.
Your idea above of saving and restoring ESLO and EOFF will have to do for
SLOPE conversions in 3.14.
For 3.13 I've done the following:
1. Made ESLO and EOFF configurable in the a*Record.dbd files.
2. Removed special_linconv() from devAiSoftRaw.c and devAoSoftRaw.c
3. Changed a*Record.c in both init_record() so that EOFF is only set to
EGUL if LINR=LINEAR and a pdset->special_linconv() routine exists
4. Change the special() routines to only do the following if LINR=LINEAR
and a special_linconv() routine exists:
a) Save EOFF and ESLO values for checks below
b) Set EOFF=EGUL and call pdset->special_linconv()
c) Call db_post_events(EOFF) if the EOFF value was changed
d) Call db_post_events(ESLO) if the ESLO value was changed
That should be sufficient to make Soft Raw support useful in the next 3.13
release.
For 3.14, I've added the following as well as doing all the above:
5. Add a SLOPE state to the menuConvert.dbd
6. In init_record() save the EOFF and ESLO values before calling
pdset->init_record(), and restore them immediately afterwards if
LINR=SLOPE
That adds SLOPE conversions for all other analog device types in 3.14.
Any more comments from anyone before I test and commit all this stuff?
- Andrew
--
The world is such a cheerful place when viewed from upside-down
It makes a rise of every fall, a smile of every frown
- Replies:
- Re: RAWF, RAWL Benjamin Franksen
- References:
- RE: RAWF, RAWL Redman, Russell O.
- Re: RAWF, RAWL Marty Kraimer
- Re: RAWF, RAWL Benjamin Franksen
- Re: RAWF, RAWL Marty Kraimer
- Re: RAWF, RAWL Andrew Johnson
- Re: RAWF, RAWL Benjamin Franksen
- Re: RAWF, RAWL Andrew Johnson
- Re: RAWF, RAWL Benjamin Franksen
- Re: RAWF, RAWL Andrew Johnson
- Re: RAWF, RAWL Benjamin Franksen
- Navigate by Date:
- Prev:
Re: RAWF, RAWL Marty Kraimer
- Next:
Re: RAWF, RAWL Benjamin Franksen
- 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: RAWF, RAWL Marty Kraimer
- Next:
Re: RAWF, RAWL Benjamin Franksen
- 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