This commit is contained in:
41
script/test/testParalelSeq.py
Normal file
41
script/test/testParalelSeq.py
Normal file
@@ -0,0 +1,41 @@
|
||||
REGIONS = [("R1",(1.0, 2.0, 0.1)), ("R2",(2.0, 8.0, 0.5)), ("R3",(8.0, 9.0, 0.2)), ]
|
||||
PASSES = 2
|
||||
|
||||
|
||||
class AnalogOutput(RegisterBase):
|
||||
def doRead(self):
|
||||
return self.val if hasattr(self, 'val') else 0.0
|
||||
|
||||
def doWrite(self, val):
|
||||
self.val = val
|
||||
|
||||
|
||||
add_device(AnalogOutput("ao1"), True)
|
||||
|
||||
scanning=False
|
||||
current_index=-1
|
||||
def scan(region):
|
||||
name, pars=REGIONS[region]
|
||||
def before_pass(pass_num, scan):
|
||||
global scanning, current_index
|
||||
while (current_index != (region-1)) or scanning:
|
||||
time.sleep(0.1)
|
||||
scanning = True
|
||||
#time.sleep(0.1)
|
||||
current_index = current_index+1
|
||||
App.getInstance().mainFrame.setScanDisplays(scan, None)
|
||||
|
||||
def after_pass(pass_num):
|
||||
global scanning, current_index
|
||||
if current_index>=(len(REGIONS)-1):
|
||||
current_index=-1
|
||||
scanning = False
|
||||
|
||||
lscan(ao1, [ai1, ai2], pars[0], pars[1], pars[2], 0.1, tag=name, passes=PASSES,
|
||||
before_pass = before_pass, after_pass=after_pass, restore_position=False)
|
||||
|
||||
scans = [[scan,[i,]] for i in range(len(REGIONS))]
|
||||
parallelize(*scans)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user