10 — Glossary¶
| Term | Meaning |
|---|---|
| Deep engine | C++ NPSEngine owns domain logic end-to-end; UI is thin |
| Sole host border | Only Nps.EngineHost/NpsAbi.cs may [DllImport("NPSEngine")] |
| C ABI / L2 | src/Engine/abi/nps_c_api.h — frozen PODs + exports |
| Session / L1 | nps::Engine — one stateful instance per handle |
| L0 modules | zip, threemf, gcode, analysis, viewport, color, stores |
| Demo toolpath | GenerateGcode / GenerateDemoToolpath — not a production slice |
| Dual harness | Catch2 C++ tests + xUnit C# interop tests |
| Golden / Benchy | 4-colors+Benchy+AMS+test-v2.3mf — 1 plate, 16562 v, 33097 t, 4 colors |
| NPS_ABI_VERSION | Breaking-change constant (currently 1) |
| Test hooks | Symbols under NPS_ENABLE_TEST_HOOKS (Catch2 only) |
| GetMeshBounds (ABI) | Test-gated export; C++ class method remains for Catch2 |
| Finding summary | 16 B list row; detail 300 B on demand |
| Overlay mode id | Open string keyspace (motion-type, thermal, …) |
| GcodeViewport | CPU buffer prep for canvas — not a GPU engine |
| MeshStore / GcodeStore | Session value members for mesh and gcode domains |
| AnalysisManager | Owns analyzers, findings, overlay cache, warp grids |
| SafeHandle | .NET RAII for native engine/viewport pointers |
| EngineSession | C# session façade apps actually call |
| ViewportController | C# façade for viewport ABI |
| FixtureLocator | Finds primary 3MF without hard-coding absolute paths |
| StatusSink | Status bar + stdout dual-write |
| lefthook | Local pre-commit / pre-push gate runner |
| layer-fitness | Script asserting include DAG / no UI in engine |
| structural-fitness | Script asserting physical module structure |
| TARGET vs REAL | Documented future layout vs tree as implemented |
| Stamp coupling (findings) | Avoid shipping 300 B × N when list needs 16 B |
| POD | Plain old data — fixed layout for ABI |
| Blittable | Memory layout safe for P/Invoke without custom marshal |
| BGCode | Binary G-code container format (partial support) |
| AMS / paint_color | Multi-material / painted color extensions in 3MF |
Wire-id constants (host)¶
See NpsAbi.OverlayModeId and NpsAbi.FindingCategoryId in
src/Nps.EngineHost/NpsAbi.cs.
Related docs¶
docs/naming.mddocs/architecture.md- This map hub:
index.md