Source code for pythonlab.resources.services.incubation


from pythonlab.resource import ServiceResource, Position, LabwareResource
import logging


[docs] class IncubatorServiceResource(ServiceResource): """ multi-cavity / single cavity ? associated labwares, like lids, stacks :param Resource: [description] :type Resource: [type] """ def __init__(self, proc, name: str, capacity: int = 1): super().__init__(proc=proc, name=name) self._capacity = capacity self._transfer_positon = Position(self, 0) @property def capacity(self): return self._capacity @property def transfer_position(self): return self._transfer_positon
[docs] def init(self): logging.debug("init incubator")
[docs] def incubate(self, labware: LabwareResource, duration, temperature, shaking_frequency=0, **kwargs): logging.debug( f"Incubator: incubate {labware.name} for {duration} at T={temperature}") kwargs.update(dict(fct='incubate', duration=duration, temperature=temperature, frequency=shaking_frequency)) self.proc.add_process_step(self, [labware], **kwargs)
[docs] class IncubatorServiceResourcePool(IncubatorServiceResource): def __init__(self, proc, name: str = "incubator_pool", capacity: int = 32): super().__init__(proc=proc, name=name)