#************************************************************************* # Copyright (c) 2008 UChicago Argonne LLC, as Operator of Argonne # National Laboratory. # Copyright (c) 2002 The Regents of the University of California, as # Operator of Los Alamos National Laboratory. # EPICS BASE is distributed subject to a Software License Agreement found # in file LICENSE that is included with this distribution. #************************************************************************* recordtype(sub) { include "dbCommon.dbd" field(VAL,DBF_DOUBLE) { prompt("Result") asl(ASL0) pp(TRUE) } field(INAM,DBF_STRING) { prompt("Init Routine Name") promptgroup("30 - Action") special(SPC_NOMOD) interest(1) size(40) } field(SNAM,DBF_STRING) { prompt("Subroutine Name") promptgroup("30 - Action") special(SPC_MOD) interest(1) size(40) } %struct subRecord; %typedef long (*SUBFUNCPTR)(struct subRecord *); field(SADR,DBF_NOACCESS) { prompt("Subroutine Address") special(SPC_NOMOD) interest(4) extra("SUBFUNCPTR sadr") } field(INPA,DBF_INLINK) { prompt("Input A") promptgroup("41 - Input A-F") interest(1) } field(INPB,DBF_INLINK) { prompt("Input B") promptgroup("41 - Input A-F") interest(1) } field(INPC,DBF_INLINK) { prompt("Input C") promptgroup("41 - Input A-F") interest(1) } field(INPD,DBF_INLINK) { prompt("Input D") promptgroup("41 - Input A-F") interest(1) } field(INPE,DBF_INLINK) { prompt("Input E") promptgroup("41 - Input A-F") interest(1) } field(INPF,DBF_INLINK) { prompt("Input F") promptgroup("41 - Input A-F") interest(1) } field(INPG,DBF_INLINK) { prompt("Input G") promptgroup("42 - Input G-L") interest(1) } field(INPH,DBF_INLINK) { prompt("Input H") promptgroup("42 - Input G-L") interest(1) } field(INPI,DBF_INLINK) { prompt("Input I") promptgroup("42 - Input G-L") interest(1) } field(INPJ,DBF_INLINK) { prompt("Input J") promptgroup("42 - Input G-L") interest(1) } field(INPK,DBF_INLINK) { prompt("Input K") promptgroup("42 - Input G-L") interest(1) } field(INPL,DBF_INLINK) { prompt("Input L") promptgroup("42 - Input G-L") interest(1) } field(EGU,DBF_STRING) { prompt("Engineering Units") promptgroup("80 - Display") interest(1) size(16) prop(YES) } field(HOPR,DBF_DOUBLE) { prompt("High Operating Range") promptgroup("80 - Display") interest(1) prop(YES) } field(LOPR,DBF_DOUBLE) { prompt("Low Operating Range") promptgroup("80 - Display") interest(1) prop(YES) } field(HIHI,DBF_DOUBLE) { prompt("Hihi Alarm Limit") promptgroup("70 - Alarm") pp(TRUE) interest(1) prop(YES) } field(LOLO,DBF_DOUBLE) { prompt("Lolo Alarm Limit") promptgroup("70 - Alarm") pp(TRUE) interest(1) prop(YES) } field(HIGH,DBF_DOUBLE) { prompt("High Alarm Limit") promptgroup("70 - Alarm") pp(TRUE) interest(1) prop(YES) } field(LOW,DBF_DOUBLE) { prompt("Low Alarm Limit") promptgroup("70 - Alarm") pp(TRUE) interest(1) prop(YES) } field(PREC,DBF_SHORT) { prompt("Display Precision") promptgroup("80 - Display") interest(1) prop(YES) } field(BRSV,DBF_MENU) { prompt("Bad Return Severity") promptgroup("70 - Alarm") pp(TRUE) interest(1) menu(menuAlarmSevr) } field(HHSV,DBF_MENU) { prompt("Hihi Severity") promptgroup("70 - Alarm") pp(TRUE) interest(1) prop(YES) menu(menuAlarmSevr) } field(LLSV,DBF_MENU) { prompt("Lolo Severity") promptgroup("70 - Alarm") pp(TRUE) interest(1) prop(YES) menu(menuAlarmSevr) } field(HSV,DBF_MENU) { prompt("High Severity") promptgroup("70 - Alarm") pp(TRUE) interest(1) prop(YES) menu(menuAlarmSevr) } field(LSV,DBF_MENU) { prompt("Low Severity") promptgroup("70 - Alarm") pp(TRUE) interest(1) prop(YES) menu(menuAlarmSevr) } field(HYST,DBF_DOUBLE) { prompt("Alarm Deadband") promptgroup("70 - Alarm") interest(1) } field(ADEL,DBF_DOUBLE) { prompt("Archive Deadband") promptgroup("80 - Display") interest(1) } field(MDEL,DBF_DOUBLE) { prompt("Monitor Deadband") promptgroup("80 - Display") interest(1) } field(A,DBF_DOUBLE) { prompt("Value of Input A") pp(TRUE) } field(B,DBF_DOUBLE) { prompt("Value of Input B") pp(TRUE) } field(C,DBF_DOUBLE) { prompt("Value of Input C") pp(TRUE) } field(D,DBF_DOUBLE) { prompt("Value of Input D") pp(TRUE) } field(E,DBF_DOUBLE) { prompt("Value of Input E") pp(TRUE) } field(F,DBF_DOUBLE) { prompt("Value of Input F") pp(TRUE) } field(G,DBF_DOUBLE) { prompt("Value of Input G") pp(TRUE) } field(H,DBF_DOUBLE) { prompt("Value of Input H") pp(TRUE) } field(I,DBF_DOUBLE) { prompt("Value of Input I") pp(TRUE) } field(J,DBF_DOUBLE) { prompt("Value of Input J") pp(TRUE) } field(K,DBF_DOUBLE) { prompt("Value of Input K") pp(TRUE) } field(L,DBF_DOUBLE) { prompt("Value of Input L") pp(TRUE) } field(LA,DBF_DOUBLE) { prompt("Prev Value of A") special(SPC_NOMOD) interest(3) } field(LB,DBF_DOUBLE) { prompt("Prev Value of B") special(SPC_NOMOD) interest(3) } field(LC,DBF_DOUBLE) { prompt("Prev Value of C") special(SPC_NOMOD) interest(3) } field(LD,DBF_DOUBLE) { prompt("Prev Value of D") special(SPC_NOMOD) interest(3) } field(LE,DBF_DOUBLE) { prompt("Prev Value of E") special(SPC_NOMOD) interest(3) } field(LF,DBF_DOUBLE) { prompt("Prev Value of F") special(SPC_NOMOD) interest(3) } field(LG,DBF_DOUBLE) { prompt("Prev Value of G") special(SPC_NOMOD) interest(3) } field(LH,DBF_DOUBLE) { prompt("Prev Value of H") special(SPC_NOMOD) interest(3) } field(LI,DBF_DOUBLE) { prompt("Prev Value of I") special(SPC_NOMOD) interest(3) } field(LJ,DBF_DOUBLE) { prompt("Prev Value of J") special(SPC_NOMOD) interest(3) } field(LK,DBF_DOUBLE) { prompt("Prev Value of K") special(SPC_NOMOD) interest(3) } field(LL,DBF_DOUBLE) { prompt("Prev Value of L") special(SPC_NOMOD) interest(3) } field(LALM,DBF_DOUBLE) { prompt("Last Value Alarmed") special(SPC_NOMOD) interest(3) } field(ALST,DBF_DOUBLE) { prompt("Last Value Archived") special(SPC_NOMOD) interest(3) } field(MLST,DBF_DOUBLE) { prompt("Last Value Monitored") special(SPC_NOMOD) interest(3) } }