unitelabs.labware.hamilton.carriers

Packages

Attributes

  • Name
    __all__
    Type
    Value

    = [ "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_4R100_A00", "RGT_CAR_3R_A00", "RGT_CAR_3R_A01", "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", "MFX_CAR_2HHSF30DWP_2HHC", "MFX_2Tip_2PCR_1MIDI", "MFX_3Stack" ]

    Description

  • Name
    PLT_CAR_L5PCR384
    Type
    Value

    = PCR_CAR_L5_384_A00

    Description

Classes

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

  • 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

  • MFX_CAR_2HHSF30DWP_2HHC

    MRO
    Decorators
    dataclasses.dataclass

    Methods

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

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

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.MULTPLE

      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=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[Spot]
      Value

      = dataclasses.field(repr=False, default_factory=lambda: [CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=15.25, y=373.5, z=83)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=15.25, y=253.5, z=83)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=15.25, y=133.1, z=80.61)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=15.25, y=13.1, z=80.61))])

      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.

  • MFX_2Tip_2PCR_1MIDI

    MRO
    Decorators
    dataclasses.dataclass

    Methods

    • __init__(
        self,
        tags : dict,
        children : collections.abc.Sequence[Spot],
        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[Spot]
        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
        = MULTPLE
        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
        = 'APE*****'
        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

      = 6

      Description

    • Name
      dimensions
      Type
      Vector
      Value

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

      Description

    • Name
      labware
      Type
      LabwareType
      Value

      = LabwareType.MULTPLE

      Description

    • Name
      variant
      Type
      str
      Value

      = 'A'

      Description

    • Name
      revision
      Type
      str
      Value

      = '00'

      Description

    • Name
      barcode
      Type
      str
      Value

      = 'APE*****'

      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

      = 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[Spot]
      Value

      = dataclasses.field(repr=False, default_factory=lambda: [CarrierSite(dimensions=Vector(x=122.4, y=82.6), location=Vector(x=6.3, y=394.2, z=114.7)), CarrierSite(dimensions=Vector(x=122.4, y=82.6), location=Vector(x=6.3, y=298.2, z=114.7)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4, y=200.5, z=109.5)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4, y=104.5, z=109.5)), CarrierSite(dimensions=Vector(x=127, y=86), location=Vector(x=4, y=8.5, z=94.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.

  • MFX_3Stack

    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
        = 'APE*****'
        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
        = ''
        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

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

      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

      = 'APE*****'

      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

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

      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.

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

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

Copyright © 2024