record(longin, "$(P)$(SYSID):$(OE):lenses") { field(DTYP, "pydev") field(INP, "@pydev.iointr('new_lenses_$(OE)')") field(SCAN, "I/O Intr") field(FLNK, "$(P)$(SYSID):$(OE):lens_decode.PROC CA") } record(transform, "$(P)$(SYSID):$(OE):lens_decode"){ field(INPA, "$(P)$(SYSID):$(OE):lenses PP") field(CLCB, "A % 2") field(CLCC, "(A >> 1) % 2") field(CLCD, "(A >> 2) % 2") field(CLCE, "(A >> 3) % 2") field(CLCF, "(A >> 4) % 2") field(CLCG, "(A >> 5) % 2") field(CLCH, "(A >> 6) % 2") field(CLCI, "(A >> 7) % 2") field(CLCJ, "(A >> 8) % 2") field(CLCK, "(A >> 9) % 2") # field(CLCL, "(A >> 10) % 2") # field(CLCM, "(A >> 11) % 2") } record(calcout, "$(P)$(SYSID):$(OE):lens_encode"){ field(OUT, "$(P)$(SYSID):$(OE):lensConfig_BW PP") field(CALC, "A+B*2+C*4+D*8+E*16+F*32+G*64+H*128+I*256+J*512") } record(longout, "$(P)$(SYSID):$(OE):lensConfig_BW") { field(DTYP, "pydev") field(OUT, "@$(OBJ).updateConfig(VAL, $(OE))") } record(calcout, "$(P)$(SYSID):$(OE):lens_RBV_encode"){ field(OUT, "$(P)$(SYSID):$(OE):lensConfig_RBV PP") field(CALC, "A+B*2+C*4+D*8+E*16+F*32+G*64+H*128+I*256+J*512") } record(longin, "$(P)$(SYSID):$(OE):lensConfig_RBV") { } record(waveform, "$(P)$(SYSID):$(OE):configs"){ field(DTYP, "pydev") field(INP, "@pydev.iointr('new_configs_$(OE)')") field(SCAN, "I/O Intr") field(PREC, "6") field(FTVL, "LONG") field(NELM, "$(ELEM)") } record(waveform, "$(P)$(SYSID):$(OE):invF_indices"){ field(DESC, "inverse f indices") field(DTYP, "pydev") field(INP, "@pydev.iointr('new_invFind_list_$(OE)')") field(SCAN, "I/O Intr") field(PREC, "6") field(FTVL, "DOUBLE") field(NELM, "$(ELEM)") } record(waveform, "$(P)$(SYSID):$(OE):invF"){ field(DESC, "inverse f") field(DTYP, "pydev") field(INP, "@pydev.iointr('new_invF_list_$(OE)')") field(SCAN, "I/O Intr") field(PREC, "6") field(FTVL, "DOUBLE") field(NELM, "$(ELEM)") } record(calcout, "$(P)$(SYSID):$(OE):fSize_twk_up"){ field(INPA, "$(P)$(SYSID):$(OE):sortedIndex_RBV") field(CALC, "MIN(A+1,$(ELEM)-1)") field(OUT, "$(P)$(SYSID):$(OE):sortedIndex PP") } record(calcout, "$(P)$(SYSID):$(OE):fSize_twk_dn"){ field(INPA, "$(P)$(SYSID):$(OE):sortedIndex_RBV") field(CALC, "MAX(0,A-1)") field(OUT, "$(P)$(SYSID):$(OE):sortedIndex PP") } record(longout, "$(P)$(SYSID):$(OE):sortedIndex") { field(DTYP, "pydev") field(OUT, "@$(OBJ).updateIndex(VAL, $(OE))") } record(longin, "$(P)$(SYSID):$(OE):sortedIndex_RBV") { field(DTYP, "pydev") field(INP, "@pydev.iointr('new_index_$(OE)')") field(SCAN, "I/O Intr") }