Skip to content
Snippets Groups Projects
pyDevCRL_elem.db 2.5 KiB
Newer Older
mwyman's avatar
mwyman committed
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")
}