Histogram automatically dialog closes when Renderer is not visible
This commit is contained in:
78
script/SIStem.py
Normal file
78
script/SIStem.py
Normal file
@@ -0,0 +1,78 @@
|
||||
#Debugging
|
||||
if get_exec_pars().args is None:
|
||||
"""
|
||||
PRE_ACTIONS = {"motor2":0.1}
|
||||
POSITIONERS = ["master", "motor"]
|
||||
START = [0.0,0.0]
|
||||
STOP = [1.0,1.0]
|
||||
STEPS = [3, 5]
|
||||
SENSORS = ["scienta.dataMatrix", "sin"]
|
||||
SETTLING_TIME = 0.1
|
||||
PASSES = 1
|
||||
ZIGZAG = True
|
||||
COMPRESSION = True
|
||||
"""
|
||||
NAME="Test"
|
||||
print "Debug"
|
||||
|
||||
|
||||
import json
|
||||
def load_parameters(name):
|
||||
filename = get_context().setup.expandPath("{home}/scans/" + name + ".json")
|
||||
with open(filename) as config_file:
|
||||
config = json.load(config_file)
|
||||
for key in config.keys():
|
||||
globals()[key] = config[key]
|
||||
print str(key), " = ", config[key]
|
||||
if NAME:
|
||||
load_parameters(NAME)
|
||||
|
||||
|
||||
|
||||
#Enforece parameter types
|
||||
positioners = string_to_obj(POSITIONERS)
|
||||
sensors = string_to_obj(SENSORS)
|
||||
start = list(to_array(START, 'd'))
|
||||
end = list(to_array(STOP, 'd'))
|
||||
steps = list(to_array(STEPS, 'i'))
|
||||
latency = SETTLING_TIME
|
||||
passes = int(PASSES)
|
||||
zigzag = bool(ZIGZAG)
|
||||
|
||||
|
||||
#Execute pre-actions
|
||||
for key in PRE_ACTIONS.keys():
|
||||
dev = string_to_obj(key)
|
||||
if isinstance(dev, Writable):
|
||||
log("Setting " + dev.name + " to: " + str(PRE_ACTIONS[key]))
|
||||
dev.write(PRE_ACTIONS[key])
|
||||
|
||||
for key in PRE_ACTIONS.keys():
|
||||
dev = string_to_obj(key)
|
||||
if isinstance(dev, Device):
|
||||
log("Waiting " + dev.name)
|
||||
dev.waitReady(-1)
|
||||
|
||||
|
||||
#Run scan
|
||||
if COMPRESSION:
|
||||
set_exec_pars(compression=[scienta.dataMatrix])
|
||||
|
||||
|
||||
def before_read(pos, scan):
|
||||
trigger_scienta()
|
||||
|
||||
|
||||
def after_read(rec, scan):
|
||||
pass
|
||||
#handle_diagnostics(rec)
|
||||
|
||||
try:
|
||||
ret= ascan(positioners, sensors, start, end, steps, \
|
||||
latency = latency, relative = False, passes = passes, zigzag = zigzag, \
|
||||
before_read = before_read, after_read = after_read,
|
||||
snaps = diag_channels)
|
||||
finally:
|
||||
scienta.zeroSupplies()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user