Table of Contents Previous Chapter Chapter 2: Fields Common to All Record Types

Chapter 2: Fields Common to All Record Types

1. Introduction

This chapter contains a description of fields that are common to all records. These fields are defined in dbcommon.ascii.

2. Database Common: Field Summary

--------------------------------------------------------------------
Field  Type       DCT  Initial        Access  Modify  Rec Proc   PP   
                                                      Monitor         
--------------------------------------------------------------------
NAME   STRING     Yes  0              Yes     No                 No   
DESC   STRING     Yes  Null           Yes     Yes     No         No   
ASG    STRING     Yes  Null           Yes     Yes                No   
SCAN   GBLCHOICE  Yes  0              Yes     Yes     No         No   
PINI   GBLCHOICE  Yes  0              Yes     Yes     No         No   
PHAS   SHORT      Yes  0              Yes     Yes     No         No   
EVNT   SHORT      Yes  0              Yes     Yes     No         No   
TSE    SHORT      No   0              Yes     Yes                No   
TSEL   INLINK     Yes  Null           No      No      N/A        No   
DTYP   DEVCHOICE  Yes  0              Yes     No                 No   
DISV   SHORT      Yes  1              Yes     Yes     No         No   
DISA   SHORT      No   0              Yes     Yes     No         No   
SDIS   INLINK     Yes  0              No      No      N/A        No   
MLOK   NOACCESS   No   8              No      No                 No   
MLIS   NOACCESS   No   12             No      No                 No   
DISP   UCHAR      No   0              Yes     Yes     Yes        No   
PROC   UCHAR      No   0              Yes     Yes     No         Yes  
STAT   GBLCHOICE  No   UDF_ALARM      Yes     No      Yes        No   
SEVR   GBLCHOICE  No   INVALID_ALARM  Yes     No      Yes        No   
NSTA   GBLCHOICE  No   0              Yes     No      No         No   
NSEV   GBLCHOICE  No   0              Yes     No      No         No   
ACKS   GBLCHOICE  No   0              Yes     No                 No   
ACKT   GBLCHOICE  No   11             Yes     No                 No   
DISS   GBLCHOICE  Yes  0              Yes     Yes     No         No   
LSET   SHORT      No   0              Yes     No                 No   
LCNT   UCHAR      No   0              Yes     No                 No   
PACT   UCHAR      No   0              Yes     No                 No   
PUTF   UCHAR      No   0              Yes     No                 No   
RPRO   UCHAR      No   0              Yes     No                 No   
ASP    NOACCESS   No   4              No      No                 No   
PPN    NOACCESS   No   4              No      No                 No   
PPNN   NOACCESS   No   4              No      No                 No   
SPVT   NOACCESS   No   4              No      No                 No   
RSET   NOACCESS   No   4              No      No                 No   
DSET   NOACCESS   No   4              No      No                 No   
DPVT   NOACCESS   No   4              No      No                 No   
PRIO   GBLCHOICE  Yes  0              Yes     Yes     No         No   
TPRO   UCHAR      No   0              Yes     Yes     No         No   
BKPT   NOACCESS   No   1              No      No                 No   
UDF    UCHAR      No   1              Yes     Yes     No         Yes  
TIME   NOACCESS   No   8              Option  No      No         No   
FLNK   FWDLINK    Yes  Null           No      No      N/A        No   
--------------------------------------------------------------------

3. Database Common: Field Descriptions

-----------------------------------------------------------------------------------------
Name  Summary              Description                                                     
-----------------------------------------------------------------------------------------
NAME  Record Name          An arbitrary 28 character record name supplied by the           
                           application developer.  This name is the means of               
                           identifying a specific record. It must have a unique value      
                           across all IOCs attached to the same local area subnet.         
DESC  Description          An arbitrary 28 character record description supplied by        
                           the application developer.                                      
ASG   Access Security      A character string value defining the access security group     
      Group                for this record.  If left NULL, the record is placed in group   
                           DEFAULT.                                                        
SCAN  Scanning             This can be one of the periodic intervals, I/O event, event,    
      Algorithm            or passive.                                                     
PINI  Process at           If this field is set to TRUE during database configuration,     
      Initialization       then the record is processed once at IOC initialization         
                           (before the normal scan tasks are started).                     
PHAS  Scan Phase Number    This field orders the records within a specific SCAN            
                           group. This is not meaningful for passive records. All          
                           records of a specified phase are processed before those         
                           with higher phase number. Whenever possible it is better        
                           to use linked passive records to enforce the order of           
                           processing rather than phase number.                            
EVNT  Event Number         Event number for scan type SCAN_EVENT. All records              
                           with scan type event and the same EVNT value will be            
                           processed when a call to post_event for EVNT is made.           
                           The call to post_event is:                                      
                               post_event(short event_number)                              
