pylabrobot.resources.Deck

Contents

pylabrobot.resources.Deck#

class pylabrobot.resources.Deck(name: str = 'deck', size_x: float = 1360, size_y: float = 653.5, size_z: float = 900, origin: Coordinate = Coordinate(x=0, y=0, z=0), category: str = 'deck')#

Bases: Resource

Base class for liquid handler decks.

This class maintains a dictionary of all resources on the deck. The dictionary is keyed by the resource name and is updated when resources are assigned and unassigned from the deck. The point of this dictionary is to allow O(1) naming collision checks as well as the quick lookup of resources by name.

Attributes

name

Get the name of this resource.

Methods

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

Initialize a new deck.

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.

clear()

Removes all resources from the deck.

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_resources()

Returns a list of all resources in the deck.

get_resource(name)

Returns the resource with the given name.

get_size_x()

get_size_y()

get_size_z()

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

get_trash_area()

Returns the trash area resource.

get_trash_area96()

has_resource(name)

Returns True if the deck has a resource with the given name.

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

serialize_all_state()

Serialize the state of this resource and all children.

serialize_state()

Serialize the state of this resource only.

summary()

Returns a summary of the deck layout.

unassign()

Unassign this resource from its parent.

unassign_child_resource(resource)

Unassign a child resource from this resource.

Parameters: