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 | 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 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: DRVL, DRVH, HOPR, LOPR |
From: | Dirk Zimoch <[email protected]> |
To: | Luedeke Andreas <[email protected]> |
Cc: | [email protected] |
Date: | Mon, 13 Feb 2012 09:21:10 +0100 |
Luedeke Andreas wrote:
Questions: 1. how does one (especially the client) know that the limits are really set? And not default values.to 1.) As pointed out previously: The client does not know it. Of course DRVH/L are already handled by the record: if DRVH=DRVL=0 then only a "0" can be written to the hardware2. if it performs a check that HOPR!=LOPR then what if one defines an upper limit (but does not need a low one) and vice-versa.
This is wrong. DRVH and DRVL are only used if DRVH > DRVL.That means of course in particular if DRVH=DRVL=0 then ANY value can be written.
Thus a client can check for DRVH > DRVL or DRVH!=0 and DRVL!=0. Dirk
But HOPR and LOPR are not used by all clients. If you want to use them in any client, take care that they are set for ALL records that are meant to be used by any client.to 2.) The only way to allow HOPR and LOPR to be set individually would be to change the default: HOPR=+Inf and LOPR=-Inf. But this is not really useful: e.g. if you want to present a control slider you need two limits to just show it. And if just one client has a problem with one unset limit, then you'll need to set all limits. Just drop the idea of not setting HOPR or LOPR for any relevant PV. Every PV has to have a valid range. Andreas