## Detector records ## ############################## ############# Channel Base #################### ### PERIOD############ record(longin, "$(DETch)_period_r") { field(DESC, "Read period in 10ns steps") field(SCAN, "Passive") field(EGU, "(10xns)") field(INP, "$(P):$(ADDR)_period_r CPP") } record(calcout, "$(DETch)_rawfreq_w") { field(DESC, "Writing frequency Hz") field(SCAN, "Passive") field(EGU, "Hz") field(CALC, "VAL#0?1/VAL/10e-9:1000000") field(OUT, "$(DETch)_period_w PP") } record(longout, "$(DETch)_period_w") { field(DESC, "Set period in 10ns steps") field(SCAN, "Passive") field(OUT, "$(P):$(ADDR)_period_w PP") field(LOPR, "99") field(HOPR, "9999999") } ##################### #### NPulses######### record(longin, "$(DETch)_npulses_r") { field(DESC, "Read npulses") field(SCAN, "Passive") field(EGU, "") field(INP, "$(P):$(ADDR)_npulses_r CPP") } record(calcout, "$(DETch)_rawnpulses_w") { field(DESC, "Writing npulses") field(SCAN, "Passive") field(EGU, "#") field(CALC, "VAL") field(OUT, "$(DETch)_npulses_w PP") } record(longout, "$(DETch)_npulses_w") { field(DESC, "Set npulses") field(SCAN, "Passive") field(OUT, "$(P):$(ADDR)_npulses_w PP") field(LOPR, "1") field(HOPR, "0xEFFFFFFF") } ##################### # Width ############# record(longin, "$(DETch)_width_r") { field(DESC, "Read width in 10ns steps") field(SCAN, "Passive") field(EGU, "(10xns)") field(INP, "$(P):$(ADDR)_width_r CPP") } record(calcout, "$(DETch)_rawwidth_w") { field(DESC, "Writing width ns") field(SCAN, "Passive") field(EGU, "(ns)") field(CALC, "VAL/10") field(OUT, "$(DETch)_width_w PP") } record(longout, "$(DETch)_width_w") { field(DESC, "Set width in 10ns steps") field(SCAN, "Passive") field(OUT, "$(P):$(ADDR)_width_w PP") field(LOPR, "1") field(HOPR, "100") } ###################### ## start_mask ############# record(bi, "$(DETch)_start_mask_r") { field(DTYP, "Raw Soft Channel") field(ZNAM, "Disabled") field(ONAM, "Enabled") field(SCAN, "Passive") field(INP, "$(DETch)calc_start_mask_r CPP") } record( calc, "$(DETch)calc_start_mask_r" ) { field(SCAN, "Passive") field(INPA, "$(DET):start_mask_r CPP") field(CALC, "B:=$(Channel)-1;(A>>B) & 1") } record(bo, "$(DETch)_start_mask_w") { field(DTYP, "Soft Channel") field(ZNAM, "Disabled") field(ONAM, "Enabled") field(OMSL, "supervisory") field(SCAN, "Passive") field(OUT, "$(DETch)calc_start_mask_w PP") } record( calcout, "$(DETch)calc_start_mask_w" ) { field(OOPT, "On Change") field(DOPT, "Use CALC") field(SCAN, "Passive") field(INPA, "$(DET):start_mask_r NPP") field(CALC, "B:=$(Channel)-1;(A & ~(1<