MultiRegionHoloScan: save to region-based subfolders

This commit is contained in:
x03daop
2017-06-06 11:25:45 +02:00
parent c77cc16bf8
commit e363c102a5
2 changed files with 13 additions and 13 deletions

View File

@@ -24,14 +24,14 @@ class SpectrumReader(ReadonlyRegisterBase, ReadonlyRegisterArray):
self.scan_index = -1
def create_datasets(self):
path = get_exec_pars().scanPath
path = get_exec_pars().scanPath + self.region_name + "/"
self.channel_begin_dataset_name = path + "ScientaChannelBegin{0}".format(self.region_index + 1)
self.channel_end_dataset_name = path + "ScientaChannelEnd{0}".format(self.region_index + 1)
self.pass_energy_dataset_name = path + "ScientaPassEnergy{0}".format(self.region_index + 1)
self.step_energy_dataset_name = path + "ScientaStepEnergy{0}".format(self.region_index + 1)
self.step_time_dataset_name = path + "ScientaStepTime{0}".format(self.region_index + 1)
self.iterations_dataset_name = path + "ScientaIterations{0}".format(self.region_index + 1)
self.channel_begin_dataset_name = path + "ScientaChannelBegin"
self.channel_end_dataset_name = path + "ScientaChannelEnd"
self.pass_energy_dataset_name = path + "ScientaPassEnergy"
self.step_energy_dataset_name = path + "ScientaStepEnergy"
self.step_time_dataset_name = path + "ScientaStepTime"
self.iterations_dataset_name = path + "ScientaIterations"
create_dataset(self.channel_begin_dataset_name, 'd')
create_dataset(self.channel_end_dataset_name, 'd')
@@ -123,16 +123,17 @@ def do_scan(regions, latency):
for (index, region) in enumerate(regions):
reader = SpectrumReader()
reader.region_index = index
reader.region_name = "region{0}".format(index + 1)
reader.region = region
reader.initialize()
set_device_alias(reader, "ScientaSpectrum{0}".format(index + 1))
set_device_alias(reader, reader.region_name + "/ScientaSpectrum")
SENSORS.append(reader)
image = ImageReader()
image.region_index = index
image.region = region
image.initialize()
set_device_alias(image, "ScientaImage{0}".format(index + 1))
set_device_alias(image, reader.region_name + "/ScientaImage")
SENSORS.append(image)
SENSORS.append(SampleCurrent)
@@ -143,8 +144,8 @@ def do_scan(regions, latency):
ascan((ManipulatorPhi, ManipulatorTheta), SENSORS, (PHI_RANGE[0], THETA_RANGE[0]), (PHI_RANGE[1], THETA_RANGE[1]), STEPS, LATENCY, False, zigzag = ZIGZAG, before_read=wait_beam, after_read = after_readout)
for (index, region) in enumerate(regions):
set_attribute(get_exec_pars().scanPath + "ScientaSpectrum{0}".format(index + 1), "RegionName", region['name'])
set_attribute(get_exec_pars().scanPath + "ScientaImage{0}".format(index + 1), "RegionName", region['name'])
set_attribute(get_exec_pars().scanPath + "region{0}/ScientaSpectrum".format(index + 1), "RegionName", region['name'])
set_attribute(get_exec_pars().scanPath + "region{0}/ScientaImage".format(index + 1), "RegionName", region['name'])
set_attribute(get_exec_pars().scanPath, "Regions", [region['name'] for region in regions])
try:

View File

@@ -148,8 +148,7 @@ def do_scan(motors, positions, regions, latency):
adjust_sensors()
set_adc_averaging()
#vscan(motors, SENSORS, positions, True, latency,False, before_read=wait_beam, after_read = after_readout)
vscan(motors, SENSORS, positions, True, latency,False, after_read = after_readout)
vscan(motors, SENSORS, positions, True, latency,False, before_read=wait_beam, after_read = after_readout)
for (index, region) in enumerate(regions):
set_attribute(get_exec_pars().scanPath + "region{0}/ScientaSpectrum".format(index + 1), "RegionName", region['name'])