use DAQTask in Acquisitions, moved Acquisition.can_create_all_filenames() to utils.path

This commit is contained in:
2020-05-10 12:54:50 +00:00
parent f50917faa1
commit 5fc46cb6e5
4 changed files with 15 additions and 13 deletions
+2 -2
View File
@@ -3,7 +3,7 @@ from abc import abstractmethod
from slic.utils.channels import Channels
from slic.utils import can_create_file, typename
from slic.core.task import Task
from slic.core.task import DAQTask
from .baseacquisition import BaseAcquisition
from .sfpaths import SwissFELPaths
@@ -42,7 +42,7 @@ class Acquisition(BaseAcquisition):
channels = self.default_channels
acq = lambda: self._acquire(filename, channels, **kwargs)
return Task(acq, hold=False)
return DAQTask(acq, filename=filename, hold=False)
@abstractmethod
+5 -10
View File
@@ -3,8 +3,8 @@ from time import sleep
from detector_integration_api import DetectorIntegrationClient
from slic.utils.channels import Channels
from slic.utils import can_create_file
from slic.core.task import Task
from slic.utils import can_create_all_files
from slic.core.task import DAQTask
from .baseacquisition import BaseAcquisition
from .diaconfig import DIAConfig, EXPTIME
@@ -42,7 +42,8 @@ class DIAAcquisition(BaseAcquisition):
if filename:
if use_default_dir:
filename = os.path.join(self.default_dir, filename)
if not self.can_create_all_files(filename):
filenames = self.make_all_filenames(filename)
if not can_create_all_files(filenames):
return
else:
filename = "/dev/null"
@@ -65,15 +66,9 @@ class DIAAcquisition(BaseAcquisition):
self.wait_until_finished()
self.client.reset()
return Task(_acquire, stopper=self.client.stop, hold=False)
return DAQTask(_acquire, stopper=self.client.stop, filenames=filenames, hold=False)
def can_create_all_files(self, base):
for fn in self.make_all_filenames(base):
if not can_create_file(fn):
return False
return True
def make_all_filenames(self, base):
res = []
for client in self.active_clients:
+1 -1
View File
@@ -6,7 +6,7 @@ from .elog import Elog
from .ipy import devices
from .json import json_save, json_load
from .npy import fraction_to_percentage, within, within_fraction, get_dtype, get_shape, is_array
from .path import can_create_file, glob_files, make_missing_dir
from .path import can_create_all_files, can_create_file, glob_files, make_missing_dir
from .pv import PV
from .screenshot import Screenshot
+7
View File
@@ -4,6 +4,13 @@ from pathlib import Path
from .ask_yes_no import ask_yes_No
def can_create_all_files(filenames):
for fn in filenames:
if not can_create_file(fn):
return False
return True
def can_create_file(filename):
if not os.path.isfile(filename):
return True