Experimental Physics and
| |||||||||||||||||
|
Yes, there is no read() routine for an output device support; it's the device support's init_record() that is responsible for doing the initial value readback from the hardware into RVAL if it can, (or into VAL and returning 2 instead of 0). If you set PINI to YES and the device support does not provide an initial rval value, the record is processed after database initialization, and would write 0 to the hardware, irrespective of what the hardware currently holds? Unless the record has a constant value set in the DOL field (which does not require OMSL=closed_loop), or you have an initHook() to a save-restore routine that saved the old VAL before reboot and has already restored it. It also depends whether 0.0 is inside the DRVL/DRVH limits; if not, IVOA and IVOV may also control what happens, and the simulation fields too. However in general, you probably only want to set PINI on an output record if the device support can do the hardware value read in init_record(), if you have a save-restore initHook() routine, or if the record is in closed-loop mode and you can calculate what its initial value should be. - Andrew -- Dear God, I didn't think orange went with purple until I saw the sunset you made last night. That was really cool. - Caro
| ||||||||||||||||
ANJ, 10 Aug 2010 |
·
Home
·
News
·
About
·
Base
·
Modules
·
Extensions
·
Distributions
·
Download
·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing · |