The problem is that then all asyn port drivers that are expecting to receive strings need to handle two different cases, one where the length being passed includes the nil, and one where it does not. When the user changes from a stringout to a waveform record because their string just exceeded 40 characters, the driver receives something fundamentally different.
Is this what we want?
I am not proposing that we change the ability of the waveform record to handle arbitrary data, because I am not changing the behavior for the waveform record. I am proposing changing the behavior of the stringout record to match the waveform record.
Mark
________________________________
From: Eric Norum [[email protected]]
Sent: Saturday, July 23, 2016 6:21 PM
To: Mark Rivers
Cc: [email protected] list
Subject: Re: Inconsistency in devAsynOctet for stringout and waveform records
So the device at the other end of the wire will see ‘\0’ characters? That doesn’t seem right to me.
I think that the existing behaviour is correct. stringout records send strings — and no trailing ‘\0’. waveform records send blocks of arbitrary bytes.
On Jul 23, 2016, at 4:11 PM, Mark Rivers <[email protected]<redir.aspx?REF=vQWMibMa4aKg9zRQSmd-ru4UccacVDJ4hzXfNTBOjuhdxhxnULPTCAFtYWlsdG86cml2ZXJzQGNhcnMudWNoaWNhZ28uZWR1>> wrote:
So writing a string to a waveform record with Channel Access or dbpf also sets NORD to include the nil byte.
So my conclusion is that the stringout behavior in devAsynOctet is incorrect, it is not including the nil byte in the call to writeIt, but it should be.
Mark
- Replies:
- Re: Inconsistency in devAsynOctet for stringout and waveform records Eric Norum
- References:
- Inconsistency in devAsynOctet for stringout and waveform records Mark Rivers
- Re: Inconsistency in devAsynOctet for stringout and waveform records Eric Norum
- RE: Inconsistency in devAsynOctet for stringout and waveform records Mark Rivers
- Re: Inconsistency in devAsynOctet for stringout and waveform records Eric Norum
- Navigate by Date:
- Prev:
RE: Inconsistency in devAsynOctet for stringout and waveform records Mark Rivers
- Next:
Re: Inconsistency in devAsynOctet for stringout and waveform records Eric Norum
- 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: Inconsistency in devAsynOctet for stringout and waveform records Eric Norum
- Next:
Re: Inconsistency in devAsynOctet for stringout and waveform records Eric Norum
- 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
|