TSE   Time Stamp Event     The event number for time stamp.  This is only                  
                           meaningful if the IOC has an associated hardware event          
                           receiver.  See `er' record for details.                         
TSEL  Time Stamp Event     An input link for obtaining the time stamp event number.        
      Link                                                                                 
DTYP  Device Type          This field specifies the device type for the record. Each       
                           record type has its own set of device support routines          
                           which are specified in devSup.ASCII. If a record type           
                           does not have any associated device support, DTYP and           
                           DSET are meaningless.                                           
DISV  Disable Value        If DISV=DISA, then the record will be disabled, i.e.            
                           dbProcess will not process the record.                          
DISA  Scan Disable Input   This is the value that is compared with DISV to determine       
      Link Value           if the record is disabled. Its value is obtained via SDIS if    
                           SDIS is a database or channel access link. If SDIS is not       
                           a database or channel access link, then DISA can be set         
                           via dbPutField or dbPutLink.                                    
SDIS  Scan Disable Input   An input link from which to obtain a value for DISA.            
      Link                 This field is ignored unless it is a database link or a         
                           channel access link. If it is a database or a channel access    
                           link, dbProcess calls dbGetLink to obtain a value for           
                           DISA before deciding to call the processing routine.            
MLOK  Monitor Lock         The lock used by the monitor routines when the monitor          
                           list is being used. The list is locked whenever monitors are    
                           being scheduled, invoked, or when monitors are being            
                           added to or removed from the list. This field is accessed       
                           only by the dbEvent routines.                                   
MLIS  Monitor List         This is the head of the list of monitors connected to this      
                           record. Each record support module is responsible for           
                           triggering monitors for any fields that change as a result of   
                           record processing. Monitors are present if mlis.count is        
                           greater than zero.  The call to trigger monitors is:            
                               db_post_event(precord,&data,mask)                       
                           Where "mask" is some combination of DBE_ALARM,                  
                           DBE_VALUE, and DBE_LOG.                                         
DISP  Disable putFields    If this field is set to TRUE, then all dbPutFields              
                           (normally issued by channel access) directed to this            
                           record are ignored except to the field DISP itself.             
PROC  Process Record       A record will be processed whenever a dbPutField is             
                           directed to this field.                                         
STAT  Current Alarm        These four fields are the alarm status and severity fields.     
      Status               STAT and SEVR are the values seen outside database              
                           access. NSTA and NSEV are the fields the database access,       
                           record support, and device support use to set new alarm         
                           status and severity values. Whenever any software               
                           component discovers an alarm condition, it uses the             
                           following macro function:                                       
                           recGblSetSevr(precord,new_status,new_severity)                  
                           This ensures that the current alarm severity is set equal to    
                           the highest outstanding alarm. The file alarm.h defines         
                           all allowed alarm status and severity values.                   
SEVR  Current Alarm                                                                        
      Severity                                                                             
NSTA  New Alarm Status                                                                     
NSEV  New Alarm                                                                            
      Severity                                                                             
ACKS  Alarm Acknowledge    Highest severity unacknowledged alarm                           
      Severity                                                                             
ACKT  Alarm Acknowledge    Is it necessary to acknowledge transient alarms?                
      Transient                                                                            
DISS  Disable Alarm        When this record is disabled, it will be put into alarm with    
      Severity             this severity and a status of DISABLE_ALARM.                    
LSET  Lock Set             The lock set to which this record belongs.  All records         
                           linked in any way via input, output, or forward database        
                           links belong to the same lock set.  The only exception is       
                           that non-process passive input links do not force the           
                           linked record to be in the same lock set.  The lock sets are    
                           determined at IOC initialization time.                          
LCNT  Lock Count           The number of times in succession dbProcess finds the           
                           record active, i.e. PACT is TRUE. If dbProcess finds the        
                           record active MAX_LOCK (currently set to 10) times in           
                           succession, it raises a SCAN_ALARM.                             
PACT  Processing Active    See Application Developers Guide for details on usage.          
                           PACT is TRUE while the record is being processed. For           
                           asynchronous records PACT can be TRUE from the time             
                           record processing is started until the asynchronous             
                           completion occurs. As long as PACT is TRUE,                     
                           dbProcess will not call the record processing routine.          
PUTF  dbPutField Process   Did dbPutField cause the current record processing?             
RPRO  Reprocess            Reprocess record when current processing completes.             
ASP   Access Security                                                                      
      Private                                                                              
PPN   Address of           Address of putNotify callback.                                  
      putNotify                                                                            
PPNN  Next Record for      Next record for PutNotify.                                      
      putNotify                                                                            
SPVT  Scan Private         This field is for private use of the scanning system.           
RSET  Address of Record    See Application Developers Guide for details on usage.          
      Support Entry Table                                                                  
DSET  Address of Device    This address of the device support entry table for this         
      Support Entry Table  record. The value of this field is determined at IOC            
                           initialization time. Record support routines use this field     
                           to locate their device support routines.                        
DPVT  Device Private       This field is for private use of the device support modules.    
PRIO  Priority             Scheduling priority for processing I/O Event scanned            
                           records and asynchronous record completion tasks.               
TPRO  Trace Processing     If this field is set TRUE, a message is printed each time       
                           this record is processed and a message is printed for each      
                           record processed as a result of this record being processed     
BKPT  BreakPoint                                                                           
UDF   VAL Undefined        UDF is initialized to TRUE at IOC initialization.  Record       
                           and device support routines which write to the VAL field        
                           are responsible for setting UDF to FALSE.                       
TIME  Time                 The time when this record was last processed, in standard       
                           format.                                                         
FLNK  Forward Link         This field is a database link. If FLNK is specified,            
                           processing this record will force a processing of the scan      
                           passive forward link record.                                    
-----------------------------------------------------------------------------------------
 
Table of Contents Next Chapter