/** Returns the list of all pins on the board with only 1 layer */ public Collection<Pin> get_smd_pins() { Collection<Pin> result = new LinkedList<Pin>(); Iterator<UndoableObjects.UndoableObjectNode> it = item_list.start_read_object(); for (; ; ) { UndoableObjects.Storable curr_item = item_list.read_object(it); if (curr_item == null) { break; } if (curr_item instanceof Pin) { Pin curr_pin = (Pin) curr_item; if (curr_pin.first_layer() == curr_pin.last_layer()) { result.add(curr_pin); } } } return result; }