Hi Ralph,
Thanks for the clear explanation!
> 2. The server must be told to show fields that are supposed to be long strings as arrays of char to Channel Access. This is a data type issue on the server side, and done by adding the '$' to the PV name.
Can you point me to where this is documented? The only place I have been able to find it is in the 3.14 Release Notes: https://epics.anl.gov/base/R3-14/12-docs/RELEASE_NOTES.html
It cannot find it in a reference document, i.e.
- Application Developer's Guide 3.16.2 https://epics.anl.gov/base/R3-16/2-docs/AppDevGuide.pdf
- Channel Access Reference Manual https://epics.anl.gov/base/R7-0/4-docs/CAref.html
<https://epics.anl.gov/base/R7-0/4-docs/CAref.html>- Channel Filters https://epics.anl.gov/base/R7-0/4-docs/filters.html
Thanks,
Mark
From: Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of Ralph Lange via Tech-talk <tech-talk at aps.anl.gov>
Sent: Friday, July 10, 2020 8:54 AM
To: EPICS Tech Talk
Subject: Re: Long String support in phoebus
On Fri, 10 Jul 2020 at 15:34, Mark Rivers via Tech-talk <tech-talk at aps.anl.gov<mailto:tech-talk at aps.anl.gov>> wrote:
[...]
It would probably be good to mention that the .VAL$ syntax is required in the lso record documentation here:
https://epics.anl.gov/base/R7-0/4-docs/lsoRecord.html
Actually, there is nothing special about the long string output record.
There are *two* sides to the issue (client and server), and - depending on the field type of the record - there are *two* related switches you may have to activate for long strings to work across Channel Access.
1. The client must be told to send a string as an array of char, and to show an array of char as a string. This is a representation issue on the client side, and done using '-S' with the command line tools.
2. The server must be told to show fields that are supposed to be long strings as arrays of char to Channel Access. This is a data type issue on the server side, and done by adding the '$' to the PV name.
The waveform record doesn't need the server side switch, because its native data type of the VAL field is already an array of char.
Any string type field that is longer than 40 characters (DESC, link fields, lsi/lso VAL fields, ...) need the '$' switch to be shown as array of char instead of string.
Cheers,
~Ralph
- Replies:
- Re: Long String support in phoebus Johnson, Andrew N. via Tech-talk
- References:
- Long String support in phoebus Nonn, Patrick via Tech-talk
- Re: Long String support in phoebus Mark Rivers via Tech-talk
- Re: Long String support in phoebus Nonn, Patrick via Tech-talk
- Re: Long String support in phoebus Mark Rivers via Tech-talk
- Re: Long String support in phoebus Ralph Lange via Tech-talk
- Navigate by Date:
- Prev:
Re: Long String support in phoebus Ralph Lange via Tech-talk
- Next:
Re: Long String support in phoebus Johnson, Andrew N. 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: Long String support in phoebus Ralph Lange via Tech-talk
- Next:
Re: Long String support in phoebus Johnson, Andrew N. 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
|