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 2025 | 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 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: StreamDevice return state error |
From: | "Kasemir, Kay via Tech-talk" <tech-talk at aps.anl.gov> |
To: | "patrick.e.barrett at boeing.com" <patrick.e.barrett at boeing.com>, "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov>, "Zimoch Dirk (PSI)" <dirk.zimoch at psi.ch> |
Date: | Wed, 29 Jun 2022 12:24:01 +0000 |
Hi:
> > > The error "Record does not accept input" happens when you send a string (parsed with %s) to a record with an enum
> > > VAL
> > > like your mbbi, but the string does not match any of the enum strings in the record. > > > As your record only has "STANDBY", "OPERATE" and "SELFTEST", it does not accept the input "MONITOR". > > The mbbi should be in INVALID/CALC alarm state after that. > Except.... that your record is "I/O Intr". Such records get all the available input but process only matching input. > Non-matching input is silently ignored. That is by design how StreamDevice implements I/O Intr. That all makes sense.
SCAN=I/O Intr checks everything but only reacts on match.
Anything else is assumed to be meant for some other record and thus ignored.
Maybe the issue could be avoided by changing the message from
error .. does not accept input 'MONITOR'
to something like
info .. value 'MONITOR' ignored because outside of expected values.
?
Cheers,
Kay
|