-------------------------------------------------------------- Field Type DCT Initial Access Modify Rec Proc PP Monitor -------------------------------------------------------------- VAL USHORT No 0 Yes No Yes Yes DOL INLINK Yes 0 No No N/A No OMSL GBLCHOICE Yes 0 Yes Yes No Yes NOBT SHORT Yes 0 Yes No No OUT OUTLINK Yes 0 No No N/A No B0 UCHAR No 0 Yes Yes No Yes B1 UCHAR No 0 Yes Yes No Yes B2 UCHAR No 0 Yes Yes No Yes B3 UCHAR No 0 Yes Yes No Yes B4 UCHAR No 0 Yes Yes No Yes B5 UCHAR No 0 Yes Yes No Yes B6 UCHAR No 0 Yes Yes No Yes B7 UCHAR No 0 Yes Yes No Yes B8 UCHAR No 0 Yes Yes No Yes B9 UCHAR No 0 Yes Yes No Yes BA UCHAR No 0 Yes Yes No Yes BB UCHAR No 0 Yes Yes No Yes BC UCHAR No 0 Yes Yes No Yes BD UCHAR No 0 Yes Yes No Yes BE UCHAR No 0 Yes Yes No Yes BF UCHAR No 0 Yes Yes No Yes RVAL ULONG No 0 Yes No Yes Yes ORAW ULONG No 0 Yes No No No RBV ULONG No 0 Yes No Yes No ORBV ULONG No 0 Yes No No No MASK ULONG No 0 Yes No No No MLST ULONG No 0 Yes No No No LALM ULONG No 0 Yes No No No SHFT ULONG No 0 Yes No No No SIOL OUTLINK Yes 0 No No N/A No SIML INLINK Yes 0 No No N/A No SIMM GBLCHOICE No 0 Yes Yes No No SIMS GBLCHOICE Yes 0 Yes Yes No No IVOA GBLCHOICE Yes 0 Yes Yes No No IVOV USHORT Yes 0 Yes Yes No No --------------------------------------------------------------
----------------------------------------------------------------------------------------------- Name Summary Description ----------------------------------------------------------------------------------------------- VAL Value Field This is the value to be sent to OUT. DOL Desired Output If DOL is a database or channel access link and OMSL is Location (Input CLOSED_LOOP, then VAL is read from DOL. Link) OMSL Output Mode Select This field has either the value SUPERVISORY or CLOSED_LOOP. DOL is used to determine VAL only if OMSL has the value CLOSED_LOOP. By setting this field, the record can be switched between supervisory and closed loop mode of operation. While in closed loop mode, the VAL field cannot be set via dbPuts. NOBT Number of Bits Number of bits in hardware mask. OUT Output Link This field is used by the device support routines to decide where to send output. For soft records, it can be a constant, a database link, or a channel access link. If the link is a constant, the result is no output. B0,...,BF Bit 0 Value, Bit 1 Each represents a bit of the word to be output. Value, ... RVAL Raw Data Value RVAL is the value to be written to the hardware device. It is determined by the record support module using VAL as the bit values stored in B0,...BF. The value is also shifted left SHFT bits. ORAW Old Raw Data ORAW is used to decide if monitors should be triggered for Value RVAL at the same time monitors are generated for changes in VAL. RBV Read Back Value This is the actual read back value obtained from the hardware itself or from the associated device driver. It is the responsibility of the device support routine to give this field a value ORBV Old Read Back ORBV is used to decide if monitors should be triggered for Value RBV at the same time monitors are triggered for changes in VAL. MASK Mask Mask used by device support routine to read hardware register. Record support sets low order NOBT bits. Device support can shift this value. MLST Monitor Last Value when last monitor for value changes was triggered. LALM Last Alarmed Value when last change of state alarm was issued. SHFT Shift Number of bits to shift values obtained from VAL. SIMM Simulation Mode Simulation mode process variables. Refer to Chapter 3, Section "Simulation Mode" on page 13 for more information. SIML Simulation Mode Location SIOL Simulation Value Location SIMS Simulation Mode Alarm Severity IVOA Invalid Alarm Whenever the record is put into INVALID alarm severity Output Action IVOA specifies an action. See Chapter 3, Section "Invalid Alarm Output Action" on page 14 for more information IVOV Invalid Alarm Output Value -----------------------------------------------------------------------------------------------
This routine next checks to see that device support is available.The routine next checks to see if the device support write routine is defined. If either device support or the device support write routine does not exist, an error message is issued and processing is terminated.
If DOL is a constant, then VAL is initialized to its value and UDF is set to FALSE.
MASK is cleared and then the NOBT low order bits are set.
If device support includes init_record, it is called.
init_common is then called to determine if any states are defined. If states are defined, SDEF is set to TRUE.
If device support returns success, VAL is then set from RVAL and UDF is set to FALSE.
-------------------------------------------------------------------------------------- Name Summary Description -------------------------------------------------------------------------------------- PACT Processing Active See Chapter 2, Section "Database Common: Field Descriptions" on page 4 for descriptions. DPVT Device Private UDF VAL Undefined NSEV New Alarm Severity NSTA New Alarm Status NOBT Number of Bits Number of hardware bits accessed. They must be consecutive. OUT Output Link This field is used by the device support routines to locate its output. RVAL Raw data value This is the value to be written to OUT. RBV Read Back Value It is the responsibility of the device support modules to set this field. MASK Mask This is a mask used to read the hardware. Record support sets the low order NOBT bits. The device support routine can shift the bits. The device support routine should perform the shift in in init_record. SHFT Shift This can be set by the device support module at init_record time. --------------------------------------------------------------------------------------
report(FILE fp, paddr)Not currently used.
init()This routine is called once during IOC initialization.
init_record(precord)This routine is optional. If provided, it is called by the record support init_record routine. If MASK is used, it should be shifted if necessary and SHFT given a value.
get_ioint_info(int cmd,struct dbCommon *precord,IOSCANPVT *ppvt)This routine is called by the ioEventScan system each time the record is added or deleted from an I/O event scan list. cmd has the value (0,1) if the record is being (added to, deleted from) an I/O event list. It must be provided for any device type that can use the ioEvent scanner.
write_mbboDirect(precord)This routine must output a new value. It returns the following values:
If the OUT link type is PV_LINK, then dbCaAddInlink is called by init_record.
write_mbboDirect calls recGblPutLinkValue to write the current value of VAL. See Chapter 3, Section "Soft Output" on page 13 for details.