-------------------------------------------------------------- Field Type DCT Initial Access Modify Rec Proc PP Monitor -------------------------------------------------------------- VAL STRING Yes Null Yes Yes Yes Yes OVAL STRING No Null Yes No No DOL INLINK Yes 0 No No N/A No OMSL GBLCHOICE Yes 0 Yes Yes No No OUT OUTLINK Yes 0 No No N/A 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 STRING Yes Null Yes Yes No No --------------------------------------------------------------
--------------------------------------------------------------------------------------- Name Summary Description --------------------------------------------------------------------------------------- VAL Value An arbitrary ASCII string of 40 characters. This is the field to be sent to OUT. It is either obtained from DOL or else given a value via dbPuts. OVAL Old Value Used to decide when to invoke monitors. If VAL differs from OVAL, then monitors will be invoked. 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. 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. 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 the type double constant, if non-zero, is converted to a string and stored into VAL and UDF is set to FALSE. If DOL type is a PV_LINK then dbCaAddInlink is called to create a channel access link.
If device support includes init_record, it is called.
-------------------------------------------------------------------------------------- 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 VAL Value This is the field written by the device support routines. OUT Output Link This field is used by the device support routines to locate its output. --------------------------------------------------------------------------------------
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.
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_stringout(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_so calls recGblPutLinkValue to write the current value of VAL. See Chapter 3, Section "Soft Output" on page 13 for details.