epics-base-rs 0.24.2

Pure Rust EPICS IOC core — record system, database, iocsh, calc engine
Documentation
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, 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.
#*************************************************************************


menu(stringinPOST) {
	choice(stringinPOST_OnChange,"On Change")
	choice(stringinPOST_Always,"Always")
}
recordtype(stringin) {
	include "dbCommon.dbd"
    %
    %/* Declare Device Support Entry Table */
    %struct stringinRecord;
    %typedef struct stringindset {
    %    dset common; /*init_record returns: (-1,0)=>(failure,success)*/
    %    long (*read_stringin)(struct stringinRecord *prec); /*returns: (-1,0)=>(failure,success)*/
    %} stringindset;
    %#define HAS_stringindset
    %
	field(VAL,DBF_STRING) {
		prompt("Current Value")
		promptgroup("40 - Input")
		asl(ASL0)
		pp(TRUE)
		size(40)
	}
	field(OVAL,DBF_STRING) {
		prompt("Previous Value")
		special(SPC_NOMOD)
		interest(3)
		size(40)
	}


	field(INP,DBF_INLINK) {
		prompt("Input Specification")
		promptgroup("40 - Input")
		interest(1)
	}


	field(MPST,DBF_MENU) {
		prompt("Post Value Monitors")
		promptgroup("80 - Display")
		interest(1)
		menu(stringinPOST)
	}
	field(APST,DBF_MENU) {
		prompt("Post Archive Monitors")
		promptgroup("80 - Display")
		interest(1)
		menu(stringinPOST)
	}


        field(SIOL,DBF_INLINK) {
		prompt("Simulation Input Link")
		promptgroup("90 - Simulate")
		interest(1)
	}
	field(SVAL,DBF_STRING) {
		prompt("Simulation Value")
		pp(TRUE)
		size(40)
	}
	field(SIML,DBF_INLINK) {
		prompt("Simulation Mode Link")
		promptgroup("90 - Simulate")
		interest(1)
	}
	field(SIMM,DBF_MENU) {
		prompt("Simulation Mode")
		special(SPC_MOD)
		interest(1)
		menu(menuYesNo)
	}
	field(SIMS,DBF_MENU) {
		prompt("Simulation Mode Severity")
		promptgroup("90 - Simulate")
		interest(2)
		menu(menuAlarmSevr)
	}
    field(OLDSIMM,DBF_MENU) {
        prompt("Prev. Simulation Mode")
        special(SPC_NOMOD)
        interest(4)
        menu(menuSimm)
    }
    field(SSCN,DBF_MENU) {
        prompt("Sim. Mode Scan")
        promptgroup("90 - Simulate")
        interest(1)
        menu(menuScan)
        initial("65535")
    }
    field(SDLY,DBF_DOUBLE) {
        prompt("Sim. Mode Async Delay")
        promptgroup("90 - Simulate")
        interest(2)
        initial("-1.0")
    }
    %#include "callback.h"
    field(SIMPVT,DBF_NOACCESS) {
        prompt("Sim. Mode Private")
        special(SPC_NOMOD)
        interest(4)
        extra("epicsCallback            *simpvt")
    }


}