Newer
Older
record(dfanout, "$(P)$(CRLID):stack$(M)_dfanout"){
field(DOL, "$(P)$(CRLID):lens_decode.$(DECODE) CP")
field(OUTA, "$(P)$(CRLID):stack$(M) PP")
record(bo, "$(P)$(CRLID):stack$(M)"){
field(DESC, "$(NUMLENS), $(RADIUS), $(LOC), $(MAT), $(THICKERR)")
field(ZNAM, "Out")
field(ONAM, "In")
field(DISV, "1")
record(calcout, "$(P)$(CRLID):stack$(M)_calc"){
field(INPA, "$(P)$(CRLID):stack$(M) CP")
field(CALC, "A?$(INVAL):$(OUTVAL)")
record(calcout, "$(P)$(CRLID):stack$(M)_RBV_calc"){
field(INPA, "$(INP) CP")
field(CALC, "A==$(INRBVVAL)?1:0")
field(OUT, "$(P)$(CRLID):stack$(M)_RBV PP")
record(bi, "$(P)$(CRLID):stack$(M)_RBV"){
field(DESC, "$(NUMLENS), $(RADIUS), $(LOC), $(MAT), $(THICKERR)")
field(ZNAM, "Out")
field(ONAM, "In")
}
record(dfanout, "$(P)$(CRLID):stack$(M)_RBV_dfanout"){
field(OMSL, "closed_loop")
field(DOL, "$(P)$(CRLID):stack$(M)_RBV CP")
field(OUTA, "$(P)$(CRLID):lens_RBV_encode.$(ENCODE) PP")
record(ao, "$(P)$(CRLID):stack$(M)_NumLens"){
field(DESC, "Number of lens in stack")
field(VAL, "$(NUMLENS)")
}
record(ao, "$(P)$(CRLID):stack$(M)_LensRadius"){
record(ao, "$(P)$(CRLID):stack$(M)_Location"){
field(DESC, "Stack Location, + US, - DS from center")
field(EGU, "stack_thick")
record(stringout, "$(P)$(CRLID):stack$(M)_Material"){
field(DESC, "Lens Material")
field(VAL, "$(MAT)")
}
record(ao, "$(P)$(CRLID):stack$(M)_ThickErr"){
record(dfanout, "$(P)$(CRLID):stack$(M)_BW_dfanout"){
field(DOL, "$(P)$(CRLID):stack$(M) CP")
field(OUTA, "$(P)$(CRLID):lens_encode.$(ENCODE)")
field(FLNK, "$(P)$(CRLID):lens_encode.PROC CA")
# The commented out records below were meant to replicate the lock feature used
# in filter control. BL staff indicated not required but kept in case needed.
# Will also have to update python code (in/out masks, culled tables/indices need
# to be uncommented).
# MW 2024.09.04
#!record(bo, "$(P)$(CRLID):stack$(M)_Lock"){
#! field(SDIS, "$(P)$(CRLID):stack$(M)_Enable")
#!record(bo, "$(P)$(CRLID):stack$(M)_Enable"){
#! field(ZNAM, "Enabled")
#! field(ONAM, "Disabled")
#!}
#!
#!
#!record(calcout, "$(P)$(CRLID):disableOut$(M)_calc"){
#! field(INPA, "$(P)$(CRLID):stack$(M)_Enable CP")
#! field(INPB, "$(P)$(CRLID):stack$(M)")
#! field(OUT, "$(P)$(CRLID):stack$(M) PP")
#! field(FLNK, "$(P)$(CRLID):lockEnable$(M)_calc")
#!record(calcout, "$(P)$(CRLID):lockEnable$(M)_calc"){
#! field(INPA, "$(P)$(CRLID):stack$(M)_Enable")
#! field(INPB, "$(P)$(CRLID):stack$(M)_Lock CP")
#! field(INPC, "$(P)$(CRLID):stack$(M)_RBV")
#! field(OUT, "$(P)$(CRLID):stack$(M).DISA PP")
#! field(FLNK, "$(P)$(CRLID):outMask$(M)_calc")
#!record(calcout, "$(P)$(CRLID):outMask$(M)_calc"){
#! field(INPA, "$(P)$(CRLID):stack$(M)_Enable")
#! field(INPB, "$(P)$(CRLID):stack$(M)_Lock")
#! field(INPC, "$(P)$(CRLID):stack$(M)_RBV")
#! field(OUT, "$(P)$(CRLID):outMask_encode.$(MASK) PP")
#! field(FLNK, "$(P)$(CRLID):inMask$(M)_calc")
#!record(calcout, "$(P)$(CRLID):inMask$(M)_calc"){
#! field(INPA, "$(P)$(CRLID):stack$(M)_Enable")
#! field(INPB, "$(P)$(CRLID):stack$(M)_Lock")
#! field(INPC, "$(P)$(CRLID):stack$(M)_RBV")
#! field(OUT, "$(P)$(CRLID):inMask_encode.$(MASK) PP")