pylabrobot.resources.ItemizedResource

Contents

pylabrobot.resources.ItemizedResource#

class pylabrobot.resources.ItemizedResource(name: str, size_x: float, size_y: float, size_z: float, items: List[List[T]] | None = None, num_items_x: int | None = None, num_items_y: int | None = None, category: str | None = None, model: str | None = None)#

Bases: Resource, Generic[T]

Base class for Itemized resources.

This class provides utilities for getting child resources by an identifier. It also restricts the child resources to instances of the generic type T, specified by the subclass. For example, a pylabrobot.resources.plate.Plate can only have child resources of type pylabrobot.resources.well.Well.

Note

This class is not meant to be used directly, but rather to be subclassed, most commonly by pylabrobot.resources.Plate and pylabrobot.resources.TipRack.

Attributes

name

Get the name of this resource.

num_items

The number of items on this resource.

Methods

__init__(name, size_x, size_y, size_z[, ...])

Initialize an itemized resource

assign_child_resource(resource, location[, ...])

Assign a child resource to this resource.

center([x, y, z])

Get the center of this resource.

centers([xn, yn, zn])

Get equally spaced points in the x, y, and z directions.

copy()

Copy this resource.

deregister_did_assign_resource_callback(callback)

Remove a callback that will be called after a resource is assigned to this resource.

deregister_did_unassign_resource_callback(...)

Remove a callback that will be called after a resource is unassigned from this resource.

deregister_state_update_callback(callback)

Remove a callback that will be called when the state of the resource changes.

deregister_will_assign_resource_callback(...)

Remove a callback that will be called before a resource is assigned to this resource.

deregister_will_unassign_resource_callback(...)

Remove a callback that will be called before a resource is unassigned from this resource.

deserialize(data)

Deserialize a resource from a dictionary.

get_absolute_location()

Get the absolute location of this resource, probably within the pylabrobot.resources.Deck.

get_all_children()

Recursively get all children of this resource.

get_all_items()

Get all items in the resource.

get_item(identifier)

Get the item with the given identifier.

get_items(identifier)

Get the items with the given identifier.

get_resource(name)

Get a resource by name.

get_size_x()

get_size_y()

get_size_z()

Get the size of this resource in the z-direction.

index_of_item(item)

Return the index of the given item in the resource, or None if the resource was not found.

load_all_state(state)

Load state for this resource and all children.

load_from_json_file(json_file)

Loads resources from a JSON file.

load_state(state)

Load state for this resource only.

load_state_from_file(fn)

Load the state of this resource and all children from a JSON file.

register_did_assign_resource_callback(callback)

Add a callback that will be called after a resource is assigned to this resource.

register_did_unassign_resource_callback(callback)

Add a callback that will be called after a resource is unassigned from this resource.

register_state_update_callback(callback)

Register a callback that will be called when the state of the resource changes.

register_will_assign_resource_callback(callback)

Add a callback that will be called before a resource is assigned to this resource.

register_will_unassign_resource_callback(...)

Add a callback that will be called before a resource is unassigned from this resource.

rotate(degrees)

Rotate counter clockwise by the given number of degrees.

rotated(degrees)

Return a copy of this resource rotated by the given number of degrees.

save(fn[, indent])

Save a resource to a JSON file.

save_state_to_file(fn[, indent])

Save the state of this resource and all children to a JSON file.

serialize()

Serialize this resource.

serialize_all_state()

Serialize the state of this resource and all children.

serialize_state()

Serialize the state of this resource only.

traverse(batch_size, direction[, repeat])

Traverse the items in this resource.

unassign()

Unassign this resource from its parent.

unassign_child_resource(resource)

Unassign a child resource from this resource.

Parameters:
  • name (str) –

  • size_x (float) –

  • size_y (float) –

  • size_z (float) –

  • items (List[List[T]] | None) –

  • num_items_x (int | None) –

  • num_items_y (int | None) –

  • category (str | None) –

  • model (str | None) –