TipSpot

Optionally hold a tip at a predefined location on a tip rack.

MRO
Bases
Spot[T]
Decorators
dataclasses.dataclass

Methods

  • __init__(self, children : collections.abc.Sequence[T]) -> None

    Parameters

    • Name
      self
      Type
      Default
      Description

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

  • @typing_extensions.override

    can_assign(
      self,
      resource : Tip,
      **kwargs
    ) -> typing_extensions.TypeGuard[T]

    Parameters

    • Name
      self
      Type
      Default
      Description

    • Name
      resource
      Type
      Tip
      Default
      Description

    • Name
      **kwargs
      Type
      Default
      = {}
      Description

    Response

    Type
    typing_extensions.TypeGuard[T]
    Description

  • @typing_extensions.override

    assign(
      self,
      resource : typing.Optional[Tip],
      **kwargs
    ) -> None

    Parameters

    • Name
      self
      Type
      Default
      Description

    • Name
      resource
      Type
      typing.Optional[Tip]
      Default
      Description

    • Name
      **kwargs
      Type
      Default
      = {}
      Description

  • get(self) -> typing.Optional[T]

    Access the labware in the spot. Returns None if the spot is empty.

    Response

    Type
    typing.Optional[T]
    Description

  • add(self, labware : typing.Optional[T]) -> None

    Assign the labware to this spot.

    Parameters

    • Name
      self
      Type
      Default
      Description

    • Name
      labware
      Type
      typing.Optional[T]
      Default
      Description

      The labware to assign.

  • remove(self) -> typing.Optional[T]

    Remove the resource in this spot.

    Response

    Type
    typing.Optional[T]
    Description

    The resource that was removed from this spot, if available.

  • can_unassign(
      self,
      **kwargs
    ) -> typing_extensions.TypeGuard[T]

    Verify whether the given resource can be unassigned from this group.

    Parameters

    • Name
      self
      Type
      Default
      Description

    • Name
      resource
      Type
      typing.Optional[Resource]
      Default
      = None
      Description

      The resource to unassign from this group.

    • Name
      **kwargs
      Type
      Default
      = {}
      Description

      Additional arguments for the group.

    Response

    Type
    typing_extensions.TypeGuard[T]
    Description

    True if the resource can be unassigned, otherwise raise an error.

  • unassign(
      self,
      **kwargs
    ) -> None

    Unassign the given resource from this group.

    Parameters

    • Name
      self
      Type
      Default
      Description

    • Name
      resource
      Type
      typing.Optional[Resource]
      Default
      = None
      Description

      The resource to unassign from this group.

    • Name
      **kwargs
      Type
      Default
      = {}
      Description

      Additional arguments for the group.

  • reassign(
      self,
      **kwargs
    ) -> None

    Unassign the given resource from this group and assign it another one.

    Parameters

    • Name
      self
      Type
      Default
      Description

    • Name
      to
      Type
      Spot
      Default
      Description

      The target group to which to assign the resource to.

    • Name
      resource
      Type
      typing.Optional[Resource]
      Default
      = None
      Description

      The resource to reassign from this group to the other one.

    • Name
      **kwargs
      Type
      Default
      = {}
      Description

      Additional arguments for the group.

  • __post_init__(self, *kwargs) -> None

    Parameters

    • Name
      self
      Type
      Default
      Description

    • Name
      *kwargs
      Type
      Default
      = ()
      Description

  • __init_subclass__(cls) -> None

    Parameters

    • Name
      cls
      Type
      Default
      Description

  • @typing_extensions.override

    rotate_by(self, angle : int) -> None

    Parameters

    • Name
      self
      Type
      Default
      Description

    • Name
      angle
      Type
      int
      Default
      Description

  • find(self, identifier) -> None

    Parameters

    • Name
      self
      Type
      Default
      Description

    • Name
      identifier
      Type
      Default
      Description

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

    Parameters

    • Name
      self
      Type
      Default
      Description

    • Name
      item
      Type
      typing.Any
      Default
      Description

    Response

    Type
    bool
    Description

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

    Parameters

    • Name
      self
      Type
      Default
      Description

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

    Response

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

  • __len__(self) -> int

    The number of children in this group.

    Response

    Type
    int
    Description

    The number of children in this group.

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

    Iterate over the children of this group.

    Response

    Type
    collections.abc.Iterator[T]
    Description

    An iterator to iterate over all children in this group.

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

    Parameters

    • Name
      self
      Type
      Default
      Description

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

    Response

    Type
    typing.Union[int, slice]
    Description

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

    Parameters

    • Name
      self
      Type
      Default
      Description

    • Name
      **changes
      Type
      Default
      = {}
      Description

  • serialize(self) -> JsonSchema

    Response

    Type
    JsonSchema
    Description

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

    Set the parent of this resource to the given group.

    Parameters

    • Name
      self
      Type
      Default
      Description

    • Name
      parent
      Type
      Group
      Default
      Description

      The group to which this resource is assigned to.

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

    rotate(self, angle : int) -> None

    Parameters

    • Name
      self
      Type
      Default
      Description

    • Name
      angle
      Type
      int
      Default
      Description

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

    Rotate to the given absolute angle in degrees.

    Parameters

    • Name
      self
      Type
      Default
      Description

    • Name
      angle
      Type
      int
      Default
      Description

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

  • @classmethod

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

    Deserialize a JSON-like dictionary to a resource.

    Parameters

    • Name
      cls
      Type
      Default
      Description

    • Name
      identifier
      Type
      str
      Default
      Description

      The identifier of the resource to deserialize.

    • Name
      schema
      Type
      JsonSchema
      Default
      Description

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

    Response

    Type
    typing_extensions.Self
    Description

    The newly created resource.

  • @classmethod

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

    Recursively find a resource subclass with the given name.

    Parameters

    • Name
      cls
      Type
      Default
      Description

    • Name
      name
      Type
      str
      Default
      Description

      The name of the class to find.

    Response

    Type
    typing.Optional[type[Resource]]
    Description

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

    Exceptions

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

Attributes

  • Name
    children
    Type
    collections.abc.Sequence[typing.Optional[T]]
    Value

    = dataclasses.field(init=False, repr=False, default_factory=lambda: [None])

    Description

  • Name
    child
    Type
    typing.Optional[T]
    Value

    = None

    Description

    Request the resource in this spot or `None` if the spot is empty.

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

Copyright © 2024