RasterMode enum, section markers, state blocks, assembler markers#9
Merged
Conversation
- Add RasterMode enum (VariablePower, ConstantPower, DepthMap) - Add raster_mode field to OpsSectionStart/End markers - Add constructor validation for SectionType/RasterMode combinations - Add section query API (section_ops, sections_by_type, sections_by_mode) - section_params returns 3-tuple with raster_mode - Add StateBlockStart/End markers with name support - Add StateBlock struct and section-scoped query API - Rust raster assembler wraps passes in section markers - Rust material_test_grid assembler wraps output in section+state blocks - Dict serialization/deserialization for all new types
Breaking change: ops_section_start and ops_section_end now require raster_mode for RasterFill sections and return Result. The old infallible shims and _with_mode variants are removed. - ops_section_start/end unified into single validated Result-returning API - All callers updated to pass raster_mode= for RasterFill sections - Dict deserialization uses the unified path - Python bindings accept keyword-only raster_mode (default None)
# Conflicts: # src/ops/assembly/material_test_grid/mod.rs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Nesting relationship
OpsSectionis the outer boundary produced by a single producer (raster assembler, material test grid, vector cut).StateBlocknests insideOpsSectionand delimits sub-regions where device parameters change.Consuming the new APIs
Iterating sections by type and mode
Extracting section content
Reading section params
State blocks within a section
Flat iteration
Assembler output with markers
The raster and material-test-grid assemblers now emit section and state block markers: