Files
x07db/script/templates/EnergyScan.py
2020-03-10 10:48:17 +01:00

44 lines
1.2 KiB
Python

if get_exec_pars().debug:
print "Setting debug parameters"
REGIONS = [[523.0, 527.0, 2.0], [527.0, 535.0, 4.0], [535.0, 558.0, 2.0]]
NAME = None
FILE = None
if FILE:
FILE = get_context().setup.expandPath("{home}/parameters/" + FILE)
import json
with open(FILE) as json_file:
cfg = json.load(json_file)
NAME , REGIONS= cfg[0][0][0], cfg[1]
print "FILE: ", FILE
print "NAME: ", NAME
print "REGIONS: ", REGIONS
IOC_AUTO_SAVE = False
DUMMY_TRIGGER = True #Trigger detector to update the array sizes and calibration
set_device_alias(scienta.getSpectrum(), "spectrum")
set_device_alias(scienta.getDataMatrix(), "image")
set_device_alias(scienta.stats[0], "sum")
sensors=[i0, scienta.stats[0], scienta.getSpectrum()] #), scienta.getDataMatrix()]
def trigger(position, scan):
scienta.start()
scienta.waitNewImage(-1)
if DUMMY_TRIGGER:
trigger(None, None)
if IOC_AUTO_SAVE:
capture.write(1)
try:
rscan(energy, sensors, REGIONS, latency = 0.0, before_read=trigger, after_read=after_readout, name = NAME)
finally:
if IOC_AUTO_SAVE:
capture.write(0)
scienta.zeroSupplies()