ReadonlyidentificationPatterns that identify this slicer in gcode comments
ReadonlyslicerThe name of the slicer this parser handles
Checks if this parser can handle the given gcode based on comments
Array of gcode commands with comments
How many of those commands to sample before giving up
True if this parser can handle the gcode
Whether the moves of this gcode can be trusted to derive per-path extrusion dimensions from
Array of gcode commands with comments
True unless the dialect's E values are not filament lengths
Deriving is the default, for every dialect and for gcode no parser
recognised: a file that announces its dimensions simply outranks the
derived values path by path (the Job resolves that order), so
there is nothing to gate on. A dialect only opts out when the arithmetic
itself does not hold -- Cura's UltiGCode flavor, whose E is cubic
millimetres of material rather than millimetres of filament, would
otherwise derive confidently wrong widths. Evaluated on the chunk that
identified the slicer (like detectSlicerName), so it can inspect header
comments.
Reports the specific family member named in the header comments, falling back to the generic family name when only the shared LAYER_CHANGE dialect identified the file.
Array of gcode commands with comments
The specific slicer name, or 'PrusaFamily' when unknown
Parses ;WIDTH: / ;HEIGHT: extrusion dimension comments
Array of gcode commands with comments
One event per dimension comment, in line order
Every HEIGHT: line is reported, including the ones inside a
LAYER_CHANGE block: there it doubles as the layer's height (see
parseLayerMetadata) and as the line height of the paths that follow,
which is exactly how adaptive layer height reaches individual paths.
Non-numeric and non-positive values are ignored.
Reads the filament diameter announced in header comments, when any
Array of gcode commands with comments
The filament diameter in millimeters, or undefined when unknown
Feeds the volumetric dimension derivation (see
derivesExtrusionDimensions), which converts extruded filament lengths
into deposited volume. Only header-borne values may be reported here: a
diameter that appears after moves (like Cura's end-of-file ;SETTING_3
blob) would reach a one-shot parse before any move executes but a
streamed parse only after every move already ran, making the two disagree.
Parses layer metadata from gcode comments
Array of gcode commands with comments
Layer metadata extracted from comments
Parser for the PrusaSlicer comment dialect, shared by the whole family of PrusaSlicer-derived slicers (SuperSlicer, OrcaSlicer, BambuStudio).
Layer comment format: ;LAYER_CHANGE ;Z:0.3 ;HEIGHT:0.3
Bambu/Orca additionally emit explicit layer indices: ;LAYER:12
Extrusion dimension comments, announcing the width and height of the extrusions that follow (many per layer): ;WIDTH:0.45 ;HEIGHT:0.16