knitout_interpreter.knitout_execution_structures package
knitout_execution_structures: Data structures for organizing knitout execution.
This module provides specialized data structures that organize knitout instructions into meaningful execution units. These structures bridge the gap between individual knitout instructions and the actual execution patterns on knitting machines.
- Key Concepts:
- Carriage Pass: A sequence of instructions that can be executed in a single pass of the knitting machine carriage.
Instructions in a carriage pass share common properties like direction, racking, and carrier usage.
Organization: Instructions are automatically grouped into carriage passes based on machine constraints and execution efficiency. This organization is crucial for accurate timing analysis and machine operation.
- Core Components:
Carriage_Pass: Main data structure representing a carriage pass
Pass organization and merging logic
Execution timing and analysis capabilities
Needle range and width calculations
- Machine Execution Model:
Real knitting machines operate in carriage passes rather than individual instructions. A carriage pass represents one sweep of the carriage across the needle bed, during which multiple operations can occur simultaneously.
Submodules
- knitout_interpreter.knitout_execution_structures.Carriage_Pass module
Carriage_PassCarriage_Pass.all_needle_rackCarriage_Pass.rackCarriage_Pass.__new__()Carriage_Pass.__init__()Carriage_Pass.first_instructionCarriage_Pass.xfer_passCarriage_Pass.directed_passCarriage_Pass.last_instructionCarriage_Pass.needlesCarriage_Pass.needle_slotsCarriage_Pass.last_needleCarriage_Pass.first_needleCarriage_Pass.leftmost_slotCarriage_Pass.rightmost_slotCarriage_Pass.carriage_pass_rangeCarriage_Pass.instruction_setCarriage_Pass.rightward_sorted_needlesCarriage_Pass.leftward_sorted_needlesCarriage_Pass.sorted_needlesCarriage_Pass.instruction_by_needle()Carriage_Pass.instruction_on_slot()Carriage_Pass.instruction_by_slot()Carriage_Pass.instructions_by_needles()Carriage_Pass.rack_instruction()Carriage_Pass.contains_instruction_type()Carriage_Pass.can_add_instruction()Carriage_Pass.add_instruction()Carriage_Pass.can_merge_pass()Carriage_Pass.merge_carriage_pass()Carriage_Pass.add_kicks()Carriage_Pass.execute()Carriage_Pass.__str__()Carriage_Pass.__list__()Carriage_Pass.__len__()Carriage_Pass.__repr__()Carriage_Pass.__iter__()Carriage_Pass.__getitem__()Carriage_Pass.__hash__()Carriage_Pass.__class_getitem__()
carriage_pass_typed_to_first_instruction()carriage_pass_of_instructions()
- knitout_interpreter.knitout_execution_structures.Knitout_Knitting_Machine module
Knitout_Machine_SpecificationKnitout_Machine_Specification.loop_classKnitout_Machine_Specification.__init__()Knitout_Machine_Specification.carrier_colorsKnitout_Machine_Specification.carrier_countKnitout_Machine_Specification.gaugeKnitout_Machine_Specification.get_yarn_color()Knitout_Machine_Specification.hook_sizeKnitout_Machine_Specification.machineKnitout_Machine_Specification.maximum_floatKnitout_Machine_Specification.maximum_loop_holdKnitout_Machine_Specification.maximum_rackKnitout_Machine_Specification.needle_countKnitout_Machine_Specification.position
Knitout_Knitting_MachineKnitout_Knitting_Machine.__init__()Knitout_Knitting_Machine.machine_specificationKnitout_Knitting_Machine.__contains__()Knitout_Knitting_Machine.__getitem__()Knitout_Knitting_Machine.__len__()Knitout_Knitting_Machine.active_floats()Knitout_Knitting_Machine.active_loopsKnitout_Knitting_Machine.all_loops()Knitout_Knitting_Machine.all_needle_rackKnitout_Knitting_Machine.all_needles()Knitout_Knitting_Machine.all_slider_loops()Knitout_Knitting_Machine.all_sliders()Knitout_Knitting_Machine.back_bedKnitout_Knitting_Machine.back_loops()Knitout_Knitting_Machine.back_needles()Knitout_Knitting_Machine.back_slider_loops()Knitout_Knitting_Machine.back_sliders()Knitout_Knitting_Machine.bring_in()Knitout_Knitting_Machine.carriageKnitout_Knitting_Machine.carrier_systemKnitout_Knitting_Machine.drop()Knitout_Knitting_Machine.front_bedKnitout_Knitting_Machine.front_loops()Knitout_Knitting_Machine.front_needles()Knitout_Knitting_Machine.front_slider_loops()Knitout_Knitting_Machine.front_sliders()Knitout_Knitting_Machine.gauged_layersKnitout_Knitting_Machine.get_aligned_needle()Knitout_Knitting_Machine.get_back_needle()Knitout_Knitting_Machine.get_carrier()Knitout_Knitting_Machine.get_front_needle()Knitout_Knitting_Machine.get_needle_of_loop()Knitout_Knitting_Machine.get_rack()Knitout_Knitting_Machine.get_specified_needle()Knitout_Knitting_Machine.get_transfer_rack()Knitout_Knitting_Machine.handle_violations()Knitout_Knitting_Machine.has_loop()Knitout_Knitting_Machine.has_needle()Knitout_Knitting_Machine.in_hook()Knitout_Knitting_Machine.knit()Knitout_Knitting_Machine.knit_graphKnitout_Knitting_Machine.loops_crossed_by_float()Knitout_Knitting_Machine.max_rackKnitout_Knitting_Machine.miss()Knitout_Knitting_Machine.needle_countKnitout_Knitting_Machine.out()Knitout_Knitting_Machine.out_hook()Knitout_Knitting_Machine.rackKnitout_Knitting_Machine.release_hook()Knitout_Knitting_Machine.set_response_for()Knitout_Knitting_Machine.sliders_are_clearKnitout_Knitting_Machine.slot_rangeKnitout_Knitting_Machine.split()Knitout_Knitting_Machine.tuck()Knitout_Knitting_Machine.update_rack()Knitout_Knitting_Machine.valid_rack()Knitout_Knitting_Machine.violation_policyKnitout_Knitting_Machine.xfer()
- knitout_interpreter.knitout_execution_structures.knitout_header module
Knitting_Machine_HeaderKnitting_Machine_Header.__init__()Knitting_Machine_Header.header_linesKnitting_Machine_Header.header_lenKnitting_Machine_Header.specificationKnitting_Machine_Header.set_header_by_specification()Knitting_Machine_Header.extract_header()Knitting_Machine_Header.count()Knitting_Machine_Header.index()
- knitout_interpreter.knitout_execution_structures.knitout_loops module
Knitout_LoopKnitout_Loop.__init__()Knitout_Loop.source_instructionKnitout_Loop.dropping_instructionKnitout_Loop.last_instructionKnitout_Loop.forming_carriage_directionKnitout_Loop.set_source()Knitout_Loop.add_transfer_instruction()Knitout_Loop.drop_from_bed()Knitout_Loop.__lt__()Knitout_Loop.__eq__()Knitout_Loop.__hash__()Knitout_Loop.__int__()Knitout_Loop.__repr__()Knitout_Loop.add_loop_behind_started_float()Knitout_Loop.add_loop_in_front_of_started_float()Knitout_Loop.add_parent_loop()Knitout_Loop.drop()Knitout_Loop.droppedKnitout_Loop.ended_floatKnitout_Loop.has_parent_loopsKnitout_Loop.holding_needleKnitout_Loop.is_behind_float()Knitout_Loop.is_in_front_of_float()Knitout_Loop.knitting_machineKnitout_Loop.last_needleKnitout_Loop.left_original_needleKnitout_Loop.loop_count_on_machineKnitout_Loop.loop_idKnitout_Loop.majority_pull_direction()Knitout_Loop.next_loop_on_yarnKnitout_Loop.on_needleKnitout_Loop.parent_loop_idsKnitout_Loop.prior_loop_on_yarnKnitout_Loop.pull_directionKnitout_Loop.pull_directionsKnitout_Loop.put_behind_float()Knitout_Loop.put_in_front_of_float()Knitout_Loop.remove_parent()Knitout_Loop.returns_to_original_needleKnitout_Loop.reverse_drop()Knitout_Loop.source_needleKnitout_Loop.started_floatKnitout_Loop.transfer_loop()
- knitout_interpreter.knitout_execution_structures.knitout_program module
Knitout_ProgramKnitout_Program.__init__()Knitout_Program.headerKnitout_Program.program_bodyKnitout_Program.instructionsKnitout_Program.needle_instructionsKnitout_Program.loop_forming_instructionsKnitout_Program.commentsKnitout_Program.version_lineKnitout_Program.instruction_pauses_after_breakpoint()Knitout_Program.next_loop_forming_instruction_index()Knitout_Program.new_program()Knitout_Program.new_header_program()Knitout_Program.swap_line()Knitout_Program.insert_line()Knitout_Program.append_line()Knitout_Program.remove_line()Knitout_Program.swap_lines()Knitout_Program.insert_lines()Knitout_Program.append_lines()Knitout_Program.remove_lines()Knitout_Program.shift_needle_positions()Knitout_Program.organize_program()Knitout_Program.instructions_within_range()Knitout_Program.__contains__()Knitout_Program.count()Knitout_Program.index()