Skip to content
Snippets Groups Projects
pyDevCRLsingle.db 1.86 KiB
Newer Older
mwyman's avatar
mwyman committed
record(ao, "$(P)$(CRL)$(N):stack_thick"){
	field(DESC, "Stack thickness")
	field(EGU, "m")
	field(DTYP, "Soft Channel")
	field(VAL, "$(STACK_THICK)")
}

record(ao, "$(P)$(CRL)$(N):min_thick"){
	field(DESC, "Minimum thickness at the apex")
	field(EGU, "m")
	field(DTYP, "Soft Channel")
	field(VAL, "$(MIN_THICK)")
}


record(ao, "$(P)$(CRL)$(N):energy"){
	field(EGU, "eV")
	field(DTYP, "pydev")
	field(OUT, "@$(OBJ).updateE('VAL')")
}

record(ao, "$(P)$(CRL)$(N):focalSize"){
	field(EGU, "m")
	field(DTYP, "pydev")
	field(OUT, "@$(OBJ).updateFsize('VAL')")
}

record(bo, "$(P)$(CRL)$(N):fSize_twk_up"){
	field(DTYP, "pydev")
	field(OUT, "@$(OBJ).tweakUp()")
}

record(bo, "$(P)$(CRL)$(N):fSize_twk_dn"){
	field(DTYP, "pydev")
	field(OUT, "@$(OBJ).tweakDn()")
}

record(ao, "$(P)$(CRL)$(N):slitSize_H"){
	field(EGU, "m")
	field(DTYP, "pydev")
	field(OUT, "@$(OBJ).updateSlitSize('VAL', 'hor')")
}

record(ao, "$(P)$(CRL)$(N):slitSize_V"){
	field(EGU, "m")
	field(DTYP, "pydev")
	field(OUT, "@$(OBJ).updateSlitSize('VAL', 'vert')")
}

record(longin, "$(P)TF$(N):lenses") {
  field(DTYP, "pydev")
  field(INP,  "@pydev.iointr('new_config_calcd')")
  field(SCAN, "I/O Intr")
}

record(transform, "$(P)$(CRL)$(N):lens_decode"){
	field(INPA, "$(P)$(CRL)$(N):lenses CP")
	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)$(CRL)$(N):lens_encode"){
	field(OUT, "$(P)$(CRL)$(N):lensConfig_BW PP")
	field(CALC, "A+B*2+C*4+D*8+E*16+F*32+G*64+H*128+I*256+J*512+K*1024+L*2048")
} 

record(longout, "$(P)$(CRL)$(N):lensConfig_BW") {
  field(DTYP, "pydev")
  field(OUT, "@$(OBJ).updateConfig('VAL')")
}