pylabrobot.resources.Carrier#

class pylabrobot.resources.Carrier(name: str, size_x: float, size_y: float, size_z: float, sites: Dict[int, S] | None = None, category: str | None = 'carrier', model: str | None = None, metadata: Mapping[str, Any] | None = None)#

Bases: Resource, Generic[S]

Base class for all carriers.

Attributes

capacity

The number of sites on this carrier.

location

Where this resource sits, relative to its parent.

name

Get the name of this resource.

Methods

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

assign_child_by_anchor(resource[, ...])

Assign a child resource by aligning anchor points.

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

Assign a child resource to this resource.

assign_resource_to_site(resource, spot)

at(location)

Return a copy of this resource at the given location.

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.

check_can_drop_resource_here(resource, *[, ...])

Validate whether resource may be dropped onto this resource.

copy()

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[, allow_marshal])

Deserialize a resource from a dictionary.

find_resource([fn, metadata, has_metadata, ...])

Find the first matching resource, or None if not found.

find_resources([fn, metadata, has_metadata, ...])

Find resources matching top-level attributes, metadata, and/or a predicate.

get_absolute_location([x, y, z])

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

get_absolute_rotation()

Get the absolute rotation of this resource.

get_absolute_size_x()

Get the absolute size in the x direction.

get_absolute_size_y()

Get the absolute size in the y direction.

get_absolute_size_z()

Get the absolute size in the z direction.

get_all_children()

Recursively get all children of this resource.

get_anchor([x, y, z])

Get a relative location within the resource.

get_free_sites()

get_highest_known_point()

Recursively finds the highest known point in absolute space.

get_location_wrt(other[, x, y, z])

Get the location of this resource with respect to another resource.

get_resource(name)

Get a resource by name.

get_resources()

Get all resources, using self.__getitem__ (so that the location is within this carrier).

get_root()

Get the root of the resource tree.

get_size_x()

Local size in the x direction.

get_size_y()

Local size in the y direction.

get_size_z()

Local size in the z direction.

has_resource(name)

Whether anything at or beneath this resource carries the given name.

is_in_subtree_of(other)

Return True if self is in the subtree rooted at other.

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.

named(name)

Return a copy of this resource with the given name.

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([x, y, z, pivot_coordinate])

Rotate counter-clockwise around the parent-coordinate axes by the given degrees.

rotate_to([x, y, z, pivot_coordinate])

Set the rotation about each axis, where rotate turns by an amount instead.

rotated([x, y, z, pivot_coordinate])

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

Serialize the state of this resource and all children.

serialize_state()

Serialize the state of this resource only.

unassign()

Unassign this resource from its parent.

unassign_child_resource(resource)

Unassign a resource from this carrier, checked by name.

Parameters:
  • name (str)

  • size_x (float)

  • size_y (float)

  • size_z (float)

  • sites (Optional[Dict[int, S]])

  • category (Optional[str])

  • model (Optional[str])

  • metadata (Optional[Mapping[str, Any]])