unitelabs.labware.hamilton

Packages

Attributes

  • Name
    PLT_CAR_L5PCR384
    Type
    Value

    = PCR_CAR_L5_384_A00

    Description

  • Name
    __all__
    Type
    Value

    = [ "HamiltonTip", "StandardFilterTip", "StandardTip", "StandardTipRack", "LowVolumeFilterTip", "LowVolumeTip", "LowVolumeTipRack", "HighVolumeFilterTip", "HighVolumeTip", "HighVolumeTipRack", "CoReGripperTip", "CollarType", "PickUpTipMethod", "HamiltonCarrier", "LabwareType", "Orientation", "PCR_CAR_L5_384_A00", "PLT_CAR_L5PCR384", "PLT_CAR_P3AC_A00", "PLT_CAR_P3AC_A01", "PLT_CAR_L5PCR_A00", "PLT_CAR_L5PCR_A01", "PLT_CAR_P3MD_A00", "PLT_CAR_P3MD_A01", "PLT_CAR_L5AC_A00", "PLT_CAR_L5AC_P_A00", "PLT_CAR_L4HD", "PLT_CAR_P3HD", "PLT_CAR_L5MD_A00", "PLT_CAR_L5FLEX_AC_A00", "PLT_CAR_L5FLEX_MD_A00", "PLT_CAR_L4HHC_A00", "TIP_CAR_288_A00", "TIP_CAR_288_B00", "TIP_CAR_288_C00", "TIP_CAR_480_A00", "TIP384_CAR_1920_A00", "TIP_CAR_384_A00", "TIP_CAR_NTR_A00", "RGT_CAR_5R_A00", "RGT_CAR_5R60_A00", "RGT_CAR_12R_A00", "RGT_CAR_3R_A00", "RGT_CAR_3R_A01", "RGT_CAR_4R100_A00", "RGT_CAR_4R200_A00", "RGT_CAR_4R200_B00", "SMP_CAR_12_A00", "SMP_CAR_24_A00", "SMP_CAR_24C12_A00", "SMP_CAR_32_A00", "SMP_CAR_32C12_A00", "HamiltonHeaterCooler", "HamiltonHeaterShaker", "RGT_CONT_50ml", "RGT_CONT_60ml", "RGT_CONT_100ml", "RGT_CONT_100ml_A00", "RGT_CONT_120ml", "RGT_CONT_120ml_BC", "RGT_CONT_200ml", "RGT_CONT_300ml" ]

    Description

