Source code for AFL.automation.APIServer.data.TiledClients.DriverTask

import tiled

from tqdm.auto import tqdm

from tiled.client.array import ArrayClient
from tiled.queries import Eq

import datetime

[docs] class DriverTask(ArrayClient): ''' a subclass of tiled.ArrayClient that adds accessor methods to iterate over samples, drivers, and convienence methods that let you filter by sample name/driver more easily '''
[docs] def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs)
# TODO: set up properties here @property def start_time(self): return datetime.datetime.strptime(self.metadata['meta']['started'].strip(), '%m/%d/%y %H:%M:%S-%f') @property def end_time(self): return datetime.datetime.strptime(self.metadata['meta']['ended'].strip(), '%m/%d/%y %H:%M:%S-%f') @property def queued_time(self): return datetime.datetime.strptime(self.metadata['meta']['queued'].strip(), '%m/%d/%y %H:%M:%S-%f') @property def exit_state(self): return self.metadata['meta']['exit_state'] @property def return_val(self): return self.metadata['meta']['return_val'] @property def task_name(self): return self.metadata['task_name'] @property def task(self): return self.metadata['task']