Newer
Older
field(DOL, "$(P)CRL$(N):lens_decode.$(DECODE) CP")
field(OMSL, "closed_loop")
field(OUTA, "$(P)CRL$(N):stack$(M) PP")
}
record(bo, "$(P)CRL$(N):stack$(M)"){
field(DESC, "$(NUMLENS), $(RADIUS), $(LOC), $(MAT), $(THICKERR)")
field(ZNAM, "Out")
field(ONAM, "In")
field(DISV, "1")
field(OUT, "$(OUT)")
}
record(ao, "$(P)CRL$(N):stack$(M)_NumLens"){
field(DESC, "Number of lens in stack")
field(VAL, "$(NUMLENS)")
}
record(ao, "$(P)CRL$(N):stack$(M)_LensRadius"){
field(DESC, "Lens radii")
field(VAL, "$(RADIUS)")
}
record(ao, "$(P)CRL$(N):stack$(M)_Location"){
field(DESC, "Stack Location, + US, - DS from center")
field(EGU, "stack_thick")
field(VAL, "$(LOC)")
}
record(stringout, "$(P)CRL$(N):stack$(M)_Material"){
field(DESC, "Lens Material")
field(VAL, "$(MAT)")
}
record(ao, "$(P)CRL$(N):stack$(M)_ThickErr"){
field(DESC, "RMS Thickness Error")
field(VAL, "$(THICKERR)")
}
record(dfanout, "$(P)CRL$(N):stack$(M)_BW_dfanout"){
field(OMSL, "closed_loop")
field(DOL, "$(P)CRL$(N):stack$(M) CP")
field(OUTA, "$(P)CRL$(N):lens_encode.$(ENCODE)")
# field(FLNK, "$(P)CRL$(N):lens_encode PP")
}
record(bi, "$(P)CRL$(N):stack$(M)_RBV"){
field(DESC, "$(NUMLENS), $(RADIUS), $(LOC), $(MAT), $(THICKERR)")
field(ZNAM, "Out")
field(ONAM, "In")
field(INP, "$(INP)")
}
record(dfanout, "$(P)CRL$(N):stack$(M)_RBV_dfanout"){
field(OMSL, "closed_loop")
field(DOL, "$(P)CRL$(N):stack$(M)_RBV CP")
field(OUTA, "$(P)CRL$(N):lens_RBV_encode.$(ENCODE) PP")
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# 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)CRL$(N):stack$(M)_Lock"){
#! field(ZNAM, "Free")
#! field(ONAM, "Locked")
#! field(SDIS, "$(P)CRL$(N):stack$(M)_Enable")
#! field(DISV, "1")
#!}
#!
#!record(bo, "$(P)CRL$(N):stack$(M)_Enable"){
#! field(ZNAM, "Enabled")
#! field(ONAM, "Disabled")
#!}
#!
#!
#!record(calcout, "$(P)CRL$(N):disableOut$(M)_calc"){
#! field(INPA, "$(P)CRL$(N):stack$(M)_Enable CP")
#! field(INPB, "$(P)CRL$(N):stack$(M)")
#! field(CALC, "A=1?0:B")
#! field(OUT, "$(P)CRL$(N):stack$(M) PP")
#! field(FLNK, "$(P)CRL$(N):lockEnable$(M)_calc")
#!}
#!
#!record(calcout, "$(P)CRL$(N):lockEnable$(M)_calc"){
#! field(INPA, "$(P)CRL$(N):stack$(M)_Enable")
#! field(INPB, "$(P)CRL$(N):stack$(M)_Lock CP")
#! field(INPC, "$(P)CRL$(N):stack$(M)_RBV")
#! field(CALC, "A | B")
#! field(OUT, "$(P)CRL$(N):stack$(M).DISA PP")
#! field(FLNK, "$(P)CRL$(N):outMask$(M)_calc")
#!}
#!
#!record(calcout, "$(P)CRL$(N):outMask$(M)_calc"){
#! field(INPA, "$(P)CRL$(N):stack$(M)_Enable")
#! field(INPB, "$(P)CRL$(N):stack$(M)_Lock")
#! field(INPC, "$(P)CRL$(N):stack$(M)_RBV")
#! field(CALC, "A | (B & !C)")
#! field(OUT, "$(P)CRL$(N):outMask_encode.$(MASK) PP")
#! field(FLNK, "$(P)CRL$(N):inMask$(M)_calc")
#!}
#!
#!record(calcout, "$(P)CRL$(N):inMask$(M)_calc"){
#! field(INPA, "$(P)CRL$(N):stack$(M)_Enable")
#! field(INPB, "$(P)CRL$(N):stack$(M)_Lock")
#! field(INPC, "$(P)CRL$(N):stack$(M)_RBV")
#! field(CALC, "!A & (B & C)")
#! field(OUT, "$(P)CRL$(N):inMask_encode.$(MASK) PP")
#!}