Table of Contents
Previous Chapter
--------------------------------------------------------------
Field Type DCT Initial Access Modify Rec Proc PP
Monitor
--------------------------------------------------------------
VAL ENUM No 0 Yes Yes Yes Yes
DOL INLINK Yes 0 No No N/A No
OMSL GBLCHOICE Yes 0 Yes Yes No No
NOBT SHORT Yes 0 Yes No No
OUT OUTLINK Yes 0 No No N/A No
ZRVL ULONG Yes 0 Yes Yes No Yes
ONVL ULONG Yes 0 Yes Yes No Yes
TWVL ULONG Yes 0 Yes Yes No Yes
THVL ULONG Yes 0 Yes Yes No Yes
FRVL ULONG Yes 0 Yes Yes No Yes
FVVL ULONG Yes 0 Yes Yes No Yes
SXVL ULONG Yes 0 Yes Yes No Yes
SVVL ULONG Yes 0 Yes Yes No Yes
EIVL ULONG Yes 0 Yes Yes No Yes
NIVL ULONG Yes 0 Yes Yes No Yes
TEVL ULONG Yes 0 Yes Yes No Yes
ELVL ULONG Yes 0 Yes Yes No Yes
TVVL ULONG Yes 0 Yes Yes No Yes
TTVL ULONG Yes 0 Yes Yes No Yes
FTVL ULONG Yes 0 Yes Yes No Yes
FFVL ULONG Yes 0 Yes Yes No Yes
ZRST STRING Yes Null Yes Yes No Yes
ONST STRING Yes Null Yes Yes No Yes
TWST STRING Yes Null Yes Yes No Yes
THST STRING Yes Null Yes Yes No Yes
FRST STRING Yes Null Yes Yes No Yes
FVST STRING Yes Null Yes Yes No Yes
SXST STRING Yes Null Yes Yes No Yes
SVST STRING Yes Null Yes Yes No Yes
EIST STRING Yes Null Yes Yes No Yes
NIST STRING Yes Null Yes Yes No Yes
TEST STRING Yes Null Yes Yes No Yes
ELST STRING Yes Null Yes Yes No Yes
TVST STRING Yes Null Yes Yes No Yes
TTST STRING Yes Null Yes Yes No Yes
FTST STRING Yes Null Yes Yes No Yes
FFST STRING Yes Null Yes Yes No Yes
ZRSV GBLCHOICE Yes 0 Yes Yes No Yes
ONSV GBLCHOICE Yes 0 Yes Yes No Yes
TWSV GBLCHOICE Yes 0 Yes Yes No Yes
THSV GBLCHOICE Yes 0 Yes Yes No Yes
FRSV GBLCHOICE Yes 0 Yes Yes No Yes
FVSV GBLCHOICE Yes 0 Yes Yes No Yes
SXSV GBLCHOICE Yes 0 Yes Yes No Yes
SVSV GBLCHOICE Yes 0 Yes Yes No Yes
EISV GBLCHOICE Yes 0 Yes Yes No Yes
NISV GBLCHOICE Yes 0 Yes Yes No Yes
TESV GBLCHOICE Yes 0 Yes Yes No Yes
ELSV GBLCHOICE Yes 0 Yes Yes No Yes
TVSV GBLCHOICE Yes 0 Yes Yes No Yes
TTSV GBLCHOICE Yes 0 Yes Yes No Yes
FTSV GBLCHOICE Yes 0 Yes Yes No Yes
FFSV GBLCHOICE Yes 0 Yes Yes No Yes
UNSV GBLCHOICE Yes 0 Yes Yes No Yes
COSV GBLCHOICE Yes 0 Yes Yes No Yes
RVAL ULONG No 0 Yes Yes 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 USHORT No 0 Yes No No No
LALM USHORT No 0 Yes No No No
SDEF SHORT No 0 Yes No No No
SHFT USHORT 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 index of the state value to be sent to OUT.
DOL Desired Output If DOL is a database or channel access link and OMSL is
Location (an 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.
ZRVL,...,FFVL Zero Value, One Masks for hardware value associated with each state.
Value, ...
ZRST,...,FFST Zero State, One Strings associated with each state.
State, ...
ZRSV,...,FFSV Zero Severity, One Alarm severity associated with each state.
Severity, ...
UNSV Unknown State
Severity
COSV Change of State
Severity
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 index of the values stored in ZRVL,...FFVL. 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.
ORAW 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.
SDEF States Defined? Record support uses this field to save time if no states are
defined.
SHFT Shift Number of bits to shift values obtained from
ZRVL,...,FFVL.
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
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_mbbo(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_mbbo calls recGblPutLinkValue to write the current value of VAL. See Chapter 3, Section "Soft Output" on page 13 for details.