unitelabs.labware.hamilton.carriers.reagent_carriers

Classes

  • RGT_CAR_5R_A00

    Carries 5x 50ml reagent troughs in portrait orientation. Occupies 1 track.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        filled_with : dataclasses.InitVar[typing.Union[None, T, type[T]]],
        filled_at : dataclasses.InitVar[typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]],
        cols : int,
        rows : int,
        tracks : int,
        variant : str,
        revision : str,
        barcode : str,
        barcode_orientation : typing.Literal['vertical', 'horizontal'],
        barcode_count : int,
        read_barcode : bool,
        is_auto_loadable : bool,
        is_loadable : bool,
        is_recognizable : bool,
        are_recognizable : bool,
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        children
        Type
        collections.abc.Sequence[CarrierSite]
        Default
        Description

      • Name
        filled_with
        Type
        dataclasses.InitVar[typing.Union[None, T, type[T]]]
        Default
        = None
        Description

      • Name
        filled_at
        Type
        dataclasses.InitVar[typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]]
        Default
        = None
        Description

      • Name
        cols
        Type
        int
        Default
        = 1
        Description

      • Name
        rows
        Type
        int
        Default
        = 5
        Description

      • Name
        tracks
        Type
        int
        Default
        = 1
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = REAGENT
        Description

      • Name
        orientation
        Type
        dataclasses.InitVar[Orientation]
        Default
        = LANDSCAPE
        Description

      • Name
        variant
        Type
        str
        Default
        = 'A'
        Description

      • Name
        revision
        Type
        str
        Default
        = '00'
        Description

      • Name
        barcode
        Type
        str
        Default
        = 'R10*****'
        Description

      • Name
        barcode_orientation
        Type
        typing.Literal['vertical', 'horizontal']
        Default
        = 'vertical'
        Description

      • Name
        barcode_position
        Type
        Decimal
        Default
        Description

      • Name
        barcode_distance
        Type
        Decimal
        Default
        Description

      • Name
        barcode_width
        Type
        Decimal
        Default
        Description

      • Name
        barcode_count
        Type
        int
        Default
        = 5
        Description

      • Name
        read_barcode
        Type
        bool
        Default
        = True
        Description

      • Name
        is_auto_loadable
        Type
        bool
        Default
        = True
        Description

      • Name
        is_loadable
        Type
        bool
        Default
        = True
        Description

      • Name
        is_recognizable
        Type
        bool
        Default
        = True
        Description

      • Name
        are_recognizable
        Type
        bool
        Default
        = False
        Description

      • Name
        model
        Type
        str
        Default
        = '187299'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • __post_init__(
        self,
        filled_with,
        filled_at,
        *kwargs
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        filled_with
        Type
        Default
        Description

      • Name
        filled_at
        Type
        Default
        Description

      • Name
        orientation
        Type
        Orientation
        Default
        Description

      • Name
        *kwargs
        Type
        Default
        = ()
        Description

    • @typing_extensions.override

      __setitem__(self, key : typing.Union[int, str, slice], value : typing.Union[typing.Optional[T], collections.abc.Sequence[typing.Optional[T]]]) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      • Name
        value
        Type
        typing.Union[typing.Optional[T], collections.abc.Sequence[typing.Optional[T]]]
        Default
        Description

    • get(self, key : typing.Union[int, str]) -> typing.Optional[T]

      Access the labware in the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot from which to access the labware.

      Response

      Type
      typing.Optional[T]
      Description

    • @log()

      add(self, labware : T, key : typing.Union[int, str]) -> None

      Add labware to the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        labware
        Type
        T
        Default
        Description

        The labware to add to the spot.

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot where to add the labware.

    • @log()

      fill(self, labware : typing.Union[T, type[T], collections.abc.Sequence[T]], spots : typing.Optional[collections.abc.Sequence[Spot[T]]]) -> None

      Fill the spots of the rack with the given labware.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        labware
        Type
        typing.Union[T, type[T], collections.abc.Sequence[T]]
        Default
        Description

        The labware to assign to the spots. Pass either a class or instance of labware that is copied or a list with the labware instance for each spot.

      • Name
        spots
        Type
        typing.Optional[collections.abc.Sequence[Spot[T]]]
        Default
        = None
        Description

        The spots in which to assign the labware.

    • @log()

      remove(self, key : typing.Union[int, str]) -> typing.Optional[T]

      Remove labware from the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot from where to remove the labware.

      Response

      Type
      typing.Optional[T]
      Description

      The labware that was removed, if any.

    • @log()

      clear(self, spots : typing.Optional[collections.abc.Sequence[Spot[T]]]) -> collections.abc.Sequence[typing.Optional[T]]

      Clear the spots of the rack.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        spots
        Type
        typing.Optional[collections.abc.Sequence[Spot[T]]]
        Default
        = None
        Description

        The spots from which to unassign the labware.

      Response

      Type
      collections.abc.Sequence[typing.Optional[T]]
      Description

      The list of labware that was removed, if any.

    • __delitem__(self, key : typing.Union[int, str, slice]) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

    • __init_subclass__(cls) -> None

      Parameters

      • Name
        cls
        Type
        Default
        Description

    • @typing_extensions.override

      rotate_by(self, angle : int) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

    • find(self, identifier) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        identifier
        Type
        Default
        Description

    • __contains__(self, item : typing.Any) -> bool

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        item
        Type
        typing.Any
        Default
        Description

      Response

      Type
      bool
      Description

    • __getitem__(self, key : typing.Union[int, str, slice]) -> typing.Union[T, collections.abc.Sequence[T]]

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      Response

      Type
      typing.Union[T, collections.abc.Sequence[T]]
      Description

    • __len__(self) -> int

      The number of children in this group.

      Response

      Type
      int
      Description

      The number of children in this group.

    • __iter__(self) -> collections.abc.Iterator[T]

      Iterate over the children of this group.

      Response

      Type
      collections.abc.Iterator[T]
      Description

      An iterator to iterate over all children in this group.

    • _index(self, key : typing.Union[int, str, slice]) -> typing.Union[int, slice]

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      Response

      Type
      typing.Union[int, slice]
      Description

    • copy(self, **changes) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        **changes
        Type
        Default
        = {}
        Description

    • serialize(self) -> JsonSchema

      Response

      Type
      JsonSchema
      Description

    • assign_to(self, parent : Group) -> None

      Set the parent of this resource to the given group.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        parent
        Type
        Group
        Default
        Description

        The group to which this resource is assigned to.

    • @deprecation.deprecated(deprecated_in='0.1.20', removed_in='0.2.0', current_version=__version__, details='Use `rotate_by` instead.')

      rotate(self, angle : int) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

    • rotate_to(self, angle : int) -> None

      Rotate to the given absolute angle in degrees.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

        The angle in degrees to rotate the resource. Must be a multiple of 90°.

    • @classmethod

      deserialize(cls, identifier : str, schema : JsonSchema) -> typing_extensions.Self

      Deserialize a JSON-like dictionary to a resource.

      Parameters

      • Name
        cls
        Type
        Default
        Description

      • Name
        identifier
        Type
        str
        Default
        Description

        The identifier of the resource to deserialize.

      • Name
        schema
        Type
        JsonSchema
        Default
        Description

        The JSON-like dictionary with the resource's data.

      Response

      Type
      typing_extensions.Self
      Description

      The newly created resource.

    • @classmethod

      subclass_by_name(cls, name : str) -> typing.Optional[type[Resource]]

      Recursively find a resource subclass with the given name.

      Parameters

      • Name
        cls
        Type
        Default
        Description

      • Name
        name
        Type
        str
        Default
        Description

        The name of the class to find.

      Response

      Type
      typing.Optional[type[Resource]]
      Description

      The class with the given name, or `None` if no such class exists.

      Exceptions

      Type
      TypeError
      Description
      If the name is not a valid class name.

    Attributes

    • Name
      model
      Type
      str
      Value

      = '187299'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 5

      Description

    • Name
      tracks
      Type
      int
      Value

      = 1

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=22.5, y=497, z=82))

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.REAGENT

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'R10*****'

      Description

    • Name
      barcode_orientation
      Type
      typing.Literal['vertical', 'horizontal']
      Value

      = 'vertical'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=26.6)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=96)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=10)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 5

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = True

      Description

    • Name
      is_auto_loadable
      Type
      bool
      Value

      = True

      Description

    • Name
      is_loadable
      Type
      bool
      Value

      = True

      Description

    • Name
      is_recognizable
      Type
      bool
      Value

      = True

      Description

    • Name
      are_recognizable
      Type
      bool
      Value

      = False

      Description

    • Name
      children
      Type
      collections.abc.Sequence[CarrierSite]
      Value

      = dataclasses.field(repr=False, default_factory=lambda: [CarrierSite(dimensions=Vector(x=20, y=90), location=Vector(x=1.25, y=390.5, z=18.5)), CarrierSite(dimensions=Vector(x=20, y=90), location=Vector(x=1.25, y=294.5, z=18.5)), CarrierSite(dimensions=Vector(x=20, y=90), location=Vector(x=1.25, y=198.5, z=18.5)), CarrierSite(dimensions=Vector(x=20, y=90), location=Vector(x=1.25, y=102.5, z=18.5)), CarrierSite(dimensions=Vector(x=20, y=90), location=Vector(x=1.25, y=6.5, z=18.5))])

      Description

    • Name
      logger
      Type
      logging.Logger
      Value

      = None

      Description

    • Name
      tags
      Type
      dict
      Value

      = dataclasses.field(default_factory=dict)

      Description

    • Name
      identifier
      Type
      str
      Value

      = dataclasses.field(default_factory=lambda: str(uuid.uuid4().hex[:8]))

      Description

    • Name
      rotation
      Type
      int
      Value

      = 0

      Description

    • Name
      location
      Type
      typing.Optional[Vector]
      Value

      = None

      Description

    • Name
      Schema
      Type
      type[marshmallow.Schema]
      Value

      = marshmallow.Schema

      Description

    • Name
      name
      Type
      str
      Value

      = None

      Description

      A human readable name to identify resources.

    • Name
      absolute_location
      Type
      Vector
      Value

      = None

      Description

      The absolute location of this resource.

    • Name
      width
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the x-axis.

    • Name
      depth
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the y-axis.

    • Name
      height
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the z-axis.

    • Name
      center
      Type
      Vector
      Value

      = None

      Description

      The center base of this resource.

  • RGT_CAR_5R60_A00

    Carries 5x 60ml reagent troughs in portrait orientation. Occupies 1 track.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        filled_with : dataclasses.InitVar[typing.Union[None, T, type[T]]],
        filled_at : dataclasses.InitVar[typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]],
        cols : int,
        rows : int,
        tracks : int,
        variant : str,
        revision : str,
        barcode : str,
        barcode_orientation : typing.Literal['vertical', 'horizontal'],
        barcode_count : int,
        read_barcode : bool,
        is_auto_loadable : bool,
        is_loadable : bool,
        is_recognizable : bool,
        are_recognizable : bool,
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        children
        Type
        collections.abc.Sequence[CarrierSite]
        Default
        Description

      • Name
        filled_with
        Type
        dataclasses.InitVar[typing.Union[None, T, type[T]]]
        Default
        = None
        Description

      • Name
        filled_at
        Type
        dataclasses.InitVar[typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]]
        Default
        = None
        Description

      • Name
        cols
        Type
        int
        Default
        = 1
        Description

      • Name
        rows
        Type
        int
        Default
        = 5
        Description

      • Name
        tracks
        Type
        int
        Default
        = 1
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = REAGENT
        Description

      • Name
        orientation
        Type
        dataclasses.InitVar[Orientation]
        Default
        = LANDSCAPE
        Description

      • Name
        variant
        Type
        str
        Default
        = 'A'
        Description

      • Name
        revision
        Type
        str
        Default
        = '00'
        Description

      • Name
        barcode
        Type
        str
        Default
        = 'R13*****'
        Description

      • Name
        barcode_orientation
        Type
        typing.Literal['vertical', 'horizontal']
        Default
        = 'horizontal'
        Description

      • Name
        barcode_position
        Type
        Decimal
        Default
        Description

      • Name
        barcode_distance
        Type
        Decimal
        Default
        Description

      • Name
        barcode_width
        Type
        Decimal
        Default
        Description

      • Name
        barcode_count
        Type
        int
        Default
        = 5
        Description

      • Name
        read_barcode
        Type
        bool
        Default
        = True
        Description

      • Name
        is_auto_loadable
        Type
        bool
        Default
        = True
        Description

      • Name
        is_loadable
        Type
        bool
        Default
        = True
        Description

      • Name
        is_recognizable
        Type
        bool
        Default
        = True
        Description

      • Name
        are_recognizable
        Type
        bool
        Default
        = False
        Description

      • Name
        model
        Type
        str
        Default
        = '187299'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • __post_init__(
        self,
        filled_with,
        filled_at,
        *kwargs
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        filled_with
        Type
        Default
        Description

      • Name
        filled_at
        Type
        Default
        Description

      • Name
        orientation
        Type
        Orientation
        Default
        Description

      • Name
        *kwargs
        Type
        Default
        = ()
        Description

    • @typing_extensions.override

      __setitem__(self, key : typing.Union[int, str, slice], value : typing.Union[typing.Optional[T], collections.abc.Sequence[typing.Optional[T]]]) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      • Name
        value
        Type
        typing.Union[typing.Optional[T], collections.abc.Sequence[typing.Optional[T]]]
        Default
        Description

    • get(self, key : typing.Union[int, str]) -> typing.Optional[T]

      Access the labware in the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot from which to access the labware.

      Response

      Type
      typing.Optional[T]
      Description

    • @log()

      add(self, labware : T, key : typing.Union[int, str]) -> None

      Add labware to the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        labware
        Type
        T
        Default
        Description

        The labware to add to the spot.

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot where to add the labware.

    • @log()

      fill(self, labware : typing.Union[T, type[T], collections.abc.Sequence[T]], spots : typing.Optional[collections.abc.Sequence[Spot[T]]]) -> None

      Fill the spots of the rack with the given labware.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        labware
        Type
        typing.Union[T, type[T], collections.abc.Sequence[T]]
        Default
        Description

        The labware to assign to the spots. Pass either a class or instance of labware that is copied or a list with the labware instance for each spot.

      • Name
        spots
        Type
        typing.Optional[collections.abc.Sequence[Spot[T]]]
        Default
        = None
        Description

        The spots in which to assign the labware.

    • @log()

      remove(self, key : typing.Union[int, str]) -> typing.Optional[T]

      Remove labware from the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot from where to remove the labware.

      Response

      Type
      typing.Optional[T]
      Description

      The labware that was removed, if any.

    • @log()

      clear(self, spots : typing.Optional[collections.abc.Sequence[Spot[T]]]) -> collections.abc.Sequence[typing.Optional[T]]

      Clear the spots of the rack.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        spots
        Type
        typing.Optional[collections.abc.Sequence[Spot[T]]]
        Default
        = None
        Description

        The spots from which to unassign the labware.

      Response

      Type
      collections.abc.Sequence[typing.Optional[T]]
      Description

      The list of labware that was removed, if any.

    • __delitem__(self, key : typing.Union[int, str, slice]) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

    • __init_subclass__(cls) -> None

      Parameters

      • Name
        cls
        Type
        Default
        Description

    • @typing_extensions.override

      rotate_by(self, angle : int) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

    • find(self, identifier) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        identifier
        Type
        Default
        Description

    • __contains__(self, item : typing.Any) -> bool

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        item
        Type
        typing.Any
        Default
        Description

      Response

      Type
      bool
      Description

    • __getitem__(self, key : typing.Union[int, str, slice]) -> typing.Union[T, collections.abc.Sequence[T]]

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      Response

      Type
      typing.Union[T, collections.abc.Sequence[T]]
      Description

    • __len__(self) -> int

      The number of children in this group.

      Response

      Type
      int
      Description

      The number of children in this group.

    • __iter__(self) -> collections.abc.Iterator[T]

      Iterate over the children of this group.

      Response

      Type
      collections.abc.Iterator[T]
      Description

      An iterator to iterate over all children in this group.

    • _index(self, key : typing.Union[int, str, slice]) -> typing.Union[int, slice]

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      Response

      Type
      typing.Union[int, slice]
      Description

    • copy(self, **changes) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        **changes
        Type
        Default
        = {}
        Description

    • serialize(self) -> JsonSchema

      Response

      Type
      JsonSchema
      Description

    • assign_to(self, parent : Group) -> None

      Set the parent of this resource to the given group.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        parent
        Type
        Group
        Default
        Description

        The group to which this resource is assigned to.

    • @deprecation.deprecated(deprecated_in='0.1.20', removed_in='0.2.0', current_version=__version__, details='Use `rotate_by` instead.')

      rotate(self, angle : int) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

    • rotate_to(self, angle : int) -> None

      Rotate to the given absolute angle in degrees.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

        The angle in degrees to rotate the resource. Must be a multiple of 90°.

    • @classmethod

      deserialize(cls, identifier : str, schema : JsonSchema) -> typing_extensions.Self

      Deserialize a JSON-like dictionary to a resource.

      Parameters

      • Name
        cls
        Type
        Default
        Description

      • Name
        identifier
        Type
        str
        Default
        Description

        The identifier of the resource to deserialize.

      • Name
        schema
        Type
        JsonSchema
        Default
        Description

        The JSON-like dictionary with the resource's data.

      Response

      Type
      typing_extensions.Self
      Description

      The newly created resource.

    • @classmethod

      subclass_by_name(cls, name : str) -> typing.Optional[type[Resource]]

      Recursively find a resource subclass with the given name.

      Parameters

      • Name
        cls
        Type
        Default
        Description

      • Name
        name
        Type
        str
        Default
        Description

        The name of the class to find.

      Response

      Type
      typing.Optional[type[Resource]]
      Description

      The class with the given name, or `None` if no such class exists.

      Exceptions

      Type
      TypeError
      Description
      If the name is not a valid class name.

    Attributes

    • Name
      model
      Type
      str
      Value

      = '187299'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 5

      Description

    • Name
      tracks
      Type
      int
      Value

      = 1

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=22.5, y=497, z=93))

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.REAGENT

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'R13*****'

      Description

    • Name
      barcode_orientation
      Type
      typing.Literal['vertical', 'horizontal']
      Value

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=60.3)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=96)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=7)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 5

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = True

      Description

    • Name
      is_auto_loadable
      Type
      bool
      Value

      = True

      Description

    • Name
      is_loadable
      Type
      bool
      Value

      = True

      Description

    • Name
      is_recognizable
      Type
      bool
      Value

      = True

      Description

    • Name
      are_recognizable
      Type
      bool
      Value

      = False

      Description

    • Name
      children
      Type
      collections.abc.Sequence[CarrierSite]
      Value

      = dataclasses.field(repr=False, default_factory=lambda: [CarrierSite(dimensions=Vector(x=20, y=89.9), location=Vector(x=1.25, y=390.5, z=63.2)), CarrierSite(dimensions=Vector(x=20, y=89.9), location=Vector(x=1.25, y=294.5, z=63.2)), CarrierSite(dimensions=Vector(x=20, y=89.9), location=Vector(x=1.25, y=198.5, z=63.2)), CarrierSite(dimensions=Vector(x=20, y=89.9), location=Vector(x=1.25, y=102.5, z=63.2)), CarrierSite(dimensions=Vector(x=20, y=89.9), location=Vector(x=1.25, y=6.5, z=63.2))])

      Description

    • Name
      logger
      Type
      logging.Logger
      Value

      = None

      Description

    • Name
      tags
      Type
      dict
      Value

      = dataclasses.field(default_factory=dict)

      Description

    • Name
      identifier
      Type
      str
      Value

      = dataclasses.field(default_factory=lambda: str(uuid.uuid4().hex[:8]))

      Description

    • Name
      rotation
      Type
      int
      Value

      = 0

      Description

    • Name
      location
      Type
      typing.Optional[Vector]
      Value

      = None

      Description

    • Name
      Schema
      Type
      type[marshmallow.Schema]
      Value

      = marshmallow.Schema

      Description

    • Name
      name
      Type
      str
      Value

      = None

      Description

      A human readable name to identify resources.

    • Name
      absolute_location
      Type
      Vector
      Value

      = None

      Description

      The absolute location of this resource.

    • Name
      width
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the x-axis.

    • Name
      depth
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the y-axis.

    • Name
      height
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the z-axis.

    • Name
      center
      Type
      Vector
      Value

      = None

      Description

      The center base of this resource.

  • RGT_CAR_12R_A00

    Carries 12x 100ml reagent troughs in portrait orientation. Occupies 6 tracks.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        filled_with : dataclasses.InitVar[typing.Union[None, T, type[T]]],
        filled_at : dataclasses.InitVar[typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]],
        cols : int,
        rows : int,
        tracks : int,
        variant : str,
        revision : str,
        barcode : str,
        barcode_orientation : typing.Literal['vertical', 'horizontal'],
        barcode_count : int,
        read_barcode : bool,
        is_auto_loadable : bool,
        is_loadable : bool,
        is_recognizable : bool,
        are_recognizable : bool,
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        children
        Type
        collections.abc.Sequence[CarrierSite]
        Default
        Description

      • Name
        filled_with
        Type
        dataclasses.InitVar[typing.Union[None, T, type[T]]]
        Default
        = None
        Description

      • Name
        filled_at
        Type
        dataclasses.InitVar[typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]]
        Default
        = None
        Description

      • Name
        cols
        Type
        int
        Default
        = 1
        Description

      • Name
        rows
        Type
        int
        Default
        = 12
        Description

      • Name
        tracks
        Type
        int
        Default
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = REAGENT
        Description

      • Name
        orientation
        Type
        dataclasses.InitVar[Orientation]
        Default
        = LANDSCAPE
        Description

      • Name
        variant
        Type
        str
        Default
        = 'A'
        Description

      • Name
        revision
        Type
        str
        Default
        = '00'
        Description

      • Name
        barcode
        Type
        str
        Default
        = 'R03*****'
        Description

      • Name
        barcode_orientation
        Type
        typing.Literal['vertical', 'horizontal']
        Default
        = 'horizontal'
        Description

      • Name
        barcode_position
        Type
        Decimal
        Default
        Description

      • Name
        barcode_distance
        Type
        Decimal
        Default
        Description

      • Name
        barcode_width
        Type
        Decimal
        Default
        Description

      • Name
        barcode_count
        Type
        int
        Default
        = 3
        Description

      • Name
        read_barcode
        Type
        bool
        Default
        = True
        Description

      • Name
        is_auto_loadable
        Type
        bool
        Default
        = True
        Description

      • Name
        is_loadable
        Type
        bool
        Default
        = True
        Description

      • Name
        is_recognizable
        Type
        bool
        Default
        = True
        Description

      • Name
        are_recognizable
        Type
        bool
        Default
        = False
        Description

      • Name
        model
        Type
        str
        Default
        = '182080'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • __post_init__(
        self,
        filled_with,
        filled_at,
        *kwargs
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        filled_with
        Type
        Default
        Description

      • Name
        filled_at
        Type
        Default
        Description

      • Name
        orientation
        Type
        Orientation
        Default
        Description

      • Name
        *kwargs
        Type
        Default
        = ()
        Description

    • @typing_extensions.override

      __setitem__(self, key : typing.Union[int, str, slice], value : typing.Union[typing.Optional[T], collections.abc.Sequence[typing.Optional[T]]]) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      • Name
        value
        Type
        typing.Union[typing.Optional[T], collections.abc.Sequence[typing.Optional[T]]]
        Default
        Description

    • get(self, key : typing.Union[int, str]) -> typing.Optional[T]

      Access the labware in the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot from which to access the labware.

      Response

      Type
      typing.Optional[T]
      Description

    • @log()

      add(self, labware : T, key : typing.Union[int, str]) -> None

      Add labware to the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        labware
        Type
        T
        Default
        Description

        The labware to add to the spot.

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot where to add the labware.

    • @log()

      fill(self, labware : typing.Union[T, type[T], collections.abc.Sequence[T]], spots : typing.Optional[collections.abc.Sequence[Spot[T]]]) -> None

      Fill the spots of the rack with the given labware.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        labware
        Type
        typing.Union[T, type[T], collections.abc.Sequence[T]]
        Default
        Description

        The labware to assign to the spots. Pass either a class or instance of labware that is copied or a list with the labware instance for each spot.

      • Name
        spots
        Type
        typing.Optional[collections.abc.Sequence[Spot[T]]]
        Default
        = None
        Description

        The spots in which to assign the labware.

    • @log()

      remove(self, key : typing.Union[int, str]) -> typing.Optional[T]

      Remove labware from the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot from where to remove the labware.

      Response

      Type
      typing.Optional[T]
      Description

      The labware that was removed, if any.

    • @log()

      clear(self, spots : typing.Optional[collections.abc.Sequence[Spot[T]]]) -> collections.abc.Sequence[typing.Optional[T]]

      Clear the spots of the rack.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        spots
        Type
        typing.Optional[collections.abc.Sequence[Spot[T]]]
        Default
        = None
        Description

        The spots from which to unassign the labware.

      Response

      Type
      collections.abc.Sequence[typing.Optional[T]]
      Description

      The list of labware that was removed, if any.

    • __delitem__(self, key : typing.Union[int, str, slice]) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

    • __init_subclass__(cls) -> None

      Parameters

      • Name
        cls
        Type
        Default
        Description

    • @typing_extensions.override

      rotate_by(self, angle : int) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

    • find(self, identifier) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        identifier
        Type
        Default
        Description

    • __contains__(self, item : typing.Any) -> bool

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        item
        Type
        typing.Any
        Default
        Description

      Response

      Type
      bool
      Description

    • __getitem__(self, key : typing.Union[int, str, slice]) -> typing.Union[T, collections.abc.Sequence[T]]

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      Response

      Type
      typing.Union[T, collections.abc.Sequence[T]]
      Description

    • __len__(self) -> int

      The number of children in this group.

      Response

      Type
      int
      Description

      The number of children in this group.

    • __iter__(self) -> collections.abc.Iterator[T]

      Iterate over the children of this group.

      Response

      Type
      collections.abc.Iterator[T]
      Description

      An iterator to iterate over all children in this group.

    • _index(self, key : typing.Union[int, str, slice]) -> typing.Union[int, slice]

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      Response

      Type
      typing.Union[int, slice]
      Description

    • copy(self, **changes) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        **changes
        Type
        Default
        = {}
        Description

    • serialize(self) -> JsonSchema

      Response

      Type
      JsonSchema
      Description

    • assign_to(self, parent : Group) -> None

      Set the parent of this resource to the given group.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        parent
        Type
        Group
        Default
        Description

        The group to which this resource is assigned to.

    • @deprecation.deprecated(deprecated_in='0.1.20', removed_in='0.2.0', current_version=__version__, details='Use `rotate_by` instead.')

      rotate(self, angle : int) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

    • rotate_to(self, angle : int) -> None

      Rotate to the given absolute angle in degrees.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

        The angle in degrees to rotate the resource. Must be a multiple of 90°.

    • @classmethod

      deserialize(cls, identifier : str, schema : JsonSchema) -> typing_extensions.Self

      Deserialize a JSON-like dictionary to a resource.

      Parameters

      • Name
        cls
        Type
        Default
        Description

      • Name
        identifier
        Type
        str
        Default
        Description

        The identifier of the resource to deserialize.

      • Name
        schema
        Type
        JsonSchema
        Default
        Description

        The JSON-like dictionary with the resource's data.

      Response

      Type
      typing_extensions.Self
      Description

      The newly created resource.

    • @classmethod

      subclass_by_name(cls, name : str) -> typing.Optional[type[Resource]]

      Recursively find a resource subclass with the given name.

      Parameters

      • Name
        cls
        Type
        Default
        Description

      • Name
        name
        Type
        str
        Default
        Description

        The name of the class to find.

      Response

      Type
      typing.Optional[type[Resource]]
      Description

      The class with the given name, or `None` if no such class exists.

      Exceptions

      Type
      TypeError
      Description
      If the name is not a valid class name.

    Attributes

    • Name
      model
      Type
      str
      Value

      = '182080'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 12

      Description

    • Name
      tracks
      Type
      int
      Value

      = 6

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=135, y=497, z=130))

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.REAGENT

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'R03*****'

      Description

    • Name
      barcode_orientation
      Type
      typing.Literal['vertical', 'horizontal']
      Value

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=115)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=155.7)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=30)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 3

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = True

      Description

    • Name
      is_auto_loadable
      Type
      bool
      Value

      = True

      Description

    • Name
      is_loadable
      Type
      bool
      Value

      = True

      Description

    • Name
      is_recognizable
      Type
      bool
      Value

      = True

      Description

    • Name
      are_recognizable
      Type
      bool
      Value

      = False

      Description

    • Name
      children
      Type
      collections.abc.Sequence[CarrierSite]
      Value

      = dataclasses.field(repr=False, default_factory=lambda: [CarrierSite(dimensions=Vector(x=26.5, y=112.8), location=Vector(x=13.85, y=342.85, z=81)), CarrierSite(dimensions=Vector(x=26.5, y=112.8), location=Vector(x=40.35, y=342.85, z=81)), CarrierSite(dimensions=Vector(x=26.5, y=112.8), location=Vector(x=66.85, y=342.85, z=81)), CarrierSite(dimensions=Vector(x=26.5, y=112.8), location=Vector(x=93.35, y=342.85, z=81)), CarrierSite(dimensions=Vector(x=26.5, y=112.8), location=Vector(x=13.85, y=187.15, z=81)), CarrierSite(dimensions=Vector(x=26.5, y=112.8), location=Vector(x=40.35, y=187.15, z=81)), CarrierSite(dimensions=Vector(x=26.5, y=112.8), location=Vector(x=66.85, y=187.15, z=81)), CarrierSite(dimensions=Vector(x=26.5, y=112.8), location=Vector(x=93.35, y=187.15, z=81)), CarrierSite(dimensions=Vector(x=26.5, y=112.8), location=Vector(x=13.85, y=31.45, z=81)), CarrierSite(dimensions=Vector(x=26.5, y=112.8), location=Vector(x=40.35, y=31.45, z=81)), CarrierSite(dimensions=Vector(x=26.5, y=112.8), location=Vector(x=66.85, y=31.45, z=81)), CarrierSite(dimensions=Vector(x=26.5, y=112.8), location=Vector(x=93.35, y=31.45, z=81))])

      Description

    • Name
      logger
      Type
      logging.Logger
      Value

      = None

      Description

    • Name
      tags
      Type
      dict
      Value

      = dataclasses.field(default_factory=dict)

      Description

    • Name
      identifier
      Type
      str
      Value

      = dataclasses.field(default_factory=lambda: str(uuid.uuid4().hex[:8]))

      Description

    • Name
      rotation
      Type
      int
      Value

      = 0

      Description

    • Name
      location
      Type
      typing.Optional[Vector]
      Value

      = None

      Description

    • Name
      Schema
      Type
      type[marshmallow.Schema]
      Value

      = marshmallow.Schema

      Description

    • Name
      name
      Type
      str
      Value

      = None

      Description

      A human readable name to identify resources.

    • Name
      absolute_location
      Type
      Vector
      Value

      = None

      Description

      The absolute location of this resource.

    • Name
      width
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the x-axis.

    • Name
      depth
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the y-axis.

    • Name
      height
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the z-axis.

    • Name
      center
      Type
      Vector
      Value

      = None

      Description

      The center base of this resource.

  • RGT_CAR_4R100_A00

    Carries 4x 100ml reagent troughs in portrait orientation. Occupies 1 track.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        filled_with : dataclasses.InitVar[typing.Union[None, T, type[T]]],
        filled_at : dataclasses.InitVar[typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]],
        cols : int,
        rows : int,
        tracks : int,
        variant : str,
        revision : str,
        barcode : str,
        barcode_orientation : typing.Literal['vertical', 'horizontal'],
        barcode_count : int,
        read_barcode : bool,
        is_auto_loadable : bool,
        is_loadable : bool,
        is_recognizable : bool,
        are_recognizable : bool,
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        children
        Type
        collections.abc.Sequence[CarrierSite]
        Default
        Description

      • Name
        filled_with
        Type
        dataclasses.InitVar[typing.Union[None, T, type[T]]]
        Default
        = None
        Description

      • Name
        filled_at
        Type
        dataclasses.InitVar[typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]]
        Default
        = None
        Description

      • Name
        cols
        Type
        int
        Default
        = 1
        Description

      • Name
        rows
        Type
        int
        Default
        = 4
        Description

      • Name
        tracks
        Type
        int
        Default
        = 1
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = REAGENT
        Description

      • Name
        orientation
        Type
        dataclasses.InitVar[Orientation]
        Default
        = LANDSCAPE
        Description

      • Name
        variant
        Type
        str
        Default
        = 'A'
        Description

      • Name
        revision
        Type
        str
        Default
        = '00'
        Description

      • Name
        barcode
        Type
        str
        Default
        = 'R08*****'
        Description

      • Name
        barcode_orientation
        Type
        typing.Literal['vertical', 'horizontal']
        Default
        = 'horizontal'
        Description

      • Name
        barcode_position
        Type
        Decimal
        Default
        Description

      • Name
        barcode_distance
        Type
        Decimal
        Default
        Description

      • Name
        barcode_width
        Type
        Decimal
        Default
        Description

      • Name
        barcode_count
        Type
        int
        Default
        = 4
        Description

      • Name
        read_barcode
        Type
        bool
        Default
        = True
        Description

      • Name
        is_auto_loadable
        Type
        bool
        Default
        = True
        Description

      • Name
        is_loadable
        Type
        bool
        Default
        = True
        Description

      • Name
        is_recognizable
        Type
        bool
        Default
        = True
        Description

      • Name
        are_recognizable
        Type
        bool
        Default
        = False
        Description

      • Name
        model
        Type
        str
        Default
        = '187239'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • __post_init__(
        self,
        filled_with,
        filled_at,
        *kwargs
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        filled_with
        Type
        Default
        Description

      • Name
        filled_at
        Type
        Default
        Description

      • Name
        orientation
        Type
        Orientation
        Default
        Description

      • Name
        *kwargs
        Type
        Default
        = ()
        Description

    • @typing_extensions.override

      __setitem__(self, key : typing.Union[int, str, slice], value : typing.Union[typing.Optional[T], collections.abc.Sequence[typing.Optional[T]]]) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      • Name
        value
        Type
        typing.Union[typing.Optional[T], collections.abc.Sequence[typing.Optional[T]]]
        Default
        Description

    • get(self, key : typing.Union[int, str]) -> typing.Optional[T]

      Access the labware in the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot from which to access the labware.

      Response

      Type
      typing.Optional[T]
      Description

    • @log()

      add(self, labware : T, key : typing.Union[int, str]) -> None

      Add labware to the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        labware
        Type
        T
        Default
        Description

        The labware to add to the spot.

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot where to add the labware.

    • @log()

      fill(self, labware : typing.Union[T, type[T], collections.abc.Sequence[T]], spots : typing.Optional[collections.abc.Sequence[Spot[T]]]) -> None

      Fill the spots of the rack with the given labware.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        labware
        Type
        typing.Union[T, type[T], collections.abc.Sequence[T]]
        Default
        Description

        The labware to assign to the spots. Pass either a class or instance of labware that is copied or a list with the labware instance for each spot.

      • Name
        spots
        Type
        typing.Optional[collections.abc.Sequence[Spot[T]]]
        Default
        = None
        Description

        The spots in which to assign the labware.

    • @log()

      remove(self, key : typing.Union[int, str]) -> typing.Optional[T]

      Remove labware from the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot from where to remove the labware.

      Response

      Type
      typing.Optional[T]
      Description

      The labware that was removed, if any.

    • @log()

      clear(self, spots : typing.Optional[collections.abc.Sequence[Spot[T]]]) -> collections.abc.Sequence[typing.Optional[T]]

      Clear the spots of the rack.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        spots
        Type
        typing.Optional[collections.abc.Sequence[Spot[T]]]
        Default
        = None
        Description

        The spots from which to unassign the labware.

      Response

      Type
      collections.abc.Sequence[typing.Optional[T]]
      Description

      The list of labware that was removed, if any.

    • __delitem__(self, key : typing.Union[int, str, slice]) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

    • __init_subclass__(cls) -> None

      Parameters

      • Name
        cls
        Type
        Default
        Description

    • @typing_extensions.override

      rotate_by(self, angle : int) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

    • find(self, identifier) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        identifier
        Type
        Default
        Description

    • __contains__(self, item : typing.Any) -> bool

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        item
        Type
        typing.Any
        Default
        Description

      Response

      Type
      bool
      Description

    • __getitem__(self, key : typing.Union[int, str, slice]) -> typing.Union[T, collections.abc.Sequence[T]]

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      Response

      Type
      typing.Union[T, collections.abc.Sequence[T]]
      Description

    • __len__(self) -> int

      The number of children in this group.

      Response

      Type
      int
      Description

      The number of children in this group.

    • __iter__(self) -> collections.abc.Iterator[T]

      Iterate over the children of this group.

      Response

      Type
      collections.abc.Iterator[T]
      Description

      An iterator to iterate over all children in this group.

    • _index(self, key : typing.Union[int, str, slice]) -> typing.Union[int, slice]

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      Response

      Type
      typing.Union[int, slice]
      Description

    • copy(self, **changes) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        **changes
        Type
        Default
        = {}
        Description

    • serialize(self) -> JsonSchema

      Response

      Type
      JsonSchema
      Description

    • assign_to(self, parent : Group) -> None

      Set the parent of this resource to the given group.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        parent
        Type
        Group
        Default
        Description

        The group to which this resource is assigned to.

    • @deprecation.deprecated(deprecated_in='0.1.20', removed_in='0.2.0', current_version=__version__, details='Use `rotate_by` instead.')

      rotate(self, angle : int) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

    • rotate_to(self, angle : int) -> None

      Rotate to the given absolute angle in degrees.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

        The angle in degrees to rotate the resource. Must be a multiple of 90°.

    • @classmethod

      deserialize(cls, identifier : str, schema : JsonSchema) -> typing_extensions.Self

      Deserialize a JSON-like dictionary to a resource.

      Parameters

      • Name
        cls
        Type
        Default
        Description

      • Name
        identifier
        Type
        str
        Default
        Description

        The identifier of the resource to deserialize.

      • Name
        schema
        Type
        JsonSchema
        Default
        Description

        The JSON-like dictionary with the resource's data.

      Response

      Type
      typing_extensions.Self
      Description

      The newly created resource.

    • @classmethod

      subclass_by_name(cls, name : str) -> typing.Optional[type[Resource]]

      Recursively find a resource subclass with the given name.

      Parameters

      • Name
        cls
        Type
        Default
        Description

      • Name
        name
        Type
        str
        Default
        Description

        The name of the class to find.

      Response

      Type
      typing.Optional[type[Resource]]
      Description

      The class with the given name, or `None` if no such class exists.

      Exceptions

      Type
      TypeError
      Description
      If the name is not a valid class name.

    Attributes

    • Name
      model
      Type
      str
      Value

      = '187239'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 4

      Description

    • Name
      tracks
      Type
      int
      Value

      = 1

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=22.5, y=497, z=130))

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.REAGENT

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'R08*****'

      Description

    • Name
      barcode_orientation
      Type
      typing.Literal['vertical', 'horizontal']
      Value

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=64)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=121)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=30)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 4

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = True

      Description

    • Name
      is_auto_loadable
      Type
      bool
      Value

      = True

      Description

    • Name
      is_loadable
      Type
      bool
      Value

      = True

      Description

    • Name
      is_recognizable
      Type
      bool
      Value

      = True

      Description

    • Name
      are_recognizable
      Type
      bool
      Value

      = False

      Description

    • Name
      children
      Type
      collections.abc.Sequence[CarrierSite]
      Value

      = dataclasses.field(repr=False, default_factory=lambda: [CarrierSite(dimensions=Vector(x=21, y=120), location=Vector(x=0.75, y=367.5, z=17.5)), CarrierSite(dimensions=Vector(x=21, y=120), location=Vector(x=0.75, y=246.5, z=17.5)), CarrierSite(dimensions=Vector(x=21, y=120), location=Vector(x=0.75, y=125.5, z=17.5)), CarrierSite(dimensions=Vector(x=21, y=120), location=Vector(x=0.75, y=4.5, z=17.5))])

      Description

    • Name
      logger
      Type
      logging.Logger
      Value

      = None

      Description

    • Name
      tags
      Type
      dict
      Value

      = dataclasses.field(default_factory=dict)

      Description

    • Name
      identifier
      Type
      str
      Value

      = dataclasses.field(default_factory=lambda: str(uuid.uuid4().hex[:8]))

      Description

    • Name
      rotation
      Type
      int
      Value

      = 0

      Description

    • Name
      location
      Type
      typing.Optional[Vector]
      Value

      = None

      Description

    • Name
      Schema
      Type
      type[marshmallow.Schema]
      Value

      = marshmallow.Schema

      Description

    • Name
      name
      Type
      str
      Value

      = None

      Description

      A human readable name to identify resources.

    • Name
      absolute_location
      Type
      Vector
      Value

      = None

      Description

      The absolute location of this resource.

    • Name
      width
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the x-axis.

    • Name
      depth
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the y-axis.

    • Name
      height
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the z-axis.

    • Name
      center
      Type
      Vector
      Value

      = None

      Description

      The center base of this resource.

  • RGT_CAR_3R_A00

    Carries 3x 120ml reagent troughs in portrait orientation. Occupies 1 track.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        filled_with : dataclasses.InitVar[typing.Union[None, T, type[T]]],
        filled_at : dataclasses.InitVar[typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]],
        cols : int,
        rows : int,
        tracks : int,
        variant : str,
        revision : str,
        barcode : str,
        barcode_orientation : typing.Literal['vertical', 'horizontal'],
        barcode_count : int,
        read_barcode : bool,
        is_auto_loadable : bool,
        is_loadable : bool,
        is_recognizable : bool,
        are_recognizable : bool,
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        children
        Type
        collections.abc.Sequence[CarrierSite]
        Default
        Description

      • Name
        filled_with
        Type
        dataclasses.InitVar[typing.Union[None, T, type[T]]]
        Default
        = None
        Description

      • Name
        filled_at
        Type
        dataclasses.InitVar[typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]]
        Default
        = None
        Description

      • Name
        cols
        Type
        int
        Default
        = 1
        Description

      • Name
        rows
        Type
        int
        Default
        = 3
        Description

      • Name
        tracks
        Type
        int
        Default
        = 1
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = REAGENT
        Description

      • Name
        orientation
        Type
        dataclasses.InitVar[Orientation]
        Default
        = LANDSCAPE
        Description

      • Name
        variant
        Type
        str
        Default
        = 'A'
        Description

      • Name
        revision
        Type
        str
        Default
        = '00'
        Description

      • Name
        barcode
        Type
        str
        Default
        = 'R02*****'
        Description

      • Name
        barcode_orientation
        Type
        typing.Literal['vertical', 'horizontal']
        Default
        = 'vertical'
        Description

      • Name
        barcode_position
        Type
        Decimal
        Default
        Description

      • Name
        barcode_distance
        Type
        Decimal
        Default
        Description

      • Name
        barcode_width
        Type
        Decimal
        Default
        Description

      • Name
        barcode_count
        Type
        int
        Default
        = 3
        Description

      • Name
        read_barcode
        Type
        bool
        Default
        = True
        Description

      • Name
        is_auto_loadable
        Type
        bool
        Default
        = True
        Description

      • Name
        is_loadable
        Type
        bool
        Default
        = True
        Description

      • Name
        is_recognizable
        Type
        bool
        Default
        = True
        Description

      • Name
        are_recognizable
        Type
        bool
        Default
        = False
        Description

      • Name
        model
        Type
        str
        Default
        = '185290'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • __post_init__(
        self,
        filled_with,
        filled_at,
        *kwargs
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        filled_with
        Type
        Default
        Description

      • Name
        filled_at
        Type
        Default
        Description

      • Name
        orientation
        Type
        Orientation
        Default
        Description

      • Name
        *kwargs
        Type
        Default
        = ()
        Description

    • @typing_extensions.override

      __setitem__(self, key : typing.Union[int, str, slice], value : typing.Union[typing.Optional[T], collections.abc.Sequence[typing.Optional[T]]]) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      • Name
        value
        Type
        typing.Union[typing.Optional[T], collections.abc.Sequence[typing.Optional[T]]]
        Default
        Description

    • get(self, key : typing.Union[int, str]) -> typing.Optional[T]

      Access the labware in the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot from which to access the labware.

      Response

      Type
      typing.Optional[T]
      Description

    • @log()

      add(self, labware : T, key : typing.Union[int, str]) -> None

      Add labware to the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        labware
        Type
        T
        Default
        Description

        The labware to add to the spot.

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot where to add the labware.

    • @log()

      fill(self, labware : typing.Union[T, type[T], collections.abc.Sequence[T]], spots : typing.Optional[collections.abc.Sequence[Spot[T]]]) -> None

      Fill the spots of the rack with the given labware.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        labware
        Type
        typing.Union[T, type[T], collections.abc.Sequence[T]]
        Default
        Description

        The labware to assign to the spots. Pass either a class or instance of labware that is copied or a list with the labware instance for each spot.

      • Name
        spots
        Type
        typing.Optional[collections.abc.Sequence[Spot[T]]]
        Default
        = None
        Description

        The spots in which to assign the labware.

    • @log()

      remove(self, key : typing.Union[int, str]) -> typing.Optional[T]

      Remove labware from the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot from where to remove the labware.

      Response

      Type
      typing.Optional[T]
      Description

      The labware that was removed, if any.

    • @log()

      clear(self, spots : typing.Optional[collections.abc.Sequence[Spot[T]]]) -> collections.abc.Sequence[typing.Optional[T]]

      Clear the spots of the rack.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        spots
        Type
        typing.Optional[collections.abc.Sequence[Spot[T]]]
        Default
        = None
        Description

        The spots from which to unassign the labware.

      Response

      Type
      collections.abc.Sequence[typing.Optional[T]]
      Description

      The list of labware that was removed, if any.

    • __delitem__(self, key : typing.Union[int, str, slice]) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

    • __init_subclass__(cls) -> None

      Parameters

      • Name
        cls
        Type
        Default
        Description

    • @typing_extensions.override

      rotate_by(self, angle : int) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

    • find(self, identifier) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        identifier
        Type
        Default
        Description

    • __contains__(self, item : typing.Any) -> bool

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        item
        Type
        typing.Any
        Default
        Description

      Response

      Type
      bool
      Description

    • __getitem__(self, key : typing.Union[int, str, slice]) -> typing.Union[T, collections.abc.Sequence[T]]

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      Response

      Type
      typing.Union[T, collections.abc.Sequence[T]]
      Description

    • __len__(self) -> int

      The number of children in this group.

      Response

      Type
      int
      Description

      The number of children in this group.

    • __iter__(self) -> collections.abc.Iterator[T]

      Iterate over the children of this group.

      Response

      Type
      collections.abc.Iterator[T]
      Description

      An iterator to iterate over all children in this group.

    • _index(self, key : typing.Union[int, str, slice]) -> typing.Union[int, slice]

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      Response

      Type
      typing.Union[int, slice]
      Description

    • copy(self, **changes) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        **changes
        Type
        Default
        = {}
        Description

    • serialize(self) -> JsonSchema

      Response

      Type
      JsonSchema
      Description

    • assign_to(self, parent : Group) -> None

      Set the parent of this resource to the given group.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        parent
        Type
        Group
        Default
        Description

        The group to which this resource is assigned to.

    • @deprecation.deprecated(deprecated_in='0.1.20', removed_in='0.2.0', current_version=__version__, details='Use `rotate_by` instead.')

      rotate(self, angle : int) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

    • rotate_to(self, angle : int) -> None

      Rotate to the given absolute angle in degrees.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

        The angle in degrees to rotate the resource. Must be a multiple of 90°.

    • @classmethod

      deserialize(cls, identifier : str, schema : JsonSchema) -> typing_extensions.Self

      Deserialize a JSON-like dictionary to a resource.

      Parameters

      • Name
        cls
        Type
        Default
        Description

      • Name
        identifier
        Type
        str
        Default
        Description

        The identifier of the resource to deserialize.

      • Name
        schema
        Type
        JsonSchema
        Default
        Description

        The JSON-like dictionary with the resource's data.

      Response

      Type
      typing_extensions.Self
      Description

      The newly created resource.

    • @classmethod

      subclass_by_name(cls, name : str) -> typing.Optional[type[Resource]]

      Recursively find a resource subclass with the given name.

      Parameters

      • Name
        cls
        Type
        Default
        Description

      • Name
        name
        Type
        str
        Default
        Description

        The name of the class to find.

      Response

      Type
      typing.Optional[type[Resource]]
      Description

      The class with the given name, or `None` if no such class exists.

      Exceptions

      Type
      TypeError
      Description
      If the name is not a valid class name.

    Attributes

    • Name
      model
      Type
      str
      Value

      = '185290'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 3

      Description

    • Name
      tracks
      Type
      int
      Value

      = 1

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=22.5, y=497, z=136))

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.REAGENT

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'R02*****'

      Description

    • Name
      barcode_orientation
      Type
      typing.Literal['vertical', 'horizontal']
      Value

      = 'vertical'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=90)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=163)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=45)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 3

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = True

      Description

    • Name
      is_auto_loadable
      Type
      bool
      Value

      = True

      Description

    • Name
      is_loadable
      Type
      bool
      Value

      = True

      Description

    • Name
      is_recognizable
      Type
      bool
      Value

      = True

      Description

    • Name
      are_recognizable
      Type
      bool
      Value

      = False

      Description

    • Name
      children
      Type
      collections.abc.Sequence[CarrierSite]
      Value

      = dataclasses.field(repr=False, default_factory=lambda: [CarrierSite(dimensions=Vector(x=21, y=142), location=Vector(x=0.75, y=335.9, z=18.5)), CarrierSite(dimensions=Vector(x=21, y=142), location=Vector(x=0.75, y=172.5, z=18.5)), CarrierSite(dimensions=Vector(x=21, y=142), location=Vector(x=0.75, y=9.1, z=18.5))])

      Description

    • Name
      logger
      Type
      logging.Logger
      Value

      = None

      Description

    • Name
      tags
      Type
      dict
      Value

      = dataclasses.field(default_factory=dict)

      Description

    • Name
      identifier
      Type
      str
      Value

      = dataclasses.field(default_factory=lambda: str(uuid.uuid4().hex[:8]))

      Description

    • Name
      rotation
      Type
      int
      Value

      = 0

      Description

    • Name
      location
      Type
      typing.Optional[Vector]
      Value

      = None

      Description

    • Name
      Schema
      Type
      type[marshmallow.Schema]
      Value

      = marshmallow.Schema

      Description

    • Name
      name
      Type
      str
      Value

      = None

      Description

      A human readable name to identify resources.

    • Name
      absolute_location
      Type
      Vector
      Value

      = None

      Description

      The absolute location of this resource.

    • Name
      width
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the x-axis.

    • Name
      depth
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the y-axis.

    • Name
      height
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the z-axis.

    • Name
      center
      Type
      Vector
      Value

      = None

      Description

      The center base of this resource.

  • RGT_CAR_3R_A01

    Carries 3x 120ml reagent troughs in portrait orientation. Occupies 1 track.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        filled_with : dataclasses.InitVar[typing.Union[None, T, type[T]]],
        filled_at : dataclasses.InitVar[typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]],
        cols : int,
        rows : int,
        tracks : int,
        variant : str,
        revision : str,
        barcode : str,
        barcode_orientation : typing.Literal['vertical', 'horizontal'],
        barcode_count : int,
        read_barcode : bool,
        is_auto_loadable : bool,
        is_loadable : bool,
        is_recognizable : bool,
        are_recognizable : bool,
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        children
        Type
        collections.abc.Sequence[CarrierSite]
        Default
        Description

      • Name
        filled_with
        Type
        dataclasses.InitVar[typing.Union[None, T, type[T]]]
        Default
        = None
        Description

      • Name
        filled_at
        Type
        dataclasses.InitVar[typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]]
        Default
        = None
        Description

      • Name
        cols
        Type
        int
        Default
        = 1
        Description

      • Name
        rows
        Type
        int
        Default
        = 3
        Description

      • Name
        tracks
        Type
        int
        Default
        = 1
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = REAGENT
        Description

      • Name
        orientation
        Type
        dataclasses.InitVar[Orientation]
        Default
        = LANDSCAPE
        Description

      • Name
        variant
        Type
        str
        Default
        = 'A'
        Description

      • Name
        revision
        Type
        str
        Default
        = '01'
        Description

      • Name
        barcode
        Type
        str
        Default
        = 'R09*****'
        Description

      • Name
        barcode_orientation
        Type
        typing.Literal['vertical', 'horizontal']
        Default
        = 'horizontal'
        Description

      • Name
        barcode_position
        Type
        Decimal
        Default
        Description

      • Name
        barcode_distance
        Type
        Decimal
        Default
        Description

      • Name
        barcode_width
        Type
        Decimal
        Default
        Description

      • Name
        barcode_count
        Type
        int
        Default
        = 3
        Description

      • Name
        read_barcode
        Type
        bool
        Default
        = True
        Description

      • Name
        is_auto_loadable
        Type
        bool
        Default
        = True
        Description

      • Name
        is_loadable
        Type
        bool
        Default
        = True
        Description

      • Name
        is_recognizable
        Type
        bool
        Default
        = True
        Description

      • Name
        are_recognizable
        Type
        bool
        Default
        = False
        Description

      • Name
        model
        Type
        str
        Default
        = '185290'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • __post_init__(
        self,
        filled_with,
        filled_at,
        *kwargs
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        filled_with
        Type
        Default
        Description

      • Name
        filled_at
        Type
        Default
        Description

      • Name
        orientation
        Type
        Orientation
        Default
        Description

      • Name
        *kwargs
        Type
        Default
        = ()
        Description

    • @typing_extensions.override

      __setitem__(self, key : typing.Union[int, str, slice], value : typing.Union[typing.Optional[T], collections.abc.Sequence[typing.Optional[T]]]) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      • Name
        value
        Type
        typing.Union[typing.Optional[T], collections.abc.Sequence[typing.Optional[T]]]
        Default
        Description

    • get(self, key : typing.Union[int, str]) -> typing.Optional[T]

      Access the labware in the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot from which to access the labware.

      Response

      Type
      typing.Optional[T]
      Description

    • @log()

      add(self, labware : T, key : typing.Union[int, str]) -> None

      Add labware to the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        labware
        Type
        T
        Default
        Description

        The labware to add to the spot.

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot where to add the labware.

    • @log()

      fill(self, labware : typing.Union[T, type[T], collections.abc.Sequence[T]], spots : typing.Optional[collections.abc.Sequence[Spot[T]]]) -> None

      Fill the spots of the rack with the given labware.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        labware
        Type
        typing.Union[T, type[T], collections.abc.Sequence[T]]
        Default
        Description

        The labware to assign to the spots. Pass either a class or instance of labware that is copied or a list with the labware instance for each spot.

      • Name
        spots
        Type
        typing.Optional[collections.abc.Sequence[Spot[T]]]
        Default
        = None
        Description

        The spots in which to assign the labware.

    • @log()

      remove(self, key : typing.Union[int, str]) -> typing.Optional[T]

      Remove labware from the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot from where to remove the labware.

      Response

      Type
      typing.Optional[T]
      Description

      The labware that was removed, if any.

    • @log()

      clear(self, spots : typing.Optional[collections.abc.Sequence[Spot[T]]]) -> collections.abc.Sequence[typing.Optional[T]]

      Clear the spots of the rack.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        spots
        Type
        typing.Optional[collections.abc.Sequence[Spot[T]]]
        Default
        = None
        Description

        The spots from which to unassign the labware.

      Response

      Type
      collections.abc.Sequence[typing.Optional[T]]
      Description

      The list of labware that was removed, if any.

    • __delitem__(self, key : typing.Union[int, str, slice]) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

    • __init_subclass__(cls) -> None

      Parameters

      • Name
        cls
        Type
        Default
        Description

    • @typing_extensions.override

      rotate_by(self, angle : int) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

    • find(self, identifier) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        identifier
        Type
        Default
        Description

    • __contains__(self, item : typing.Any) -> bool

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        item
        Type
        typing.Any
        Default
        Description

      Response

      Type
      bool
      Description

    • __getitem__(self, key : typing.Union[int, str, slice]) -> typing.Union[T, collections.abc.Sequence[T]]

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      Response

      Type
      typing.Union[T, collections.abc.Sequence[T]]
      Description

    • __len__(self) -> int

      The number of children in this group.

      Response

      Type
      int
      Description

      The number of children in this group.

    • __iter__(self) -> collections.abc.Iterator[T]

      Iterate over the children of this group.

      Response

      Type
      collections.abc.Iterator[T]
      Description

      An iterator to iterate over all children in this group.

    • _index(self, key : typing.Union[int, str, slice]) -> typing.Union[int, slice]

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      Response

      Type
      typing.Union[int, slice]
      Description

    • copy(self, **changes) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        **changes
        Type
        Default
        = {}
        Description

    • serialize(self) -> JsonSchema

      Response

      Type
      JsonSchema
      Description

    • assign_to(self, parent : Group) -> None

      Set the parent of this resource to the given group.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        parent
        Type
        Group
        Default
        Description

        The group to which this resource is assigned to.

    • @deprecation.deprecated(deprecated_in='0.1.20', removed_in='0.2.0', current_version=__version__, details='Use `rotate_by` instead.')

      rotate(self, angle : int) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

    • rotate_to(self, angle : int) -> None

      Rotate to the given absolute angle in degrees.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

        The angle in degrees to rotate the resource. Must be a multiple of 90°.

    • @classmethod

      deserialize(cls, identifier : str, schema : JsonSchema) -> typing_extensions.Self

      Deserialize a JSON-like dictionary to a resource.

      Parameters

      • Name
        cls
        Type
        Default
        Description

      • Name
        identifier
        Type
        str
        Default
        Description

        The identifier of the resource to deserialize.

      • Name
        schema
        Type
        JsonSchema
        Default
        Description

        The JSON-like dictionary with the resource's data.

      Response

      Type
      typing_extensions.Self
      Description

      The newly created resource.

    • @classmethod

      subclass_by_name(cls, name : str) -> typing.Optional[type[Resource]]

      Recursively find a resource subclass with the given name.

      Parameters

      • Name
        cls
        Type
        Default
        Description

      • Name
        name
        Type
        str
        Default
        Description

        The name of the class to find.

      Response

      Type
      typing.Optional[type[Resource]]
      Description

      The class with the given name, or `None` if no such class exists.

      Exceptions

      Type
      TypeError
      Description
      If the name is not a valid class name.

    Attributes

    • Name
      model
      Type
      str
      Value

      = '185290'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 3

      Description

    • Name
      tracks
      Type
      int
      Value

      = 1

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=22.5, y=497, z=136))

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.REAGENT

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '01'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'R09*****'

      Description

    • Name
      barcode_orientation
      Type
      typing.Literal['vertical', 'horizontal']
      Value

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=90)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=163)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=45)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 3

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = True

      Description

    • Name
      is_auto_loadable
      Type
      bool
      Value

      = True

      Description

    • Name
      is_loadable
      Type
      bool
      Value

      = True

      Description

    • Name
      is_recognizable
      Type
      bool
      Value

      = True

      Description

    • Name
      are_recognizable
      Type
      bool
      Value

      = False

      Description

    • Name
      children
      Type
      collections.abc.Sequence[CarrierSite]
      Value

      = dataclasses.field(repr=False, default_factory=lambda: [CarrierSite(dimensions=Vector(x=21, y=142), location=Vector(x=0.75, y=335.9, z=32.5)), CarrierSite(dimensions=Vector(x=21, y=142), location=Vector(x=0.75, y=172.5, z=32.5)), CarrierSite(dimensions=Vector(x=21, y=142), location=Vector(x=0.75, y=9.1, z=32.5))])

      Description

    • Name
      logger
      Type
      logging.Logger
      Value

      = None

      Description

    • Name
      tags
      Type
      dict
      Value

      = dataclasses.field(default_factory=dict)

      Description

    • Name
      identifier
      Type
      str
      Value

      = dataclasses.field(default_factory=lambda: str(uuid.uuid4().hex[:8]))

      Description

    • Name
      rotation
      Type
      int
      Value

      = 0

      Description

    • Name
      location
      Type
      typing.Optional[Vector]
      Value

      = None

      Description

    • Name
      Schema
      Type
      type[marshmallow.Schema]
      Value

      = marshmallow.Schema

      Description

    • Name
      name
      Type
      str
      Value

      = None

      Description

      A human readable name to identify resources.

    • Name
      absolute_location
      Type
      Vector
      Value

      = None

      Description

      The absolute location of this resource.

    • Name
      width
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the x-axis.

    • Name
      depth
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the y-axis.

    • Name
      height
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the z-axis.

    • Name
      center
      Type
      Vector
      Value

      = None

      Description

      The center base of this resource.

  • RGT_CAR_4R200_A00

    Carries 4x 200ml reagent troughs in portrait orientation. Occupies 2 tracks.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        filled_with : dataclasses.InitVar[typing.Union[None, T, type[T]]],
        filled_at : dataclasses.InitVar[typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]],
        cols : int,
        rows : int,
        tracks : int,
        variant : str,
        revision : str,
        barcode : str,
        barcode_orientation : typing.Literal['vertical', 'horizontal'],
        barcode_count : int,
        read_barcode : bool,
        is_auto_loadable : bool,
        is_loadable : bool,
        is_recognizable : bool,
        are_recognizable : bool,
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        children
        Type
        collections.abc.Sequence[CarrierSite]
        Default
        Description

      • Name
        filled_with
        Type
        dataclasses.InitVar[typing.Union[None, T, type[T]]]
        Default
        = None
        Description

      • Name
        filled_at
        Type
        dataclasses.InitVar[typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]]
        Default
        = None
        Description

      • Name
        cols
        Type
        int
        Default
        = 1
        Description

      • Name
        rows
        Type
        int
        Default
        = 4
        Description

      • Name
        tracks
        Type
        int
        Default
        = 2
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = REAGENT
        Description

      • Name
        orientation
        Type
        dataclasses.InitVar[Orientation]
        Default
        = LANDSCAPE
        Description

      • Name
        variant
        Type
        str
        Default
        = 'A'
        Description

      • Name
        revision
        Type
        str
        Default
        = '00'
        Description

      • Name
        barcode
        Type
        str
        Default
        = 'R11*****'
        Description

      • Name
        barcode_orientation
        Type
        typing.Literal['vertical', 'horizontal']
        Default
        = 'horizontal'
        Description

      • Name
        barcode_position
        Type
        Decimal
        Default
        Description

      • Name
        barcode_distance
        Type
        Decimal
        Default
        Description

      • Name
        barcode_width
        Type
        Decimal
        Default
        Description

      • Name
        barcode_count
        Type
        int
        Default
        = 4
        Description

      • Name
        read_barcode
        Type
        bool
        Default
        = True
        Description

      • Name
        is_auto_loadable
        Type
        bool
        Default
        = True
        Description

      • Name
        is_loadable
        Type
        bool
        Default
        = True
        Description

      • Name
        is_recognizable
        Type
        bool
        Default
        = True
        Description

      • Name
        are_recognizable
        Type
        bool
        Default
        = False
        Description

      • Name
        model
        Type
        str
        Default
        = '96890'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • __post_init__(
        self,
        filled_with,
        filled_at,
        *kwargs
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        filled_with
        Type
        Default
        Description

      • Name
        filled_at
        Type
        Default
        Description

      • Name
        orientation
        Type
        Orientation
        Default
        Description

      • Name
        *kwargs
        Type
        Default
        = ()
        Description

    • @typing_extensions.override

      __setitem__(self, key : typing.Union[int, str, slice], value : typing.Union[typing.Optional[T], collections.abc.Sequence[typing.Optional[T]]]) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      • Name
        value
        Type
        typing.Union[typing.Optional[T], collections.abc.Sequence[typing.Optional[T]]]
        Default
        Description

    • get(self, key : typing.Union[int, str]) -> typing.Optional[T]

      Access the labware in the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot from which to access the labware.

      Response

      Type
      typing.Optional[T]
      Description

    • @log()

      add(self, labware : T, key : typing.Union[int, str]) -> None

      Add labware to the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        labware
        Type
        T
        Default
        Description

        The labware to add to the spot.

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot where to add the labware.

    • @log()

      fill(self, labware : typing.Union[T, type[T], collections.abc.Sequence[T]], spots : typing.Optional[collections.abc.Sequence[Spot[T]]]) -> None

      Fill the spots of the rack with the given labware.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        labware
        Type
        typing.Union[T, type[T], collections.abc.Sequence[T]]
        Default
        Description

        The labware to assign to the spots. Pass either a class or instance of labware that is copied or a list with the labware instance for each spot.

      • Name
        spots
        Type
        typing.Optional[collections.abc.Sequence[Spot[T]]]
        Default
        = None
        Description

        The spots in which to assign the labware.

    • @log()

      remove(self, key : typing.Union[int, str]) -> typing.Optional[T]

      Remove labware from the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot from where to remove the labware.

      Response

      Type
      typing.Optional[T]
      Description

      The labware that was removed, if any.

    • @log()

      clear(self, spots : typing.Optional[collections.abc.Sequence[Spot[T]]]) -> collections.abc.Sequence[typing.Optional[T]]

      Clear the spots of the rack.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        spots
        Type
        typing.Optional[collections.abc.Sequence[Spot[T]]]
        Default
        = None
        Description

        The spots from which to unassign the labware.

      Response

      Type
      collections.abc.Sequence[typing.Optional[T]]
      Description

      The list of labware that was removed, if any.

    • __delitem__(self, key : typing.Union[int, str, slice]) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

    • __init_subclass__(cls) -> None

      Parameters

      • Name
        cls
        Type
        Default
        Description

    • @typing_extensions.override

      rotate_by(self, angle : int) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

    • find(self, identifier) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        identifier
        Type
        Default
        Description

    • __contains__(self, item : typing.Any) -> bool

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        item
        Type
        typing.Any
        Default
        Description

      Response

      Type
      bool
      Description

    • __getitem__(self, key : typing.Union[int, str, slice]) -> typing.Union[T, collections.abc.Sequence[T]]

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      Response

      Type
      typing.Union[T, collections.abc.Sequence[T]]
      Description

    • __len__(self) -> int

      The number of children in this group.

      Response

      Type
      int
      Description

      The number of children in this group.

    • __iter__(self) -> collections.abc.Iterator[T]

      Iterate over the children of this group.

      Response

      Type
      collections.abc.Iterator[T]
      Description

      An iterator to iterate over all children in this group.

    • _index(self, key : typing.Union[int, str, slice]) -> typing.Union[int, slice]

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      Response

      Type
      typing.Union[int, slice]
      Description

    • copy(self, **changes) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        **changes
        Type
        Default
        = {}
        Description

    • serialize(self) -> JsonSchema

      Response

      Type
      JsonSchema
      Description

    • assign_to(self, parent : Group) -> None

      Set the parent of this resource to the given group.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        parent
        Type
        Group
        Default
        Description

        The group to which this resource is assigned to.

    • @deprecation.deprecated(deprecated_in='0.1.20', removed_in='0.2.0', current_version=__version__, details='Use `rotate_by` instead.')

      rotate(self, angle : int) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

    • rotate_to(self, angle : int) -> None

      Rotate to the given absolute angle in degrees.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

        The angle in degrees to rotate the resource. Must be a multiple of 90°.

    • @classmethod

      deserialize(cls, identifier : str, schema : JsonSchema) -> typing_extensions.Self

      Deserialize a JSON-like dictionary to a resource.

      Parameters

      • Name
        cls
        Type
        Default
        Description

      • Name
        identifier
        Type
        str
        Default
        Description

        The identifier of the resource to deserialize.

      • Name
        schema
        Type
        JsonSchema
        Default
        Description

        The JSON-like dictionary with the resource's data.

      Response

      Type
      typing_extensions.Self
      Description

      The newly created resource.

    • @classmethod

      subclass_by_name(cls, name : str) -> typing.Optional[type[Resource]]

      Recursively find a resource subclass with the given name.

      Parameters

      • Name
        cls
        Type
        Default
        Description

      • Name
        name
        Type
        str
        Default
        Description

        The name of the class to find.

      Response

      Type
      typing.Optional[type[Resource]]
      Description

      The class with the given name, or `None` if no such class exists.

      Exceptions

      Type
      TypeError
      Description
      If the name is not a valid class name.

    Attributes

    • Name
      model
      Type
      str
      Value

      = '96890'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 4

      Description

    • Name
      tracks
      Type
      int
      Value

      = 2

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=45, y=497, z=70))

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.REAGENT

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'R11*****'

      Description

    • Name
      barcode_orientation
      Type
      typing.Literal['vertical', 'horizontal']
      Value

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=40)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=120)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=40)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 4

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = True

      Description

    • Name
      is_auto_loadable
      Type
      bool
      Value

      = True

      Description

    • Name
      is_loadable
      Type
      bool
      Value

      = True

      Description

    • Name
      is_recognizable
      Type
      bool
      Value

      = True

      Description

    • Name
      are_recognizable
      Type
      bool
      Value

      = False

      Description

    • Name
      children
      Type
      collections.abc.Sequence[CarrierSite]
      Value

      = dataclasses.field(repr=False, default_factory=lambda: [CarrierSite(dimensions=Vector(x=37.5, y=117.5), location=Vector(x=3.75, y=364.8, z=34.1)), CarrierSite(dimensions=Vector(x=37.5, y=117.5), location=Vector(x=3.75, y=243.8, z=34.1)), CarrierSite(dimensions=Vector(x=37.5, y=117.5), location=Vector(x=3.75, y=122.8, z=34.1)), CarrierSite(dimensions=Vector(x=37.5, y=117.5), location=Vector(x=3.75, y=1.8, z=34.1))])

      Description

    • Name
      logger
      Type
      logging.Logger
      Value

      = None

      Description

    • Name
      tags
      Type
      dict
      Value

      = dataclasses.field(default_factory=dict)

      Description

    • Name
      identifier
      Type
      str
      Value

      = dataclasses.field(default_factory=lambda: str(uuid.uuid4().hex[:8]))

      Description

    • Name
      rotation
      Type
      int
      Value

      = 0

      Description

    • Name
      location
      Type
      typing.Optional[Vector]
      Value

      = None

      Description

    • Name
      Schema
      Type
      type[marshmallow.Schema]
      Value

      = marshmallow.Schema

      Description

    • Name
      name
      Type
      str
      Value

      = None

      Description

      A human readable name to identify resources.

    • Name
      absolute_location
      Type
      Vector
      Value

      = None

      Description

      The absolute location of this resource.

    • Name
      width
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the x-axis.

    • Name
      depth
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the y-axis.

    • Name
      height
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the z-axis.

    • Name
      center
      Type
      Vector
      Value

      = None

      Description

      The center base of this resource.

  • RGT_CAR_4R200_B00

    Carries 4x 200ml reagent troughs in portrait orientation. Occupies 2 tracks.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        filled_with : dataclasses.InitVar[typing.Union[None, T, type[T]]],
        filled_at : dataclasses.InitVar[typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]],
        cols : int,
        rows : int,
        tracks : int,
        variant : str,
        revision : str,
        barcode : str,
        barcode_orientation : typing.Literal['vertical', 'horizontal'],
        barcode_count : int,
        read_barcode : bool,
        is_auto_loadable : bool,
        is_loadable : bool,
        is_recognizable : bool,
        are_recognizable : bool,
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        children
        Type
        collections.abc.Sequence[CarrierSite]
        Default
        Description

      • Name
        filled_with
        Type
        dataclasses.InitVar[typing.Union[None, T, type[T]]]
        Default
        = None
        Description

      • Name
        filled_at
        Type
        dataclasses.InitVar[typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]]
        Default
        = None
        Description

      • Name
        cols
        Type
        int
        Default
        = 1
        Description

      • Name
        rows
        Type
        int
        Default
        = 4
        Description

      • Name
        tracks
        Type
        int
        Default
        = 2
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = REAGENT
        Description

      • Name
        orientation
        Type
        dataclasses.InitVar[Orientation]
        Default
        = LANDSCAPE
        Description

      • Name
        variant
        Type
        str
        Default
        = 'B'
        Description

      • Name
        revision
        Type
        str
        Default
        = '00'
        Description

      • Name
        barcode
        Type
        str
        Default
        = 'R17*****'
        Description

      • Name
        barcode_orientation
        Type
        typing.Literal['vertical', 'horizontal']
        Default
        = 'horizontal'
        Description

      • Name
        barcode_position
        Type
        Decimal
        Default
        Description

      • Name
        barcode_distance
        Type
        Decimal
        Default
        Description

      • Name
        barcode_width
        Type
        Decimal
        Default
        Description

      • Name
        barcode_count
        Type
        int
        Default
        = 4
        Description

      • Name
        read_barcode
        Type
        bool
        Default
        = True
        Description

      • Name
        is_auto_loadable
        Type
        bool
        Default
        = True
        Description

      • Name
        is_loadable
        Type
        bool
        Default
        = True
        Description

      • Name
        is_recognizable
        Type
        bool
        Default
        = True
        Description

      • Name
        are_recognizable
        Type
        bool
        Default
        = False
        Description

      • Name
        model
        Type
        str
        Default
        = '96890'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • __post_init__(
        self,
        filled_with,
        filled_at,
        *kwargs
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        filled_with
        Type
        Default
        Description

      • Name
        filled_at
        Type
        Default
        Description

      • Name
        orientation
        Type
        Orientation
        Default
        Description

      • Name
        *kwargs
        Type
        Default
        = ()
        Description

    • @typing_extensions.override

      __setitem__(self, key : typing.Union[int, str, slice], value : typing.Union[typing.Optional[T], collections.abc.Sequence[typing.Optional[T]]]) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      • Name
        value
        Type
        typing.Union[typing.Optional[T], collections.abc.Sequence[typing.Optional[T]]]
        Default
        Description

    • get(self, key : typing.Union[int, str]) -> typing.Optional[T]

      Access the labware in the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot from which to access the labware.

      Response

      Type
      typing.Optional[T]
      Description

    • @log()

      add(self, labware : T, key : typing.Union[int, str]) -> None

      Add labware to the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        labware
        Type
        T
        Default
        Description

        The labware to add to the spot.

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot where to add the labware.

    • @log()

      fill(self, labware : typing.Union[T, type[T], collections.abc.Sequence[T]], spots : typing.Optional[collections.abc.Sequence[Spot[T]]]) -> None

      Fill the spots of the rack with the given labware.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        labware
        Type
        typing.Union[T, type[T], collections.abc.Sequence[T]]
        Default
        Description

        The labware to assign to the spots. Pass either a class or instance of labware that is copied or a list with the labware instance for each spot.

      • Name
        spots
        Type
        typing.Optional[collections.abc.Sequence[Spot[T]]]
        Default
        = None
        Description

        The spots in which to assign the labware.

    • @log()

      remove(self, key : typing.Union[int, str]) -> typing.Optional[T]

      Remove labware from the spot at the given key.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str]
        Default
        Description

        The key of the spot from where to remove the labware.

      Response

      Type
      typing.Optional[T]
      Description

      The labware that was removed, if any.

    • @log()

      clear(self, spots : typing.Optional[collections.abc.Sequence[Spot[T]]]) -> collections.abc.Sequence[typing.Optional[T]]

      Clear the spots of the rack.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        spots
        Type
        typing.Optional[collections.abc.Sequence[Spot[T]]]
        Default
        = None
        Description

        The spots from which to unassign the labware.

      Response

      Type
      collections.abc.Sequence[typing.Optional[T]]
      Description

      The list of labware that was removed, if any.

    • __delitem__(self, key : typing.Union[int, str, slice]) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

    • __init_subclass__(cls) -> None

      Parameters

      • Name
        cls
        Type
        Default
        Description

    • @typing_extensions.override

      rotate_by(self, angle : int) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

    • find(self, identifier) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        identifier
        Type
        Default
        Description

    • __contains__(self, item : typing.Any) -> bool

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        item
        Type
        typing.Any
        Default
        Description

      Response

      Type
      bool
      Description

    • __getitem__(self, key : typing.Union[int, str, slice]) -> typing.Union[T, collections.abc.Sequence[T]]

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      Response

      Type
      typing.Union[T, collections.abc.Sequence[T]]
      Description

    • __len__(self) -> int

      The number of children in this group.

      Response

      Type
      int
      Description

      The number of children in this group.

    • __iter__(self) -> collections.abc.Iterator[T]

      Iterate over the children of this group.

      Response

      Type
      collections.abc.Iterator[T]
      Description

      An iterator to iterate over all children in this group.

    • _index(self, key : typing.Union[int, str, slice]) -> typing.Union[int, slice]

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        key
        Type
        typing.Union[int, str, slice]
        Default
        Description

      Response

      Type
      typing.Union[int, slice]
      Description

    • copy(self, **changes) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        **changes
        Type
        Default
        = {}
        Description

    • serialize(self) -> JsonSchema

      Response

      Type
      JsonSchema
      Description

    • assign_to(self, parent : Group) -> None

      Set the parent of this resource to the given group.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        parent
        Type
        Group
        Default
        Description

        The group to which this resource is assigned to.

    • @deprecation.deprecated(deprecated_in='0.1.20', removed_in='0.2.0', current_version=__version__, details='Use `rotate_by` instead.')

      rotate(self, angle : int) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

    • rotate_to(self, angle : int) -> None

      Rotate to the given absolute angle in degrees.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        angle
        Type
        int
        Default
        Description

        The angle in degrees to rotate the resource. Must be a multiple of 90°.

    • @classmethod

      deserialize(cls, identifier : str, schema : JsonSchema) -> typing_extensions.Self

      Deserialize a JSON-like dictionary to a resource.

      Parameters

      • Name
        cls
        Type
        Default
        Description

      • Name
        identifier
        Type
        str
        Default
        Description

        The identifier of the resource to deserialize.

      • Name
        schema
        Type
        JsonSchema
        Default
        Description

        The JSON-like dictionary with the resource's data.

      Response

      Type
      typing_extensions.Self
      Description

      The newly created resource.

    • @classmethod

      subclass_by_name(cls, name : str) -> typing.Optional[type[Resource]]

      Recursively find a resource subclass with the given name.

      Parameters

      • Name
        cls
        Type
        Default
        Description

      • Name
        name
        Type
        str
        Default
        Description

        The name of the class to find.

      Response

      Type
      typing.Optional[type[Resource]]
      Description

      The class with the given name, or `None` if no such class exists.

      Exceptions

      Type
      TypeError
      Description
      If the name is not a valid class name.

    Attributes

    • Name
      model
      Type
      str
      Value

      = '96890'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 4

      Description

    • Name
      tracks
      Type
      int
      Value

      = 2

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=45, y=497, z=60))

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.REAGENT

      Description

    • Name
      variant
      Type
      str
      Value

      = 'B'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'R17*****'

      Description

    • Name
      barcode_orientation
      Type
      typing.Literal['vertical', 'horizontal']
      Value

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=40)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=120)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=40)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 4

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = True

      Description

    • Name
      is_auto_loadable
      Type
      bool
      Value

      = True

      Description

    • Name
      is_loadable
      Type
      bool
      Value

      = True

      Description

    • Name
      is_recognizable
      Type
      bool
      Value

      = True

      Description

    • Name
      are_recognizable
      Type
      bool
      Value

      = False

      Description

    • Name
      children
      Type
      collections.abc.Sequence[CarrierSite]
      Value

      = dataclasses.field(repr=False, default_factory=lambda: [CarrierSite(dimensions=Vector(x=37.5, y=117.5), location=Vector(x=3.75, y=364.8, z=34.1)), CarrierSite(dimensions=Vector(x=37.5, y=117.5), location=Vector(x=3.75, y=243.8, z=34.1)), CarrierSite(dimensions=Vector(x=37.5, y=117.5), location=Vector(x=3.75, y=122.8, z=34.1)), CarrierSite(dimensions=Vector(x=37.5, y=117.5), location=Vector(x=3.75, y=1.8, z=34.1))])

      Description

    • Name
      logger
      Type
      logging.Logger
      Value

      = None

      Description

    • Name
      tags
      Type
      dict
      Value

      = dataclasses.field(default_factory=dict)

      Description

    • Name
      identifier
      Type
      str
      Value

      = dataclasses.field(default_factory=lambda: str(uuid.uuid4().hex[:8]))

      Description

    • Name
      rotation
      Type
      int
      Value

      = 0

      Description

    • Name
      location
      Type
      typing.Optional[Vector]
      Value

      = None

      Description

    • Name
      Schema
      Type
      type[marshmallow.Schema]
      Value

      = marshmallow.Schema

      Description

    • Name
      name
      Type
      str
      Value

      = None

      Description

      A human readable name to identify resources.

    • Name
      absolute_location
      Type
      Vector
      Value

      = None

      Description

      The absolute location of this resource.

    • Name
      width
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the x-axis.

    • Name
      depth
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the y-axis.

    • Name
      height
      Type
      decimal.Decimal
      Value

      = None

      Description

      The size of the resource along the z-axis.

    • Name
      center
      Type
      Vector
      Value

      = None

      Description

      The center base of this resource.

Copyright © 2024