Method: OpenTrons::LabwareItem#initialize

Defined in:
lib/opentrons/labware.rb

#initialize(labware, model, slot, display_name) ⇒ LabwareItem

Returns a new instance of LabwareItem.



59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# File 'lib/opentrons/labware.rb', line 59

def initialize(labware, model, slot, display_name)
  if labware.labware_hash.map {|key, item| item.slot}.include? slot
    raise ArgumentError.new "Cannot place #{display_name} in slot #{slot} (already occupied)."
  end

  @labware = labware
  @model = model
  @slot = slot
  @display_name = display_name
  @definition = labware.labware_definitions.find{|x| x["metadata"]["name"] == model}
  @well_list = []
  definition["ordering"].each do |column|
    well_list << column.map {|x| Well.new(self, x)}
  end

end