Classes

  • PCR_CAR_L5_384_A00

    Carries 5x 384-well PCR plates in landscape orientation. Occupies 6 tracks.

    MRO
    Bases
    HamiltonCarrier[typing.Union[Plate, Lid, Trough]]
    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
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = PLATES
        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
        = 'P12*****'
        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
        = '182035'
        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

      = '182035'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 5

      Description

    • Name
      tracks
      Type
      int
      Value

      = 6

      Description

    • Name
      dimensions
      Type
      Vector
      Value

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

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.PLATES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'P12*****'

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=61.6)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=96)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=30)

      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=127, y=86), location=Vector(x=4, y=392.5, z=113.5)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4, y=296.5, z=113.5)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4, y=200.5, z=113.5)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4, y=104.5, z=113.5)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4, y=8.5, z=113.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.

  • PLT_CAR_L4HD

    Carries 4x 1536-well plates in landscape orientation. Occupies 6 tracks.

    MRO
    Bases
    HamiltonCarrier[typing.Union[Plate, Lid, Trough]]
    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
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = PLATES
        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
        = ''
        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
        = '191287'
        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

      = '191287'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 4

      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.PLATES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = ''

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=88.3)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=110)

      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=127, y=86), location=Vector(x=4.1, y=366.1, z=118.25)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4.1, y=256.1, z=118.25)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4.1, y=146.1, z=118.25)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4.1, y=36.1, z=118.25))])

      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.

  • PLT_CAR_L4HHC_A00

    Carries 4x Hamilton Heater Coolers or Shakers in landscape positions. Occupies 7 tracks.

    MRO
    Bases
    HamiltonCarrier[typing.Union[Plate, Lid, Trough]]
    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
        = 7
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = PLATES
        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
        = ''
        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
        = 0
        Description

      • Name
        read_barcode
        Type
        bool
        Default
        = False
        Description

      • Name
        is_auto_loadable
        Type
        bool
        Default
        = False
        Description

      • Name
        is_loadable
        Type
        bool
        Default
        = False
        Description

      • Name
        is_recognizable
        Type
        bool
        Default
        = False
        Description

      • Name
        are_recognizable
        Type
        bool
        Default
        = False
        Description

      • Name
        model
        Type
        str
        Default
        = '187001'
        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

      = '187001'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 4

      Description

    • Name
      tracks
      Type
      int
      Value

      = 7

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=157.5, y=497, z=87.72))

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.PLATES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = ''

      Description

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

      = 'vertical'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=0)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=0)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=0)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 0

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = False

      Description

    • Name
      is_auto_loadable
      Type
      bool
      Value

      = False

      Description

    • Name
      is_loadable
      Type
      bool
      Value

      = False

      Description

    • Name
      is_recognizable
      Type
      bool
      Value

      = False

      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=127, y=86), location=Vector(x=16.89, y=373.1, z=8)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=16.89, y=253.1, z=8)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=16.89, y=133.1, z=8)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=16.89, y=13.1, z=8))])

      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.

  • PLT_CAR_L5AC_A00

    Carries 5x 96/384-well deep well plates or 384 tip racks (e.g. 384HEAD_384TIPS_30μl) in landscape orientation. Occupies 6 tracks.

    MRO
    Bases
    HamiltonCarrier[typing.Union[Plate, Lid, Trough]]
    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
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = PLATES
        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
        = 'P04*****'
        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
        = '182090'
        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

      = '182090'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 5

      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.PLATES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'P04*****'

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=61.6)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=96)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=30)

      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=127, y=86), location=Vector(x=4, y=392.5, z=86.15)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4, y=296.5, z=86.15)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4, y=200.5, z=86.15)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4, y=104.5, z=86.15)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4, y=8.5, z=86.15))])

      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.

  • PLT_CAR_L5AC_P_A00

    Carries 5x 96/384-well deep well plates or 384 tip racks (e.g. 384HEAD_384TIPS_30μl) in landscape orientation. Occupies 6 tracks. Has a pin in the back.

    MRO
    Bases
    HamiltonCarrier[typing.Union[Plate, Lid, Trough]]
    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
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = PLATES
        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
        = 'P11*****'
        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
        = '185295'
        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

      = '185295'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 5

      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.PLATES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'P11*****'

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=61.6)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=96)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=30)

      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=126.8, y=85.8), location=Vector(x=4, y=392.5, z=86.15)), CarrierSite(dimensions=Vector(x=126.8, y=85.8), location=Vector(x=4, y=296.5, z=86.15)), CarrierSite(dimensions=Vector(x=126.8, y=85.8), location=Vector(x=4, y=200.5, z=86.15)), CarrierSite(dimensions=Vector(x=126.8, y=85.8), location=Vector(x=4, y=104.5, z=86.15)), CarrierSite(dimensions=Vector(x=126.8, y=85.8), location=Vector(x=4, y=8.5, z=86.15))])

      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.

  • PLT_CAR_L5FLEX_AC_A00

    Carries 5x archive plates in height adjustable landscape positions. Occupies 6 tracks.

    MRO
    Bases
    HamiltonCarrier[typing.Union[Plate, Lid, Trough]]
    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
        = 7
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = PLATES
        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
        = 'X01*****'
        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
        = ''
        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

      = ''

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 5

      Description

    • Name
      tracks
      Type
      int
      Value

      = 7

      Description

    • Name
      dimensions
      Type
      Vector
      Value

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

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.PLATES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'X01*****'

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=61.6)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=96)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=30)

      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=127, y=86), location=Vector(x=15.25, y=392.5, z=89.1)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=15.25, y=296.5, z=89.1)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=15.25, y=200.5, z=89.1)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=15.25, y=104.5, z=89.1)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=15.25, y=8.5, z=89.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.

  • PLT_CAR_L5FLEX_MD_A00

    Carries 5x MTPs in height adjustable landscape positions. Occupies 6 tracks.

    MRO
    Bases
    HamiltonCarrier[typing.Union[Plate, Lid, Trough]]
    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
        = 7
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = PLATES
        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
        = 'X01*****'
        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
        = ''
        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

      = ''

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 5

      Description

    • Name
      tracks
      Type
      int
      Value

      = 7

      Description

    • Name
      dimensions
      Type
      Vector
      Value

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

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.PLATES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'X01*****'

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=61.6)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=96)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=30)

      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=127, y=86), location=Vector(x=15.25, y=392.5, z=115.8)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=15.25, y=296.5, z=115.8)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=15.25, y=200.5, z=115.8)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=15.25, y=104.5, z=115.8)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=15.25, y=8.5, z=115.8))])

      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.

  • PLT_CAR_L5MD_A00

    Carries 5x 96/384-well plates in landscape orientation. Occupies 6 tracks.

    MRO
    Bases
    HamiltonCarrier[typing.Union[Plate, Lid, Trough]]
    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
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = PLATES
        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
        = 'P01*****'
        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
        = '182365'
        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

      = '182365'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 5

      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.PLATES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'P01*****'

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=61.6)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=96)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=30)

      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=127, y=86), location=Vector(x=4, y=392.5, z=111.75)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4, y=296.5, z=111.75)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4, y=200.5, z=111.75)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4, y=104.5, z=111.75)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4, y=8.5, z=111.75))])

      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.

  • PLT_CAR_L5PCR_A00

    Carries 5x 96-well PCR plates in landscape orientation. Occupies 6 tracks.

    MRO
    Bases
    HamiltonCarrier[typing.Union[Plate, Lid, Trough]]
    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
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = PLATES
        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
        = ''
        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
        = '182070'
        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

      = '182070'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 5

      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.PLATES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = ''

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=61.6)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=96)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=30)

      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=127, y=86), location=Vector(x=5, y=393.5, z=109.2)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=5, y=297.5, z=109.2)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=5, y=201.5, z=109.2)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=5, y=105.5, z=109.2)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=5, y=9.5, z=109.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.

  • PLT_CAR_L5PCR_A01

    Carries 5x 96-well PCR plates in landscape 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
        = 5
        Description

      • Name
        tracks
        Type
        int
        Default
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = PLATES
        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
        = 'P05*****'
        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
        = '182070'
        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
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '01'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'P05*****'

      Description

    • Name
      model
      Type
      str
      Value

      = '182070'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 5

      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.PLATES

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=61.6)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=96)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=30)

      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=127, y=86), location=Vector(x=5, y=393.5, z=109.2)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=5, y=297.5, z=109.2)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=5, y=201.5, z=109.2)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=5, y=105.5, z=109.2)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=5, y=9.5, z=109.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.

  • PLT_CAR_P3AC_A00

    Carries 3x 96-well Deep Well plates in portrait orientation. Occupies 6 tracks.

    MRO
    Bases
    HamiltonCarrier[typing.Union[Plate, Lid, Trough]]
    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
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = PLATES
        Description

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

      • Name
        variant
        Type
        str
        Default
        = 'A'
        Description

      • Name
        revision
        Type
        str
        Default
        = '00'
        Description

      • Name
        barcode
        Type
        str
        Default
        = ''
        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
        = '182065'
        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

      = '182065'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 3

      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.PLATES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = ''

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=116)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=146)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=70)

      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=86, y=127), location=Vector(x=43.85, y=329.5, z=86.15)), CarrierSite(dimensions=Vector(x=86, y=127), location=Vector(x=43.85, y=183.5, z=86.15)), CarrierSite(dimensions=Vector(x=86, y=127), location=Vector(x=43.85, y=37.5, z=86.15))])

      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.

  • PLT_CAR_P3AC_A01

    Carries 3x 96-well deep well plates in portrait orientation. Occupies 6 tracks.

    MRO
    Bases
    HamiltonCarrier[typing.Union[Plate, Lid, Trough]]
    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
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = PLATES
        Description

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

      • Name
        variant
        Type
        str
        Default
        = 'A'
        Description

      • Name
        revision
        Type
        str
        Default
        = '01'
        Description

      • Name
        barcode
        Type
        str
        Default
        = 'P03*****'
        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
        = '182065'
        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

      = '182065'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 3

      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.PLATES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '01'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'P03*****'

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=116)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=146)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=70)

      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=86, y=127), location=Vector(x=44.1, y=329.5, z=85.9)), CarrierSite(dimensions=Vector(x=86, y=127), location=Vector(x=44.1, y=183.5, z=85.9)), CarrierSite(dimensions=Vector(x=86, y=127), location=Vector(x=44.1, y=37.5, z=85.9))])

      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.

  • PLT_CAR_P3HD

    Carries 3x 1536-well plates in portrait orientation. Occupies 6 tracks.

    MRO
    Bases
    HamiltonCarrier[typing.Union[Plate, Lid, Trough]]
    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
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = PLATES
        Description

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

      • Name
        variant
        Type
        str
        Default
        = 'A'
        Description

      • Name
        revision
        Type
        str
        Default
        = '00'
        Description

      • Name
        barcode
        Type
        str
        Default
        = ''
        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
        = '182190'
        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

      = '182190'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 3

      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.PLATES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = ''

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=116)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=146)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=70)

      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=86, y=127), location=Vector(x=43.9, y=319.05, z=117.65)), CarrierSite(dimensions=Vector(x=86, y=127), location=Vector(x=43.9, y=173.05, z=117.65)), CarrierSite(dimensions=Vector(x=86, y=127), location=Vector(x=43.9, y=27.05, z=117.65))])

      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.

  • PLT_CAR_P3MD_A00

    Carries 3x 96/384-well MTPs in portrait orientation. Occupies 6 tracks.

    MRO
    Bases
    HamiltonCarrier[typing.Union[Plate, Lid, Trough]]
    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
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = PLATES
        Description

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

      • Name
        variant
        Type
        str
        Default
        = 'A'
        Description

      • Name
        revision
        Type
        str
        Default
        = '00'
        Description

      • Name
        barcode
        Type
        str
        Default
        = ''
        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
        = '182075'
        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

      = '182075'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 3

      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.PLATES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = ''

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=116)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=146)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=70)

      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=86, y=127), location=Vector(x=44.1, y=329.5, z=111.5)), CarrierSite(dimensions=Vector(x=86, y=127), location=Vector(x=44.1, y=183.5, z=111.5)), CarrierSite(dimensions=Vector(x=86, y=127), location=Vector(x=44.1, y=37.5, z=111.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.

  • PLT_CAR_P3MD_A01

    Carries 3x 96/384-well MTPs 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
        = 3
        Description

      • Name
        tracks
        Type
        int
        Default
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = PLATES
        Description

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

      • Name
        variant
        Type
        str
        Default
        = 'A'
        Description

      • Name
        revision
        Type
        str
        Default
        = '01'
        Description

      • Name
        barcode
        Type
        str
        Default
        = 'P02*****'
        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
        = '182075'
        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
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '01'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'P02*****'

      Description

    • Name
      model
      Type
      str
      Value

      = '182075'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 3

      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.PLATES

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=116)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=146)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=70)

      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=86, y=127), location=Vector(x=44.1, y=329.5, z=111.5)), CarrierSite(dimensions=Vector(x=86, y=127), location=Vector(x=44.1, y=183.5, z=111.5)), CarrierSite(dimensions=Vector(x=86, y=127), location=Vector(x=44.1, y=37.5, z=111.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_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_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.

  • 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_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_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.

  • SMP_CAR_12_A00

    Sample carrier for 12x tubes of 29x115 mm (50ml Falcon tubes). Occupies 2 tracks.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[TubeSpot],
        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[TubeSpot]
        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
        = 2
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = SAMPLES
        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
        = ''
        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
        = 12
        Description

      • Name
        read_barcode
        Type
        bool
        Default
        = False
        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
        = True
        Description

      • Name
        model
        Type
        str
        Default
        = '182245'
        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

      = '182245'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 12

      Description

    • Name
      tracks
      Type
      int
      Value

      = 2

      Description

    • Name
      dimensions
      Type
      Vector
      Value

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

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.SAMPLES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = ''

      Description

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

      = 'vertical'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=53.7)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=36.5)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=14)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 12

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = False

      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

      = True

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [TubeSpot(dimensions=Vector(x=29, y=29), location=Vector(x=11.55, y=428.75, z=14)), TubeSpot(dimensions=Vector(x=29, y=29), location=Vector(x=11.55, y=392.25, z=14)), TubeSpot(dimensions=Vector(x=29, y=29), location=Vector(x=11.55, y=355.75, z=14)), TubeSpot(dimensions=Vector(x=29, y=29), location=Vector(x=11.55, y=319.25, z=14)), TubeSpot(dimensions=Vector(x=29, y=29), location=Vector(x=11.55, y=282.75, z=14)), TubeSpot(dimensions=Vector(x=29, y=29), location=Vector(x=11.55, y=246.25, z=14)), TubeSpot(dimensions=Vector(x=29, y=29), location=Vector(x=11.55, y=209.75, z=14)), TubeSpot(dimensions=Vector(x=29, y=29), location=Vector(x=11.55, y=173.25, z=14)), TubeSpot(dimensions=Vector(x=29, y=29), location=Vector(x=11.55, y=136.75, z=14)), TubeSpot(dimensions=Vector(x=29, y=29), location=Vector(x=11.55, y=100.25, z=14)), TubeSpot(dimensions=Vector(x=29, y=29), location=Vector(x=11.55, y=63.75, z=14)), TubeSpot(dimensions=Vector(x=29, y=29), location=Vector(x=11.55, y=27.25, z=14))])

      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.

  • SMP_CAR_24_A00

    Sample carrier for 24x tubes of 14.5x60 - 18x120mm (e.g. 15x75, 15x95, 15x100, 17x75, 17x95 or 17x100 mm). Occupies 1 track.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[TubeSpot],
        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[TubeSpot]
        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
        = 24
        Description

      • Name
        tracks
        Type
        int
        Default
        = 1
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = SAMPLES
        Description

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

      • Name
        variant
        Type
        str
        Default
        = 'A'
        Description

      • Name
        revision
        Type
        str
        Default
        = '00'
        Description

      • Name
        barcode
        Type
        str
        Default
        = 'S01*****'
        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
        = 24
        Description

      • Name
        read_barcode
        Type
        bool
        Default
        = False
        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
        = True
        Description

      • Name
        model
        Type
        str
        Default
        = '173400'
        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

      = '173400'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 24

      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=140))

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.SAMPLES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'S01*****'

      Description

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

      = 'vertical'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=20)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=20)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=14)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 24

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = False

      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

      = True

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=470.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=450.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=430.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=410.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=390.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=370.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=350.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=330.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=310.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=290.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=270.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=250.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=230.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=210.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=190.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=170.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=150.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=130.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=110.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=90.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=70.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=50.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=30.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=10.35, z=10))])

      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.

  • SMP_CAR_24C12_A00

    Sample carrier for 20x tubes of 14.5x60 - 18x120mm (e.g. 15x75, 15x95, 15x100, 17x75, 17x95, 17x100). Ideal for 12 channel instruments. Occupies 1 track.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[TubeSpot],
        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[TubeSpot]
        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
        = 20
        Description

      • Name
        tracks
        Type
        int
        Default
        = 1
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = SAMPLES
        Description

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

      • Name
        variant
        Type
        str
        Default
        = 'A'
        Description

      • Name
        revision
        Type
        str
        Default
        = '00'
        Description

      • Name
        barcode
        Type
        str
        Default
        = 'S04*****'
        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
        = 20
        Description

      • Name
        read_barcode
        Type
        bool
        Default
        = False
        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
        = True
        Description

      • Name
        model
        Type
        str
        Default
        = '173400'
        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

      = '173400'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 20

      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=140))

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.SAMPLES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'S04*****'

      Description

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

      = 'vertical'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=60)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=20)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=9)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 20

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = False

      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

      = True

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=430.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=410.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=390.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=370.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=350.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=330.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=310.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=290.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=270.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=250.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=230.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=210.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=190.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=170.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=150.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=130.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=110.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=90.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=70.35, z=10)), TubeSpot(dimensions=Vector(x=13.3, y=13.3), location=Vector(x=6.85, y=50.35, z=10))])

      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.

  • SMP_CAR_32_A00

    Sample carrier for 32x tubes of 11x60 - 14x120mm (e.g. 12x75, 12x95, 12x100, 13x75, 13x95, 13x100). Occupies 1 track.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[TubeSpot],
        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[TubeSpot]
        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
        = 32
        Description

      • Name
        tracks
        Type
        int
        Default
        = 1
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = SAMPLES
        Description

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

      • Name
        variant
        Type
        str
        Default
        = 'A'
        Description

      • Name
        revision
        Type
        str
        Default
        = '00'
        Description

      • Name
        barcode
        Type
        str
        Default
        = 'S02*****'
        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
        = 32
        Description

      • Name
        read_barcode
        Type
        bool
        Default
        = False
        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
        = True
        Description

      • Name
        model
        Type
        str
        Default
        = '173410'
        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

      = '173410'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 32

      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=140))

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.SAMPLES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'S02*****'

      Description

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

      = 'vertical'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=17.5)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=15)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=9)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 32

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = False

      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

      = True

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=474.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=459.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=444.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=429.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=414.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=399.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=384.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=369.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=354.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=339.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=324.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=309.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=294.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=279.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=264.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=249.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=234.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=219.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=204.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=189.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=174.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=159.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=144.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=129.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=114.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=99.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=84.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=69.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=54.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=39.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=24.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=9.1, z=10))])

      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.

  • SMP_CAR_32C12_A00

    Sample carrier for 32x tubes of 11x60 - 14x120mm (e.g. 12x75, 12x95, 12x100, 13x75, 13x95, 13x100). Ideal for 12 channel instruments. Occupies 1 track.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[TubeSpot],
        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[TubeSpot]
        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
        = 24
        Description

      • Name
        tracks
        Type
        int
        Default
        = 1
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = SAMPLES
        Description

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

      • Name
        variant
        Type
        str
        Default
        = 'A'
        Description

      • Name
        revision
        Type
        str
        Default
        = '00'
        Description

      • Name
        barcode
        Type
        str
        Default
        = 'S05*****'
        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
        = 24
        Description

      • Name
        read_barcode
        Type
        bool
        Default
        = False
        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
        = True
        Description

      • Name
        model
        Type
        str
        Default
        = '173410'
        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

      = '173410'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 24

      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=140))

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.SAMPLES

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'S05*****'

      Description

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

      = 'vertical'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=77.5)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=15)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=9)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 24

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = False

      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

      = True

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=414.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=399.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=384.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=369.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=354.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=339.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=324.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=309.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=294.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=279.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=264.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=249.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=234.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=219.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=204.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=189.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=174.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=159.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=144.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=129.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=114.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=99.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=84.1, z=10)), TubeSpot(dimensions=Vector(x=10.8, y=10.8), location=Vector(x=9.1, y=69.1, z=10))])

      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.

  • TIP384_CAR_1920_A00

    Carrier for 5x 384 tip racks. 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
        = 5
        Description

      • Name
        tracks
        Type
        int
        Default
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = TIPS
        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
        = 'P04*****'
        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
        = False
        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
        = '191060'
        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

      = '191060'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 5

      Description

    • Name
      tracks
      Type
      int
      Value

      = 6

      Description

    • Name
      dimensions
      Type
      Vector
      Value

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

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.TIPS

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'P04*****'

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=61.6)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=96)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=30)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 5

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = False

      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=127, y=85), location=Vector(x=4, y=392.5, z=86.15)), CarrierSite(dimensions=Vector(x=127, y=85), location=Vector(x=4, y=296.5, z=86.15)), CarrierSite(dimensions=Vector(x=127, y=85), location=Vector(x=4, y=200.5, z=86.15)), CarrierSite(dimensions=Vector(x=127, y=85), location=Vector(x=4, y=104.5, z=86.15)), CarrierSite(dimensions=Vector(x=127, y=85), location=Vector(x=4, y=8.5, z=86.15))])

      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.

  • TIP_CAR_288_A00

    Carrier for 3x 96 tip racks portrait for 12-channel (1000μl) or 3x 24 tip racks portrait for 6-channel (5ml). 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
        = 3
        Description

      • Name
        tracks
        Type
        int
        Default
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = TIPS
        Description

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

      • Name
        variant
        Type
        str
        Default
        = 'A'
        Description

      • Name
        revision
        Type
        str
        Default
        = '00'
        Description

      • Name
        barcode
        Type
        str
        Default
        = 'T03*****'
        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
        = False
        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
        = '182060'
        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

      = '182060'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 3

      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.TIPS

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'T03*****'

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=107.6)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=146)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=90)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 3

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = False

      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=82.6, y=122.4), location=Vector(x=26.3, y=328.213, z=114.9)), CarrierSite(dimensions=Vector(x=82.6, y=122.4), location=Vector(x=26.3, y=182.213, z=114.9)), CarrierSite(dimensions=Vector(x=82.6, y=122.4), location=Vector(x=26.3, y=36.3, z=114.9))])

      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.

  • TIP_CAR_288_B00

    Carrier for 3x 96 tip racks portrait for 12-channel (1000μl) or 3x 24 tip racks portrait for 6-channel (5ml). Occupies 5 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
        = 3
        Description

      • Name
        tracks
        Type
        int
        Default
        = 5
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = TIPS
        Description

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

      • Name
        variant
        Type
        str
        Default
        = 'B'
        Description

      • Name
        revision
        Type
        str
        Default
        = '00'
        Description

      • Name
        barcode
        Type
        str
        Default
        = 'T01*****'
        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
        = False
        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
        = '182060'
        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

      = '182060'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 3

      Description

    • Name
      tracks
      Type
      int
      Value

      = 5

      Description

    • Name
      dimensions
      Type
      Vector
      Value

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

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.TIPS

      Description

    • Name
      variant
      Type
      str
      Value

      = 'B'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'T01*****'

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=78.4)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=146)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=90)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 3

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = False

      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=82.6, y=122.4), location=Vector(x=17.1, y=328.25, z=115.15)), CarrierSite(dimensions=Vector(x=82.6, y=122.4), location=Vector(x=17.1, y=182.25, z=115.15)), CarrierSite(dimensions=Vector(x=82.6, y=122.4), location=Vector(x=17.1, y=36.25, z=115.15))])

      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.

  • TIP_CAR_288_C00

    Carrier for 3x 96 tip racks portrait for 12-channel (1000μl) or 3x 24 tip racks portrait for 6-channel (5ml). Occupies 4 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
        = 3
        Description

      • Name
        tracks
        Type
        int
        Default
        = 4
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = TIPS
        Description

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

      • Name
        variant
        Type
        str
        Default
        = 'C'
        Description

      • Name
        revision
        Type
        str
        Default
        = '00'
        Description

      • Name
        barcode
        Type
        str
        Default
        = 'T05*****'
        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
        = False
        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
        = '182060'
        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

      = '182060'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 3

      Description

    • Name
      tracks
      Type
      int
      Value

      = 4

      Description

    • Name
      dimensions
      Type
      Vector
      Value

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

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.TIPS

      Description

    • Name
      variant
      Type
      str
      Value

      = 'C'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'T05*****'

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=107.5)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=146)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=70)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 3

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = False

      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=82.6, y=122.4), location=Vector(x=3.7, y=328.3, z=114.7)), CarrierSite(dimensions=Vector(x=82.6, y=122.4), location=Vector(x=3.7, y=182.3, z=114.7)), CarrierSite(dimensions=Vector(x=82.6, y=122.4), location=Vector(x=3.7, y=36.3, z=114.7))])

      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.

  • TIP_CAR_384_A00

    Carrier for 4x 96 tip racks for 16-Channel (1000μl) or 3x 24 tip racks portrait for 8-channel (5ml). 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
        = 4
        Description

      • Name
        tracks
        Type
        int
        Default
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = TIPS
        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
        = 'T04*****'
        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
        = False
        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
        = '182390'
        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

      = '182390'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 4

      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.TIPS

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'T04*****'

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=122.5)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=85)

      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

      = False

      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=122.4, y=82.6), location=Vector(x=6.3, y=333.1, z=114.8)), CarrierSite(dimensions=Vector(x=122.4, y=82.6), location=Vector(x=6.3, y=248.1, z=114.8)), CarrierSite(dimensions=Vector(x=122.4, y=82.6), location=Vector(x=6.3, y=163.1, z=114.8)), CarrierSite(dimensions=Vector(x=122.4, y=82.6), location=Vector(x=6.3, y=78.2, z=114.8))])

      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.

  • TIP_CAR_480_A00

    Carrier for 3x 96 tip racks (10μl, 50μl, 300μl, 1000μl) or 5x 24 tip racks (5ml). 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
        = 5
        Description

      • Name
        tracks
        Type
        int
        Default
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = TIPS
        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
        = 'T02*****'
        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
        = False
        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
        = '182085'
        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

      = '182085'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 5

      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.TIPS

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'T02*****'

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=61.6)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=96)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=30)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 5

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = False

      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=122.4, y=82.6), location=Vector(x=6.2, y=394, z=114.95)), CarrierSite(dimensions=Vector(x=122.4, y=82.6), location=Vector(x=6.2, y=298, z=114.95)), CarrierSite(dimensions=Vector(x=122.4, y=82.6), location=Vector(x=6.2, y=202, z=114.95)), CarrierSite(dimensions=Vector(x=122.4, y=82.6), location=Vector(x=6.2, y=106, z=114.95)), CarrierSite(dimensions=Vector(x=122.4, y=82.6), location=Vector(x=6.2, y=10, z=114.95))])

      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.

  • TIP_CAR_NTR_A00

    Carrier for Nestable Tip Racks (NTR). For 1 pack tray containing 1920x 10μl, 50μl or 300μl CoRE Tips (5 stacks x 4 tip racks x 96 tips). 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
        = 5
        Description

      • Name
        tracks
        Type
        int
        Default
        = 6
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = TIPS
        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
        = 'T06*****'
        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
        = False
        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
        = '182074'
        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

      = '182074'

      Description

    • Name
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 5

      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.TIPS

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'T06*****'

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal(default=61.5)

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal(default=96)

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal(default=30)

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 5

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = False

      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=122.4, y=82.6), location=Vector(x=6.2, y=394, z=29)), CarrierSite(dimensions=Vector(x=122.4, y=82.6), location=Vector(x=6.2, y=298, z=29)), CarrierSite(dimensions=Vector(x=122.4, y=82.6), location=Vector(x=6.2, y=202, z=29)), CarrierSite(dimensions=Vector(x=122.4, y=82.6), location=Vector(x=6.2, y=106, z=29)), CarrierSite(dimensions=Vector(x=122.4, y=82.6), location=Vector(x=6.2, y=10, z=29))])

      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.

  • HamiltonCarrier

    Hamilton provides a wide range of standard carriers for microtiter plates, tubes, tips etc. All standard carriers can be loaded to the deck manually or by the Autoload option. The naming of carriers follows a systematic nomenclature “X_CAR_Y_Ann” where X represents the type of labware placed on the carriers, e.g., TIP (= tips), PLT (=plates), SMP (=samples), RGT (=reagent). CAR carrier Y describes the labware details, e.g. L: landscape orientation P: portrait orientation Number: number of items placed on the carrier (plates or tips) MD: medium density (96- or 384-well microplates) HD: high density microplates (1536) AC: 96-well archive plates Ann identifies the part number revision (e.g. A00) A: variant nn: revision Example: PLT_CAR_L5MD_A00 is a plate carrier for 5 medium density (96- or 384-well) microplates in landscape orientation.

    MRO
    Bases
    Carrier[T]
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[S],
        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
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        children
        Type
        collections.abc.Sequence[S]
        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
        = 1
        Description

      • Name
        tracks
        Type
        int
        Default
        = 0
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = TIPS
        Description

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

      • Name
        variant
        Type
        str
        Default
        = ''
        Description

      • Name
        revision
        Type
        str
        Default
        = ''
        Description

      • Name
        barcode
        Type
        str
        Default
        = ''
        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
        = 0
        Description

      • Name
        read_barcode
        Type
        bool
        Default
        = False
        Description

      • Name
        is_auto_loadable
        Type
        bool
        Default
        = False
        Description

      • Name
        is_loadable
        Type
        bool
        Default
        = False
        Description

      • Name
        is_recognizable
        Type
        bool
        Default
        = False
        Description

      • Name
        are_recognizable
        Type
        bool
        Default
        = False
        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
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 1

      Description

    • Name
      tracks
      Type
      int
      Value

      = 0

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.TIPS

      Description

    • Name
      variant
      Type
      str
      Value

      = ''

      Description

    • Name
      revision
      Type
      str
      Value

      = ''

      Description

    • Name
      barcode
      Type
      str
      Value

      = ''

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 0

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = False

      Description

    • Name
      is_auto_loadable
      Type
      bool
      Value

      = False

      Description

    • Name
      is_loadable
      Type
      bool
      Value

      = False

      Description

    • Name
      is_recognizable
      Type
      bool
      Value

      = False

      Description

    • Name
      are_recognizable
      Type
      bool
      Value

      = False

      Description

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

      = dataclasses.field(repr=False, default_factory=list)

      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
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=Vector)

      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.

  • HamiltonHeaterCooler

    MRO
    Bases
    HamiltonCarrier[typing.Union[Plate, Lid, Trough]]
    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,
      ) -> 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
        = 1
        Description

      • Name
        tracks
        Type
        int
        Default
        = 7
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = TIPS
        Description

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

      • Name
        variant
        Type
        str
        Default
        = ''
        Description

      • Name
        revision
        Type
        str
        Default
        = ''
        Description

      • Name
        barcode
        Type
        str
        Default
        = ''
        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
        = 0
        Description

      • Name
        read_barcode
        Type
        bool
        Default
        = False
        Description

      • Name
        is_auto_loadable
        Type
        bool
        Default
        = False
        Description

      • Name
        is_loadable
        Type
        bool
        Default
        = False
        Description

      • Name
        is_recognizable
        Type
        bool
        Default
        = False
        Description

      • Name
        are_recognizable
        Type
        bool
        Default
        = False
        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
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 1

      Description

    • Name
      tracks
      Type
      int
      Value

      = 7

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=140, y=100, z=79.7))

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [CarrierSite(orientation=Orientation.LANDSCAPE, dimensions=Vector(x=127, y=86), location=Vector(x=6.5, y=7, z=72.61))])

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.TIPS

      Description

    • Name
      variant
      Type
      str
      Value

      = ''

      Description

    • Name
      revision
      Type
      str
      Value

      = ''

      Description

    • Name
      barcode
      Type
      str
      Value

      = ''

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 0

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = False

      Description

    • Name
      is_auto_loadable
      Type
      bool
      Value

      = False

      Description

    • Name
      is_loadable
      Type
      bool
      Value

      = False

      Description

    • Name
      is_recognizable
      Type
      bool
      Value

      = False

      Description

    • Name
      are_recognizable
      Type
      bool
      Value

      = False

      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.

  • HamiltonHeaterShaker

    MRO
    Bases
    HamiltonCarrier[typing.Union[Plate, Lid, Trough]]
    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,
      ) -> 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
        = 1
        Description

      • Name
        tracks
        Type
        int
        Default
        = 7
        Description

      • Name
        labware
        Type
        LabwareType
        Default
        = TIPS
        Description

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

      • Name
        variant
        Type
        str
        Default
        = ''
        Description

      • Name
        revision
        Type
        str
        Default
        = ''
        Description

      • Name
        barcode
        Type
        str
        Default
        = ''
        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
        = 0
        Description

      • Name
        read_barcode
        Type
        bool
        Default
        = False
        Description

      • Name
        is_auto_loadable
        Type
        bool
        Default
        = False
        Description

      • Name
        is_loadable
        Type
        bool
        Default
        = False
        Description

      • Name
        is_recognizable
        Type
        bool
        Default
        = False
        Description

      • Name
        are_recognizable
        Type
        bool
        Default
        = False
        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
      cols
      Type
      int
      Value

      = 1

      Description

    • Name
      rows
      Type
      int
      Value

      = 1

      Description

    • Name
      tracks
      Type
      int
      Value

      = 7

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=150, y=105, z=90))

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [CarrierSite(orientation=Orientation.LANDSCAPE, dimensions=Vector(x=127, y=86), location=Vector(x=6.5, y=7, z=83))])

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.TIPS

      Description

    • Name
      variant
      Type
      str
      Value

      = ''

      Description

    • Name
      revision
      Type
      str
      Value

      = ''

      Description

    • Name
      barcode
      Type
      str
      Value

      = ''

      Description

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

      = 'horizontal'

      Description

    • Name
      barcode_position
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      barcode_distance
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      barcode_width
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      barcode_count
      Type
      int
      Value

      = 0

      Description

    • Name
      read_barcode
      Type
      bool
      Value

      = False

      Description

    • Name
      is_auto_loadable
      Type
      bool
      Value

      = False

      Description

    • Name
      is_loadable
      Type
      bool
      Value

      = False

      Description

    • Name
      is_recognizable
      Type
      bool
      Value

      = False

      Description

    • Name
      are_recognizable
      Type
      bool
      Value

      = False

      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.

  • LabwareType

    The type of labware placed on the carrier.

    Bases
    str, enum.Enum

    Attributes

    • Name
      TIPS
      Type
      Value

      = 'TIP'

      Description

    • Name
      PLATES
      Type
      Value

      = 'PLT'

      Description

    • Name
      SAMPLES
      Type
      Value

      = 'SMP'

      Description

    • Name
      REAGENT
      Type
      Value

      = 'RGT'

      Description

    • Name
      MULTPLE
      Type
      Value

      = 'MFX'

      Description

  • Orientation

    The carrier site orientation.

    Bases
    str, enum.Enum

    Attributes

    • Name
      LANDSCAPE
      Type
      Value

      = 'LANDSCAPE'

      Description

    • Name
      PORTRAIT
      Type
      Value

      = 'PORTRAIT'

      Description

  • CollarType

    Bases
    enum.IntEnum

    Attributes

    • Name
      UNDEFINED
      Type
      Value

      = 0

      Description

      undefined type

    • Name
      LOW_VOLUME
      Type
      Value

      = 1

      Description

      low volume tip

    • Name
      STANDARD
      Type
      Value

      = 2

      Description

      standard volume tip

    • Name
      HIGH_VOLUME
      Type
      Value

      = 3

      Description

      high volume tip

    • Name
      CORE_384_AXYGEN
      Type
      Value

      = 4

      Description

      CoRe 384 head tip (Axygen)

    • Name
      XL
      Type
      Value

      = 5

      Description

      XL channel tip

    • Name
      CORE_384_HAMILTON
      Type
      Value

      = 6

      Description

      CoRe 384 head tip (Hamilton)

  • CoReGripperTip

    The CoRe gripper can be used to pick up and move plates.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        has_filter : bool,
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        fitting_depth
        Type
        Decimal
        Default
        Description

      • Name
        container
        Type
        Container
        Default
        Description

      • Name
        blowout_air_volume
        Type
        Decimal
        Default
        Description

      • Name
        transport_air_volume
        Type
        Decimal
        Default
        Description

      • Name
        collar_type
        Type
        CollarType
        Default
        = UNDEFINED
        Description

      • Name
        has_filter
        Type
        bool
        Default
        = False
        Description

      • Name
        model
        Type
        str
        Default
        = '186100'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • __post_init__(self, *_kwargs) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        *_kwargs
        Type
        Default
        = ()
        Description

    • __init_subclass__(cls) -> None

      Parameters

      • Name
        cls
        Type
        Default
        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_by(self, angle : int) -> None

      Rotate clockwise by the given angle in degrees. Use negative numbers for counter clockwise rotation.

      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°.

    • 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°.

    • find(self, identifier : str) -> Resource

      Find a resource by its identifier.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        identifier
        Type
        str
        Default
        Description

        The resource's identifier to search for.

      Response

      Type
      Resource
      Description

      The resource with the corresponding identifier.

      Exceptions

      Type
      TypeError
      Description
      If the identifier is a non string value.
      Type
      MissingResourceError
      Description
      If the resource could not be found.
    • __contains__(self, item : typing.Any) -> bool

      Check whether a resource is assigned to this resource.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        item
        Type
        typing.Any
        Default
        Description

        The resource to search for.

      Response

      Type
      bool
      Description

      True if the resource could be found, False otherwise.

    • copy(self, **changes) -> typing_extensions.Self

      Return a copy of this resource.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        **changes
        Type
        Default
        = {}
        Description

        Replace fields with values from `changes`.

      Response

      Type
      typing_extensions.Self
      Description

      A copy of this resource.

    • serialize(self) -> JsonSchema

      Serialize this resource as a JSON-like dictionary.

      Response

      Type
      JsonSchema
      Description

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

    • @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
      tip_type
      Type
      int
      Value

      = 14

      Description

    • Name
      model
      Type
      str
      Value

      = '186100'

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=9, y=9, z=30))

      Description

    • Name
      fitting_depth
      Type
      Decimal
      Value

      = Decimal(default=8)

      Description

    • Name
      collar_type
      Type
      CollarType
      Value

      = CollarType.UNDEFINED

      Description

    • Name
      has_filter
      Type
      bool
      Value

      = False

      Description

    • Name
      container
      Type
      Container
      Value

      = dataclasses.field(default_factory=Container)

      Description

    • Name
      blowout_air_volume
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      transport_air_volume
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      total_volume
      Type
      decimal.Decimal
      Value

      = None

      Description

    • Name
      free_volume
      Type
      decimal.Decimal
      Value

      = None

      Description

      The freely available volume in µl in the tip.

    • 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.

  • HamiltonTip

    A hamilton tip.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        has_filter : bool
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        fitting_depth
        Type
        Decimal
        Default
        Description

      • Name
        container
        Type
        Container
        Default
        Description

      • Name
        blowout_air_volume
        Type
        Decimal
        Default
        Description

      • Name
        transport_air_volume
        Type
        Decimal
        Default
        Description

      • Name
        collar_type
        Type
        CollarType
        Default
        = UNDEFINED
        Description

      • Name
        has_filter
        Type
        bool
        Default
        = False
        Description

        Whether the tip has a filter.

    • __post_init__(self, *_kwargs) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        *_kwargs
        Type
        Default
        = ()
        Description

    • __init_subclass__(cls) -> None

      Parameters

      • Name
        cls
        Type
        Default
        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_by(self, angle : int) -> None

      Rotate clockwise by the given angle in degrees. Use negative numbers for counter clockwise rotation.

      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°.

    • 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°.

    • find(self, identifier : str) -> Resource

      Find a resource by its identifier.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        identifier
        Type
        str
        Default
        Description

        The resource's identifier to search for.

      Response

      Type
      Resource
      Description

      The resource with the corresponding identifier.

      Exceptions

      Type
      TypeError
      Description
      If the identifier is a non string value.
      Type
      MissingResourceError
      Description
      If the resource could not be found.
    • __contains__(self, item : typing.Any) -> bool

      Check whether a resource is assigned to this resource.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        item
        Type
        typing.Any
        Default
        Description

        The resource to search for.

      Response

      Type
      bool
      Description

      True if the resource could be found, False otherwise.

    • copy(self, **changes) -> typing_extensions.Self

      Return a copy of this resource.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        **changes
        Type
        Default
        = {}
        Description

        Replace fields with values from `changes`.

      Response

      Type
      typing_extensions.Self
      Description

      A copy of this resource.

    • serialize(self) -> JsonSchema

      Serialize this resource as a JSON-like dictionary.

      Response

      Type
      JsonSchema
      Description

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

    • @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
      tip_type
      Type
      int
      Value

      = 98

      Description

    • Name
      collar_type
      Type
      CollarType
      Value

      = CollarType.UNDEFINED

      Description

    • Name
      has_filter
      Type
      bool
      Value

      = False

      Description

    • Name
      fitting_depth
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      container
      Type
      Container
      Value

      = dataclasses.field(default_factory=Container)

      Description

    • Name
      blowout_air_volume
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      transport_air_volume
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      total_volume
      Type
      decimal.Decimal
      Value

      = None

      Description

    • Name
      free_volume
      Type
      decimal.Decimal
      Value

      = None

      Description

      The freely available volume in µl in the tip.

    • 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
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=Vector)

      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.

  • HighVolumeFilterTip

    Accuracy and precision are critical when it comes to pipetting, and the Hamilton 1000 μL CO-RE® II Tips are the perfect choice. With a fine, thin tip, you can ensure precise dosing of even the smallest of micro volumes. Plus, CO-RE® II Technology gives you enhanced pipetting safety and reliability. Enjoy features like Liquid Level Detection and Total Aspiration and Dispense Monitoring to make your pipetting easier than ever. Compatible with the Hamilton 1000 μL pipetting channels or CO-RE 96 Probe Head, you can trust these tips to get the job done right.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        has_filter : bool,
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        fitting_depth
        Type
        Decimal
        Default
        Description

      • Name
        container
        Type
        Container
        Default
        Description

      • Name
        blowout_air_volume
        Type
        Decimal
        Default
        Description

      • Name
        transport_air_volume
        Type
        Decimal
        Default
        Description

      • Name
        collar_type
        Type
        CollarType
        Default
        = HIGH_VOLUME
        Description

      • Name
        has_filter
        Type
        bool
        Default
        = True
        Description

      • Name
        model
        Type
        str
        Default
        = '235905'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • __post_init__(self, *_kwargs) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        *_kwargs
        Type
        Default
        = ()
        Description

    • __init_subclass__(cls) -> None

      Parameters

      • Name
        cls
        Type
        Default
        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_by(self, angle : int) -> None

      Rotate clockwise by the given angle in degrees. Use negative numbers for counter clockwise rotation.

      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°.

    • 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°.

    • find(self, identifier : str) -> Resource

      Find a resource by its identifier.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        identifier
        Type
        str
        Default
        Description

        The resource's identifier to search for.

      Response

      Type
      Resource
      Description

      The resource with the corresponding identifier.

      Exceptions

      Type
      TypeError
      Description
      If the identifier is a non string value.
      Type
      MissingResourceError
      Description
      If the resource could not be found.
    • __contains__(self, item : typing.Any) -> bool

      Check whether a resource is assigned to this resource.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        item
        Type
        typing.Any
        Default
        Description

        The resource to search for.

      Response

      Type
      bool
      Description

      True if the resource could be found, False otherwise.

    • copy(self, **changes) -> typing_extensions.Self

      Return a copy of this resource.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        **changes
        Type
        Default
        = {}
        Description

        Replace fields with values from `changes`.

      Response

      Type
      typing_extensions.Self
      Description

      A copy of this resource.

    • serialize(self) -> JsonSchema

      Serialize this resource as a JSON-like dictionary.

      Response

      Type
      JsonSchema
      Description

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

    • @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
      tip_type
      Type
      int
      Value

      = 5

      Description

    • Name
      model
      Type
      str
      Value

      = '235905'

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=9, y=9, z=95.1))

      Description

    • Name
      container
      Type
      Container
      Value

      = dataclasses.field(default_factory=lambda: Container(max_volume=1065, sections=[ComplexShape(factor=36.3168, height=10), ComplexShape(factor=13.4801, height=85)]))

      Description

    • Name
      has_filter
      Type
      bool
      Value

      = True

      Description

    • Name
      fitting_depth
      Type
      Decimal
      Value

      = Decimal(default=8)

      Description

    • Name
      collar_type
      Type
      CollarType
      Value

      = CollarType.HIGH_VOLUME

      Description

    • Name
      blowout_air_volume
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      transport_air_volume
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      total_volume
      Type
      decimal.Decimal
      Value

      = None

      Description

    • Name
      free_volume
      Type
      decimal.Decimal
      Value

      = None

      Description

      The freely available volume in µl in the tip.

    • 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.

  • HighVolumeTip

    For superior pipetting accuracy and precision, you need the Hamilton 1000 μL CO-RE® II Tips. The fine, thin tip helps you dose even the smallest micro volumes with ease. Plus, CO-RE® II Technology ensures you get the most reliable and safe pipetting experience possible. Enjoy additional features like Liquid Level Detection and Total Aspiration and Dispense Monitoring as you use these tips. Compatible with the Hamilton 1000 μL pipetting channels or CO-RE 96 Probe Head, you can trust these tips to get the job done right.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        has_filter : bool,
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        fitting_depth
        Type
        Decimal
        Default
        Description

      • Name
        container
        Type
        Container
        Default
        Description

      • Name
        blowout_air_volume
        Type
        Decimal
        Default
        Description

      • Name
        transport_air_volume
        Type
        Decimal
        Default
        Description

      • Name
        collar_type
        Type
        CollarType
        Default
        = HIGH_VOLUME
        Description

      • Name
        has_filter
        Type
        bool
        Default
        = False
        Description

      • Name
        model
        Type
        str
        Default
        = '235904'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • __post_init__(self, *_kwargs) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        *_kwargs
        Type
        Default
        = ()
        Description

    • __init_subclass__(cls) -> None

      Parameters

      • Name
        cls
        Type
        Default
        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_by(self, angle : int) -> None

      Rotate clockwise by the given angle in degrees. Use negative numbers for counter clockwise rotation.

      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°.

    • 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°.

    • find(self, identifier : str) -> Resource

      Find a resource by its identifier.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        identifier
        Type
        str
        Default
        Description

        The resource's identifier to search for.

      Response

      Type
      Resource
      Description

      The resource with the corresponding identifier.

      Exceptions

      Type
      TypeError
      Description
      If the identifier is a non string value.
      Type
      MissingResourceError
      Description
      If the resource could not be found.
    • __contains__(self, item : typing.Any) -> bool

      Check whether a resource is assigned to this resource.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        item
        Type
        typing.Any
        Default
        Description

        The resource to search for.

      Response

      Type
      bool
      Description

      True if the resource could be found, False otherwise.

    • copy(self, **changes) -> typing_extensions.Self

      Return a copy of this resource.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        **changes
        Type
        Default
        = {}
        Description

        Replace fields with values from `changes`.

      Response

      Type
      typing_extensions.Self
      Description

      A copy of this resource.

    • serialize(self) -> JsonSchema

      Serialize this resource as a JSON-like dictionary.

      Response

      Type
      JsonSchema
      Description

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

    • @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
      tip_type
      Type
      int
      Value

      = 4

      Description

    • Name
      model
      Type
      str
      Value

      = '235904'

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=9, y=9, z=95.1))

      Description

    • Name
      container
      Type
      Container
      Value

      = dataclasses.field(default_factory=lambda: Container(max_volume=1250, sections=[ComplexShape(factor=36.3168, height=10), ComplexShape(factor=13.4801, height=85)]))

      Description

    • Name
      has_filter
      Type
      bool
      Value

      = False

      Description

    • Name
      fitting_depth
      Type
      Decimal
      Value

      = Decimal(default=8)

      Description

    • Name
      collar_type
      Type
      CollarType
      Value

      = CollarType.HIGH_VOLUME

      Description

    • Name
      blowout_air_volume
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      transport_air_volume
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      total_volume
      Type
      decimal.Decimal
      Value

      = None

      Description

    • Name
      free_volume
      Type
      decimal.Decimal
      Value

      = None

      Description

      The freely available volume in µl in the tip.

    • 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.

  • HighVolumeTipRack

    Rack with 96 10ul Low Volume Tip

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[TipSpot],
        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,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        children
        Type
        collections.abc.Sequence[TipSpot]
        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
        = 12
        Description

      • Name
        rows
        Type
        int
        Default
        = 8
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • @log()

      next_tips(self, count : int) -> list[TipSpot]

      The next available tip spot that is filled with a tip.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        count
        Type
        int
        Default
        = 1
        Description

      Response

      Type
      list[TipSpot]
      Description

      The tip spot of the first available tip.

      Exceptions

      Type
      MissingError
      Description
      If the tip rack is empty.
    • @log()

      first_spots(self, count : int) -> list[TipSpot]

      The first available tip spot that is empty.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        count
        Type
        int
        Default
        = 1
        Description

      Response

      Type
      list[TipSpot]
      Description

      The tip spot of the first empty spot.

      Exceptions

      Type
      OccupiedError
      Description
      If the tip rack is full.
    • @typing_extensions.override

      _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

    • __post_init__(
        self,
        filled_with : typing.Union[None, T, type[T]],
        filled_at : typing.Optional[collections.abc.Sequence[typing.SupportsIndex]],
        *kwargs
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

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

      • Name
        filled_at
        Type
        typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]
        Default
        Description

      • Name
        *kwargs
        Type
        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.

    • __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

    • __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.

    • 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
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=122.4, y=82.6, z=20.0))

      Description

    • Name
      rows
      Type
      int
      Value

      = 8

      Description

    • Name
      cols
      Type
      int
      Value

      = 12

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [TipSpot(dimensions=dimensions).copy(location=location) for (location, dimensions) in place(HighVolumeTipRack.cols, HighVolumeTipRack.rows, item=Vector(x=9.0, y=9.0, z=0), boundary=Vector(x=122.4, y=82.6, z=0), offset=Vector(z=-83.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.

  • LowVolumeFilterTip

    Accuracy and reliability are essential for precision pipetting. The Hamilton 10 μL CO-RE® II tips provide the perfect solution for micro-volume dosing. With a fine, thin tip and enhanced pipetting safety, the CO-RE® II Technology ensures consistent results. Features such as Liquid Level Detection and Total Aspiration and Dispense Monitoring also provide accuracy and reliability. Compatible with the Hamilton 1000 μL pipetting channels or CO-RE 96 Probe Head, these tips are a must-have for any laboratory.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        has_filter : bool,
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        fitting_depth
        Type
        Decimal
        Default
        Description

      • Name
        container
        Type
        Container
        Default
        Description

      • Name
        blowout_air_volume
        Type
        Decimal
        Default
        Description

      • Name
        transport_air_volume
        Type
        Decimal
        Default
        Description

      • Name
        collar_type
        Type
        CollarType
        Default
        = LOW_VOLUME
        Description

      • Name
        has_filter
        Type
        bool
        Default
        = True
        Description

      • Name
        model
        Type
        str
        Default
        = '235901'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • __post_init__(self, *_kwargs) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        *_kwargs
        Type
        Default
        = ()
        Description

    • __init_subclass__(cls) -> None

      Parameters

      • Name
        cls
        Type
        Default
        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_by(self, angle : int) -> None

      Rotate clockwise by the given angle in degrees. Use negative numbers for counter clockwise rotation.

      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°.

    • 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°.

    • find(self, identifier : str) -> Resource

      Find a resource by its identifier.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        identifier
        Type
        str
        Default
        Description

        The resource's identifier to search for.

      Response

      Type
      Resource
      Description

      The resource with the corresponding identifier.

      Exceptions

      Type
      TypeError
      Description
      If the identifier is a non string value.
      Type
      MissingResourceError
      Description
      If the resource could not be found.
    • __contains__(self, item : typing.Any) -> bool

      Check whether a resource is assigned to this resource.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        item
        Type
        typing.Any
        Default
        Description

        The resource to search for.

      Response

      Type
      bool
      Description

      True if the resource could be found, False otherwise.

    • copy(self, **changes) -> typing_extensions.Self

      Return a copy of this resource.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        **changes
        Type
        Default
        = {}
        Description

        Replace fields with values from `changes`.

      Response

      Type
      typing_extensions.Self
      Description

      A copy of this resource.

    • serialize(self) -> JsonSchema

      Serialize this resource as a JSON-like dictionary.

      Response

      Type
      JsonSchema
      Description

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

    • @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
      tip_type
      Type
      int
      Value

      = 3

      Description

    • Name
      model
      Type
      str
      Value

      = '235901'

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=9, y=9, z=29.9))

      Description

    • Name
      container
      Type
      Container
      Value

      = dataclasses.field(default_factory=lambda: Container(max_volume=10, sections=[ComplexShape(factor=36.3168, height=6), ComplexShape(factor=12.6632, height=52)]))

      Description

    • Name
      has_filter
      Type
      bool
      Value

      = True

      Description

    • Name
      fitting_depth
      Type
      Decimal
      Value

      = Decimal(default=8)

      Description

    • Name
      collar_type
      Type
      CollarType
      Value

      = CollarType.LOW_VOLUME

      Description

    • Name
      blowout_air_volume
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      transport_air_volume
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      total_volume
      Type
      decimal.Decimal
      Value

      = None

      Description

    • Name
      free_volume
      Type
      decimal.Decimal
      Value

      = None

      Description

      The freely available volume in µl in the tip.

    • 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.

  • LowVolumeTip

    The Hamilton 10 μL CO-RE® II tips are an invaluable tool for precise pipetting. Perfect for dosing micro volumes, these tips feature a fine, thin tip and enhanced pipetting safety with the CO-RE® II Technology. These Hamilton tips also provide accurate results with features such as Liquid Level Detection and Total Aspiration and Dispense Monitoring. Compatible with the Hamilton 1000 μL pipetting channels or CO-RE 96 Probe Head, these tips are a must-have for any laboratory.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        has_filter : bool,
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        fitting_depth
        Type
        Decimal
        Default
        Description

      • Name
        container
        Type
        Container
        Default
        Description

      • Name
        blowout_air_volume
        Type
        Decimal
        Default
        Description

      • Name
        transport_air_volume
        Type
        Decimal
        Default
        Description

      • Name
        collar_type
        Type
        CollarType
        Default
        = LOW_VOLUME
        Description

      • Name
        has_filter
        Type
        bool
        Default
        = False
        Description

      • Name
        model
        Type
        str
        Default
        = '235900'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • __post_init__(self, *_kwargs) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        *_kwargs
        Type
        Default
        = ()
        Description

    • __init_subclass__(cls) -> None

      Parameters

      • Name
        cls
        Type
        Default
        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_by(self, angle : int) -> None

      Rotate clockwise by the given angle in degrees. Use negative numbers for counter clockwise rotation.

      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°.

    • 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°.

    • find(self, identifier : str) -> Resource

      Find a resource by its identifier.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        identifier
        Type
        str
        Default
        Description

        The resource's identifier to search for.

      Response

      Type
      Resource
      Description

      The resource with the corresponding identifier.

      Exceptions

      Type
      TypeError
      Description
      If the identifier is a non string value.
      Type
      MissingResourceError
      Description
      If the resource could not be found.
    • __contains__(self, item : typing.Any) -> bool

      Check whether a resource is assigned to this resource.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        item
        Type
        typing.Any
        Default
        Description

        The resource to search for.

      Response

      Type
      bool
      Description

      True if the resource could be found, False otherwise.

    • copy(self, **changes) -> typing_extensions.Self

      Return a copy of this resource.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        **changes
        Type
        Default
        = {}
        Description

        Replace fields with values from `changes`.

      Response

      Type
      typing_extensions.Self
      Description

      A copy of this resource.

    • serialize(self) -> JsonSchema

      Serialize this resource as a JSON-like dictionary.

      Response

      Type
      JsonSchema
      Description

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

    • @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
      tip_type
      Type
      int
      Value

      = 2

      Description

    • Name
      model
      Type
      str
      Value

      = '235900'

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=9, y=9, z=29.9))

      Description

    • Name
      container
      Type
      Container
      Value

      = dataclasses.field(default_factory=lambda: Container(max_volume=15, sections=[ComplexShape(factor=36.3168, height=6), ComplexShape(factor=12.6632, height=52)]))

      Description

    • Name
      has_filter
      Type
      bool
      Value

      = False

      Description

    • Name
      fitting_depth
      Type
      Decimal
      Value

      = Decimal(default=8)

      Description

    • Name
      collar_type
      Type
      CollarType
      Value

      = CollarType.LOW_VOLUME

      Description

    • Name
      blowout_air_volume
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      transport_air_volume
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      total_volume
      Type
      decimal.Decimal
      Value

      = None

      Description

    • Name
      free_volume
      Type
      decimal.Decimal
      Value

      = None

      Description

      The freely available volume in µl in the tip.

    • 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.

  • LowVolumeTipRack

    Rack with 96 10ul Low Volume Tip

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[TipSpot],
        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,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        children
        Type
        collections.abc.Sequence[TipSpot]
        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
        = 12
        Description

      • Name
        rows
        Type
        int
        Default
        = 8
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • @log()

      next_tips(self, count : int) -> list[TipSpot]

      The next available tip spot that is filled with a tip.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        count
        Type
        int
        Default
        = 1
        Description

      Response

      Type
      list[TipSpot]
      Description

      The tip spot of the first available tip.

      Exceptions

      Type
      MissingError
      Description
      If the tip rack is empty.
    • @log()

      first_spots(self, count : int) -> list[TipSpot]

      The first available tip spot that is empty.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        count
        Type
        int
        Default
        = 1
        Description

      Response

      Type
      list[TipSpot]
      Description

      The tip spot of the first empty spot.

      Exceptions

      Type
      OccupiedError
      Description
      If the tip rack is full.
    • @typing_extensions.override

      _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

    • __post_init__(
        self,
        filled_with : typing.Union[None, T, type[T]],
        filled_at : typing.Optional[collections.abc.Sequence[typing.SupportsIndex]],
        *kwargs
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

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

      • Name
        filled_at
        Type
        typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]
        Default
        Description

      • Name
        *kwargs
        Type
        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.

    • __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

    • __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.

    • 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
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=122.4, y=82.6, z=20.0))

      Description

    • Name
      rows
      Type
      int
      Value

      = 8

      Description

    • Name
      cols
      Type
      int
      Value

      = 12

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [TipSpot(dimensions=dimensions).copy(location=location) for (location, dimensions) in place(LowVolumeTipRack.cols, LowVolumeTipRack.rows, item=Vector(x=9.0, y=9.0, z=0), boundary=Vector(x=122.4, y=82.6, z=0), offset=Vector(z=-22.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.

  • PickUpTipMethod

    Bases
    enum.IntEnum

    Attributes

    • Name
      AUTO
      Type
      Value

      = 0

      Description

      auto selection (see command TT parameter tu)

    • Name
      NORMAL
      Type
      Value

      = 1

      Description

      pick up out of rack

    • Name
      SLOW
      Type
      Value

      = 2

      Description

      pick up out of wash liquid (slowly)

  • StandardFilterTip

    For those who demand precision and reliability during their pipetting process, Hamilton 300 μL CO-RE® II pipetting tips provide the perfect solution. These tips are designed with a fine, thin tip that facilitates dosing of micro volumes. With the CO-RE® II Technology, you can trust that your pipetting process is safe and reliable. Compatible with the Hamilton 1000 μL pipetting channels or CO-RE 96 Probe Head, you can't go wrong with these essential tips.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        has_filter : bool,
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        fitting_depth
        Type
        Decimal
        Default
        Description

      • Name
        container
        Type
        Container
        Default
        Description

      • Name
        blowout_air_volume
        Type
        Decimal
        Default
        Description

      • Name
        transport_air_volume
        Type
        Decimal
        Default
        Description

      • Name
        collar_type
        Type
        CollarType
        Default
        = STANDARD
        Description

      • Name
        has_filter
        Type
        bool
        Default
        = True
        Description

      • Name
        model
        Type
        str
        Default
        = '235903'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • __post_init__(self, *_kwargs) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        *_kwargs
        Type
        Default
        = ()
        Description

    • __init_subclass__(cls) -> None

      Parameters

      • Name
        cls
        Type
        Default
        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_by(self, angle : int) -> None

      Rotate clockwise by the given angle in degrees. Use negative numbers for counter clockwise rotation.

      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°.

    • 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°.

    • find(self, identifier : str) -> Resource

      Find a resource by its identifier.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        identifier
        Type
        str
        Default
        Description

        The resource's identifier to search for.

      Response

      Type
      Resource
      Description

      The resource with the corresponding identifier.

      Exceptions

      Type
      TypeError
      Description
      If the identifier is a non string value.
      Type
      MissingResourceError
      Description
      If the resource could not be found.
    • __contains__(self, item : typing.Any) -> bool

      Check whether a resource is assigned to this resource.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        item
        Type
        typing.Any
        Default
        Description

        The resource to search for.

      Response

      Type
      bool
      Description

      True if the resource could be found, False otherwise.

    • copy(self, **changes) -> typing_extensions.Self

      Return a copy of this resource.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        **changes
        Type
        Default
        = {}
        Description

        Replace fields with values from `changes`.

      Response

      Type
      typing_extensions.Self
      Description

      A copy of this resource.

    • serialize(self) -> JsonSchema

      Serialize this resource as a JSON-like dictionary.

      Response

      Type
      JsonSchema
      Description

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

    • @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
      tip_type
      Type
      int
      Value

      = 1

      Description

    • Name
      model
      Type
      str
      Value

      = '235903'

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=9, y=9, z=59.9))

      Description

    • Name
      container
      Type
      Container
      Value

      = dataclasses.field(default_factory=lambda: Container(max_volume=360, sections=[ComplexShape(factor=36.3168, height=8), ComplexShape(factor=12.8596, height=52)]))

      Description

    • Name
      has_filter
      Type
      bool
      Value

      = True

      Description

    • Name
      fitting_depth
      Type
      Decimal
      Value

      = Decimal(default=8)

      Description

    • Name
      collar_type
      Type
      CollarType
      Value

      = CollarType.STANDARD

      Description

    • Name
      blowout_air_volume
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      transport_air_volume
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      total_volume
      Type
      decimal.Decimal
      Value

      = None

      Description

    • Name
      free_volume
      Type
      decimal.Decimal
      Value

      = None

      Description

      The freely available volume in µl in the tip.

    • 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.

  • StandardTip

    Hamilton's 300 μL CO-RE® II pipetting tips are designed to make your pipetting process simpler and more efficient. Hamilton's advanced systems feature the Liquid Level Detection and Total Aspiration and Dispense Monitoring, ensuring accuracy and reliability during your pipetting process. With a fine, thin tip that facilitates micro-volume dosing, you can enjoy enhanced pipetting safety and reliability with CO-RE® II Technology. Compatible with the Hamilton 1000 μL pipetting channels or CO-RE 96 Probe Head, these tips are essential for precise pipetting.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        has_filter : bool,
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        fitting_depth
        Type
        Decimal
        Default
        Description

      • Name
        container
        Type
        Container
        Default
        Description

      • Name
        blowout_air_volume
        Type
        Decimal
        Default
        Description

      • Name
        transport_air_volume
        Type
        Decimal
        Default
        Description

      • Name
        collar_type
        Type
        CollarType
        Default
        = STANDARD
        Description

      • Name
        has_filter
        Type
        bool
        Default
        = False
        Description

      • Name
        model
        Type
        str
        Default
        = '235902'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • __post_init__(self, *_kwargs) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        *_kwargs
        Type
        Default
        = ()
        Description

    • __init_subclass__(cls) -> None

      Parameters

      • Name
        cls
        Type
        Default
        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_by(self, angle : int) -> None

      Rotate clockwise by the given angle in degrees. Use negative numbers for counter clockwise rotation.

      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°.

    • 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°.

    • find(self, identifier : str) -> Resource

      Find a resource by its identifier.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        identifier
        Type
        str
        Default
        Description

        The resource's identifier to search for.

      Response

      Type
      Resource
      Description

      The resource with the corresponding identifier.

      Exceptions

      Type
      TypeError
      Description
      If the identifier is a non string value.
      Type
      MissingResourceError
      Description
      If the resource could not be found.
    • __contains__(self, item : typing.Any) -> bool

      Check whether a resource is assigned to this resource.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        item
        Type
        typing.Any
        Default
        Description

        The resource to search for.

      Response

      Type
      bool
      Description

      True if the resource could be found, False otherwise.

    • copy(self, **changes) -> typing_extensions.Self

      Return a copy of this resource.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        **changes
        Type
        Default
        = {}
        Description

        Replace fields with values from `changes`.

      Response

      Type
      typing_extensions.Self
      Description

      A copy of this resource.

    • serialize(self) -> JsonSchema

      Serialize this resource as a JSON-like dictionary.

      Response

      Type
      JsonSchema
      Description

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

    • @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
      tip_type
      Type
      int
      Value

      = 0

      Description

    • Name
      model
      Type
      str
      Value

      = '235902'

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=9, y=9, z=59.9))

      Description

    • Name
      container
      Type
      Container
      Value

      = dataclasses.field(default_factory=lambda: Container(max_volume=400, sections=[ComplexShape(factor=36.3168, height=8), ComplexShape(factor=12.8596, height=52)]))

      Description

    • Name
      has_filter
      Type
      bool
      Value

      = False

      Description

    • Name
      fitting_depth
      Type
      Decimal
      Value

      = Decimal(default=8)

      Description

    • Name
      collar_type
      Type
      CollarType
      Value

      = CollarType.STANDARD

      Description

    • Name
      blowout_air_volume
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      transport_air_volume
      Type
      Decimal
      Value

      = Decimal()

      Description

    • Name
      total_volume
      Type
      decimal.Decimal
      Value

      = None

      Description

    • Name
      free_volume
      Type
      decimal.Decimal
      Value

      = None

      Description

      The freely available volume in µl in the tip.

    • 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.

  • StandardTipRack

    Rack with 96 300ul Standard Volume Tip

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[TipSpot],
        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,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

      • Name
        children
        Type
        collections.abc.Sequence[TipSpot]
        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
        = 12
        Description

      • Name
        rows
        Type
        int
        Default
        = 8
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • @log()

      next_tips(self, count : int) -> list[TipSpot]

      The next available tip spot that is filled with a tip.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        count
        Type
        int
        Default
        = 1
        Description

      Response

      Type
      list[TipSpot]
      Description

      The tip spot of the first available tip.

      Exceptions

      Type
      MissingError
      Description
      If the tip rack is empty.
    • @log()

      first_spots(self, count : int) -> list[TipSpot]

      The first available tip spot that is empty.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        count
        Type
        int
        Default
        = 1
        Description

      Response

      Type
      list[TipSpot]
      Description

      The tip spot of the first empty spot.

      Exceptions

      Type
      OccupiedError
      Description
      If the tip rack is full.
    • @typing_extensions.override

      _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

    • __post_init__(
        self,
        filled_with : typing.Union[None, T, type[T]],
        filled_at : typing.Optional[collections.abc.Sequence[typing.SupportsIndex]],
        *kwargs
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

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

      • Name
        filled_at
        Type
        typing.Optional[collections.abc.Sequence[typing.SupportsIndex]]
        Default
        Description

      • Name
        *kwargs
        Type
        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.

    • __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

    • __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.

    • 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
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=122.4, y=82.6, z=20.0))

      Description

    • Name
      rows
      Type
      int
      Value

      = 8

      Description

    • Name
      cols
      Type
      int
      Value

      = 12

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [TipSpot(dimensions=dimensions).copy(location=location) for (location, dimensions) in place(StandardTipRack.cols, StandardTipRack.rows, item=Vector(x=9.0, y=9.0, z=0), boundary=Vector(x=122.4, y=82.6, z=0), offset=Vector(z=-50.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_CONT_50ml

    50ml reagent container for the carrier RGT_CAR_5R.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[Hole],
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

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

      • Name
        container
        Type
        Container
        Default
        Description

      • Name
        model
        Type
        str
        Default
        = '187297'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • get_holes_for_channels(self, channels : collections.abc.Sequence[int]) -> list[Hole]

      Get hole for channel.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        channels
        Type
        collections.abc.Sequence[int]
        Default
        Description

        The zero-based indices of the channels involved.

      Response

      Type
      list[Hole]
      Description

    • __post_init__(self, *kwargs) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        *kwargs
        Type
        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

      = '187297'

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=20, y=90, z=65))

      Description

    • Name
      container
      Type
      Container
      Value

      = dataclasses.field(default_factory=lambda: Container(max_volume=50000, sections=[Cuboid(width=17.5, depth=9 * 8, height=50)]))

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [Hole(dimensions=dimensions).copy(location=location) for (location, dimensions) in place(cols=1, rows=8, item=Vector(x=17.5, y=9, z=50), boundary=Vector(x=20, y=90, z=65))])

      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_CONT_60ml

    Self-Standing 60ml reagent container for the carrier RGT_CAR_5R60.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[Hole],
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

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

      • Name
        container
        Type
        Container
        Default
        Description

      • Name
        model
        Type
        str
        Default
        = '194051'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • get_holes_for_channels(self, channels : collections.abc.Sequence[int]) -> list[Hole]

      Get hole for channel.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        channels
        Type
        collections.abc.Sequence[int]
        Default
        Description

        The zero-based indices of the channels involved.

      Response

      Type
      list[Hole]
      Description

    • __post_init__(self, *kwargs) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        *kwargs
        Type
        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

      = '194051'

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=20, y=89.9, z=65))

      Description

    • Name
      container
      Type
      Container
      Value

      = dataclasses.field(default_factory=lambda: Container(max_volume=60000, sections=[Cuboid(width=18, depth=9.475 * 8, height=56), ComplexShape(height=6.72, factor=67.0206)]))

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [Hole(dimensions=dimensions).copy(location=location) for (location, dimensions) in place(cols=1, rows=8, item=Vector(x=16, y=9, z=62.72), boundary=Vector(x=20, y=89.9, z=65))])

      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_CONT_100ml

    100ml reagent container for the carrier RGT_CAR_12R.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[Hole],
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

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

      • Name
        container
        Type
        Container
        Default
        Description

      • Name
        model
        Type
        str
        Default
        = '137257'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • get_holes_for_channels(self, channels : collections.abc.Sequence[int]) -> list[Hole]

      Get hole for channel.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        channels
        Type
        collections.abc.Sequence[int]
        Default
        Description

        The zero-based indices of the channels involved.

      Response

      Type
      list[Hole]
      Description

    • __post_init__(self, *kwargs) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        *kwargs
        Type
        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

      = '137257'

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=26.5, y=112.8, z=55))

      Description

    • Name
      container
      Type
      Container
      Value

      = dataclasses.field(default_factory=lambda: Container(max_volume=100000, sections=[Cuboid(width=24.5, depth=9 * 12, height=46.6)]))

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [Hole(dimensions=dimensions).copy(location=location) for (location, dimensions) in place(cols=1, rows=12, item=Vector(x=24.5, y=9, z=46.6), boundary=Vector(x=26.5, y=112.8, z=55))])

      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_CONT_100ml_A00

    100ml reagent container for the carrier RGT_CAR_4R100.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[Hole],
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

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

      • Name
        container
        Type
        Container
        Default
        Description

      • Name
        model
        Type
        str
        Default
        = ''
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • get_holes_for_channels(self, channels : collections.abc.Sequence[int]) -> list[Hole]

      Get hole for channel.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        channels
        Type
        collections.abc.Sequence[int]
        Default
        Description

        The zero-based indices of the channels involved.

      Response

      Type
      list[Hole]
      Description

    • __post_init__(self, *kwargs) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        *kwargs
        Type
        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

      = ''

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=21, y=120, z=110))

      Description

    • Name
      container
      Type
      Container
      Value

      = dataclasses.field(default_factory=lambda: Container(max_volume=100000, sections=[Cylinder(radius=16.5 / 2, height=70), ComplexShape(height=6.75, factor=67.217)]))

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [Hole(dimensions=dimensions).copy(location=location) for (location, dimensions) in place(cols=1, rows=8, item=Vector(x=16.5, y=12, z=76.75), boundary=Vector(x=21, y=120, z=110))])

      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_CONT_120ml

    Self-Standing 120ml reagent container for the carrier RGT_CAR_3R.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[Hole],
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

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

      • Name
        container
        Type
        Container
        Default
        Description

      • Name
        model
        Type
        str
        Default
        = '194052'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • get_holes_for_channels(self, channels : collections.abc.Sequence[int]) -> list[Hole]

      Get hole for channel.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        channels
        Type
        collections.abc.Sequence[int]
        Default
        Description

        The zero-based indices of the channels involved.

      Response

      Type
      list[Hole]
      Description

    • __post_init__(self, *kwargs) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        *kwargs
        Type
        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

      = '194052'

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=21, y=142, z=95))

      Description

    • Name
      container
      Type
      Container
      Value

      = dataclasses.field(default_factory=lambda: Container(max_volume=120000, sections=[Cuboid(width=18, depth=9 * 12, height=87.5)]))

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [Hole(dimensions=dimensions).copy(location=location) for (location, dimensions) in place(cols=1, rows=12, item=Vector(x=18, y=9, z=87.5), boundary=Vector(x=21, y=142, z=95))])

      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_CONT_120ml_BC

    120ml reagent container with v-bottom for the carrier RGT_CAR_3R.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[Hole],
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

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

      • Name
        container
        Type
        Container
        Default
        Description

      • Name
        model
        Type
        str
        Default
        = '182703'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • get_holes_for_channels(self, channels : collections.abc.Sequence[int]) -> list[Hole]

      Get hole for channel.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        channels
        Type
        collections.abc.Sequence[int]
        Default
        Description

        The zero-based indices of the channels involved.

      Response

      Type
      list[Hole]
      Description

    • __post_init__(self, *kwargs) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        *kwargs
        Type
        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

      = '182703'

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=21, y=142, z=80))

      Description

    • Name
      container
      Type
      Container
      Value

      = dataclasses.field(default_factory=lambda: Container(max_volume=120000, sections=[Cuboid(width=18, depth=13.14 * 12, height=62), Cone(radius=14.59 / 2, height=6.12)]))

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [Hole(dimensions=dimensions).copy(location=location) for (location, dimensions) in place(cols=1, rows=12, item=Vector(x=18, y=13.14, z=18), boundary=Vector(x=21, y=142, z=80))])

      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_CONT_200ml

    Self-Standing 200ml reagent container for the carrier RGT_CAR_4R200.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[Hole],
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

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

      • Name
        container
        Type
        Container
        Default
        Description

      • Name
        model
        Type
        str
        Default
        = '56695'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • get_holes_for_channels(self, channels : collections.abc.Sequence[int]) -> list[Hole]

      Get hole for channel.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        channels
        Type
        collections.abc.Sequence[int]
        Default
        Description

        The zero-based indices of the channels involved.

      Response

      Type
      list[Hole]
      Description

    • __post_init__(self, *kwargs) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        *kwargs
        Type
        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

      = '56695'

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=37.5, y=117.5, z=110))

      Description

    • Name
      container
      Type
      Container
      Value

      = dataclasses.field(default_factory=lambda: Container(max_volume=200000, sections=[Cuboid(width=13, depth=33 * 8, height=54.5), ComplexShape(height=5 * 8, factor=339.5538)]))

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [Hole(dimensions=dimensions).copy(location=location) for (location, dimensions) in place(cols=1, rows=8, item=Vector(x=32, y=32, z=54.5), boundary=Vector(x=37.5, y=117.5, z=110))])

      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_CONT_300ml

    Self-Standing 300ml reagent container.

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[Hole],
        model : str,
      ) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        tags
        Type
        dict
        Default
        Description

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

      • Name
        container
        Type
        Container
        Default
        Description

      • Name
        model
        Type
        str
        Default
        = '56669'
        Description

      • Name
        dimensions
        Type
        Vector
        Default
        Description

    • get_holes_for_channels(self, channels : collections.abc.Sequence[int]) -> list[Hole]

      Get hole for channel.

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        channels
        Type
        collections.abc.Sequence[int]
        Default
        Description

        The zero-based indices of the channels involved.

      Response

      Type
      list[Hole]
      Description

    • __post_init__(self, *kwargs) -> None

      Parameters

      • Name
        self
        Type
        Default
        Description

      • Name
        *kwargs
        Type
        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

      = '56669'

      Description

    • Name
      dimensions
      Type
      Vector
      Value

      = dataclasses.field(default_factory=lambda: Vector(x=127, y=86, z=42))

      Description

    • Name
      container
      Type
      Container
      Value

      = dataclasses.field(default_factory=lambda: Container(max_volume=300000, sections=[Cuboid(width=121, depth=10 * 8, height=37)]))

      Description

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

      = dataclasses.field(repr=False, default_factory=lambda: [Hole(dimensions=dimensions).copy(location=location) for (location, dimensions) in place(cols=12, rows=8, item=Vector(x=10, y=10, z=37), boundary=Vector(x=127, y=86, z=42))])

      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