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 | 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: pC_->doCallbacksEnum() coming too early |
From: | Ralph Lange via Core-talk <core-talk at aps.anl.gov> |
To: | EPICS Core Talk <core-talk at aps.anl.gov> |
Date: | Wed, 28 Feb 2024 09:53:35 +0100 |
Hi Torsten,
Ø The PLC gives us some names for enmums, resulting in a call toØ pC_->doCallbacksEnum()
doCallbacksEnum() is only intended to be called when an enum value changes at run-time, i.e. after iocInit. For enums that the driver determines at initialization you should simply implement the asynPortDriver::readEnum() method. Device support will call your driver during iocInit to read the enum values/strings/severities for all records with enum VAL fields.
testAsynPortDriver has an example here:
It also has an example of using doCallbacksEnum(), which it does when the vertical gain is changed at run time.