|
TraceMaker
C++ API of the engine
|
| Ntmk | |
| Nadvice | |
| CRegion | |
| CAdvice | |
| CApplied | What the router is given for an advice file, and what each hint became (for the log, the summary and the viewer) |
| CAliasMap | Aliases for net names and part references (a redacted stuck report): the advice an advisor writes uses the aliases, and unalias puts the board's names back before the references are checked |
| CProcessResult | |
| CAdvisorOptions | |
| CConsulted | |
| CStuckInput | |
| CStuckReport | |
| Nanalysis | |
| Ndetail | |
| CPt | |
| CRegion | The reference copper of one layer: the region under the non-zero rule (islands with their holes) |
| CPoint | |
| CFootprintIssue | |
| CFootprintResult | |
| CFootprintCheckOptions | |
| CFootprintCheckReport | |
| CRefPad | |
| CFootprintRef | |
| CTrustedBrands | Brands whose datasheets are trusted |
| CRefLibrary | |
| CReturnPathOptions | |
| CReturnVoid | |
| CReturnLayerChange | |
| CReturnEnd | |
| CNetReturn | |
| CReturnPathReport | |
| Napp | |
| Ntui | |
| CField | One command-line option as the screen shows it |
| CEntry | One line of an options file: name = value |
| CSpan | |
| CLine | One screen line: text is the plain text (what a test or a monochrome terminal sees), spans the same in pieces with their styles |
| CModel | |
| CRouteJob | |
| CRouteJobResult | |
| Nevents | |
| CSink | |
| CNullSink | |
| Ncrules | |
| Nimp | |
| CLine | |
| CPair | |
| CSolved | |
| CDetector | |
| CRuleSpec | |
| CCategory | |
| CCatalogue | |
| CCriticalNet | |
| CCriticalRole | The table itself, for the docs and the tests: (category id, role, tier) |
| CRole | |
| CRuleOverride | What the user override file (doc 15 §6.3) changed for one rule of one instance |
| CInstance | |
| CDetection | |
| CMeasure | |
| CEffectiveRule | |
| CEvaluation | |
| CProximityPairs | A proximity rule bound to pads (doc 15 §4 proximity): each pair is (pad of the part that should move close, pad it should be close to) |
| CPlacementAffinity | Placement pseudo-nets for every applicable proximity rule (mode soft or on; confidence >= suggest) |
| CEdgeAttraction | Connector edge pull for the placer (doc 15 §5.2 edge; CONN-01, USB2-11, DISP-02), opt-in (tracemaker-place –edge-attraction): the anchor of every instance with a connector edge rule (mode soft/on, not advisory, not disabled by the user), once per footprint, never a locked part and never a pin header or socket (board-to-board and jumper headers, CONN-01 note) |
| CGeneratedKeepout | Keep-out rule areas (doc 15 §5.5, P2) for instances at confidence >= apply: crystal + load caps (XTAL-04), switching-regulator inductor (BUCK-06/BOOST-04), discrete Ethernet magnetics (ETH-05: tracks, vias and zones on the magnetics' side and the adjacent layer only) |
| CSyntheticClass | Net classes from rules (doc 15 §5.3-5.4 and §16, P5): impedance rules with a computed width/gap, and width rules with a current or a minimum width, become synthetic net classes for the nets bound to the rule's roles |
| CLayerGeometry | One copper layer's line geometry from the stackup |
| CLineSolution | The width (and gap) that meets one target on one layer |
| CImpedancePlan | |
| CCurrentPlan | Width for a rule that names a current (doc 15 §5.4, IPC-2221) |
| CLayerDelay | Propagation delay per copper layer used to turn ps skew budgets into mm (doc 15 §4): from the stackup (eps_eff of a 50 ohm line on outer layers, er on inner layers) or the catalogue's FR-4 defaults |
| COverrideEntry | |
| COverrides | |
| CBoardIndex | |
| CDecapTie | Decision D25 (doc 04 §2): a two-pad capacitor (C*) between a supply net and a ground net is tied to the nearest pad, in the input placement, of an IC (U*, IC*) on the same supply; ties keep the lowest pad index |
| CPoint | |
| Ndrc | |
| CUnionFind | |
| CConnectivity | |
| CItemGraph | KiCad 10's item graph (pcbnew/connectivity, CN_VISITOR): items of any nets are linked when their copper touches on a common layer, except two items that cannot change net (pads, zone fills, free vias) on different nets |
| CZoneFills | Edge buckets of every zone fill (geom::PolygonIndex), so the zone questions below cost the nearby edges only |
| CCopperItem | |
| CHole | |
| CCopperModel | |
| CViolationItem | |
| CViolation | |
| CDrcOptions | |
| CDrcReport | |
| CRefillResult | |
| CRuleEngine | Compiled custom-rule condition |
| CCourtyardRegion | |
| CCourtyardEntry | |
| CCourtyardCache | |
| Ngeom | |
| CPolygon | |
| CPoint | |
| CBox | |
| CPolygonIndex | |
| CShape | |
| Ngpu | |
| CDeviceInfo | |
| CFieldProblem | |
| CGpuStatus | |
| Nindex | |
| CUniformGrid | |
| Nio | |
| CBoardEditor | |
| CLoadedBoard | |
| CSrjPoint | |
| CSrjObstacle | |
| CSrjConnection | |
| CSrjNet | One electrical net: the connections and obstacles that tscircuit's connectivity map (lib/utils/getConnectivityMapFromSimpleRouteJson.ts) puts in one group |
| CSrjRules | |
| CSrjPlane | A bus whose termination is a plane: every connection of the bus ends in a plane on layer |
| CSrjProblem | |
| CSrjImportOptions | |
| CSrjBoardFiles | |
| CSrjExport | |
| Nlearn | |
| CBoardFeatures | |
| CFailedConnection | |
| CKnowledgeBase | |
| Nmodel | |
| CLayerDef | |
| CNet | |
| CPad | |
| CCustomPrim | Custom-pad primitives in the pad frame, each already grown by half its stroke width (KiCad draws them with a round pen and fills them): a polygon or rectangle, a polyline (line, arc) or a disc (circle; pts[0] is the centre) |
| CGraphic | |
| CText | |
| CFootprint | |
| CTrack | |
| CArcTrack | |
| CVia | |
| CZone | |
| CBoard | |
| CNetlistComponent | |
| CNetlistNode | |
| CNetlistNet | |
| CNetlist | |
| CNetClass | |
| CBoardMinimums | |
| CConstraint | One constraint inside a custom rule, e.g. (constraint clearance (min 0.2mm)) |
| CCustomRule | |
| CDesignRules | |
| CStackupLayer | |
| CDielectricGap | The dielectric between two adjacent copper layers, combined over every stackup layer between them |
| CStackup | |
| CBox | |
| CPoint | |
| Npasses | |
| CStitchOptions | |
| CReturnNet | Return-path stitching: every via of signal wants a via (or plated through-hole pad) of plane within distance, centre to centre |
| CStitchReturn | |
| CStitchResult | |
| CStyleOptions | |
| CConnectionStyle | One connection: copper of one net from one end to the next |
| CStyleReport | |
| CWidenOptions | |
| CTarget | Width targets by net (explicit options and component rules); a target below a track's width changes nothing |
| CWidenNet | |
| CWidenResult | |
| Nplace | |
| Ndetail | |
| CMove | |
| CSlot | Temperature slot: the temperature and the shift-radius adaptation that belongs to it (parallel tempering exchanges slots between replicas, so a replica arriving at a temperature inherits its tuned radius) |
| CWindowStats | |
| CAnnealer | |
| CAnnealOptions | |
| CAnnealResult | |
| CLnsResult | Large-neighbourhood search from start (legal): windows LNS windows (sizes and seeds from o; the stream is o.seed) |
| CWindowResult | Exact window (doc 04 §3 F, without CP-SAT): the best placement of parts (others fixed) over a candidate set per part (its own spot, the other window parts' spots, its HPWL-optimal spot; four rotations each), by branch and bound with an HPWL bound |
| CCongestionOptions | |
| CCongestionMap | |
| CSpreadStats | |
| CPlacement | |
| CLegality | |
| CRaster | Conservative occupancy raster per side (cell 0.05–0.1 mm) |
| CViolations | Every conflict in a placement (for the final report and tests): movable-involved pairs and parts outside |
| CLegaliseStats | |
| CMinCostFlow | Min-cost flow on a small graph (exposed for tests) |
| CPlaceOptions | |
| CMetrics | |
| CPlaceReport | |
| CCopperShape | A piece of copper with what KiCad's clearance check needs: layers, net and the clearance it asks for (its net class, local overrides and board minimum; pair clearance = max of the two) |
| CPartGeom | |
| CPart | |
| CPin | |
| CPNet | |
| CKeepout | |
| CProblem | |
| CPadAffinity | A design-intent pseudo-net between two board pads (doc 15 P1): pad_a belongs to the part that should sit near pad_b (an ESD part near its connector, a crystal near its IC's oscillator pins, ...) |
| CEdgePull | An objective-only pull of a part toward the board outline (doc 15 CONN-01, opt-in): the body point nearest to the outline in the input becomes a one-pin pseudo-net anchored on the nearest outline segment's axis (x for a mostly vertical segment, y for a mostly horizontal one), so the pull is exact in the annealer's integer cost and rotating the part away from the edge costs too |
| CExtractOptions | |
| CRouteEval | What the router reports for one placement |
| CFailure | |
| CCandidate | |
| CEcoMemory | Failure memory (doc 04 §4 step 4): moves already routed without improvement, by part, target and rotation |
| CEcoOptions | |
| CEcoResult | |
| CLoopOptions | |
| CLoopResult | |
| CSeg | |
| CBox | |
| CPoint | |
| CShape | |
| Nroute | |
| CBundleConn | |
| CBundleHooks | |
| CBundleOptions | |
| CBundleStats | |
| CTunnelStats | Package tunnels (doc 05 §52): a connection between two perimeter pins of one dense package on the same net (the core rail's three pins, the supply pins of a package) goes where the designer puts it: a short stub and a via straight out of each pin, and the run between the two vias on the other layer, under the package |
| CBusGroup | |
| CViaHeights | The length a via adds to its net in KiCad's length calculation, which its skew check uses (KiCad 10, BOARD_STACKUP::GetLayerDistance): the stackup between the two copper layers the via joins, with the copper of an outer layer in full and of an inner layer by half |
| CBusMember | A group as routed, measured on copper |
| CBusStats | |
| CPairRule | What a pair is routed at |
| CDir2 | Octilinear unit direction d (0..7, E, NE, N, NW, W, SW, S, SE with y down) and its left normal, as doubles |
| CPairStats | A routed pair, measured on its tracks: a sample of one half counts as coupled where a parallel track of the other half on the same layer lies within coupled_gap edge to edge |
| CEscapeCorridor | |
| CEscapeOptions | |
| CEscapeStats | |
| CDeadPin | Escape feasibility (M9 analysis): can each pin of a dense package leave it at all under the board's rules? |
| CPartEscape | |
| CEscapeAnalysisOptions | |
| CFlowEscapeInput | |
| CRingPlan | Per ring (1 = perimeter) of the planned arrays: how the pins that need routing were assigned |
| CFlowEscapeStats | |
| CGlobalNet | |
| CGlobalOptions | |
| CCutLine | A straight line across the whole board and what has to cross it (escalation rung R6, doc 05 §20; the cut argument of Maley, "Single-Layer Wire Routing and Compaction", 1990, at the resolution of the capacity samples) |
| CGlobalResult | |
| CHeatGrid | |
| CLayerLimits | |
| CLegalizeOptions | |
| CLegalizeResult | |
| CObstacles | |
| CReferenceMap | |
| CConnRoute | The copper of one routed connection, keyed by its two pads: what a later run can start from (RouterOptions::warm) |
| CRouterOptions | |
| CBus | Buses (doc 05 §38): groups of nets routed lane by lane |
| CGuidePath | Path guidance (doc 16 F1): a preferred path for a connection, found by matching its two pad centres |
| CAdviceSet | Hints from an advice file (src/advice, doc 17) |
| CConnection | |
| CWorkCounts | Work profile (doc 10 §2, D88): how many of each costly operation a run did, per phase |
| CWorkProfile | |
| CRouteResult | |
| CUnrouted | One unrouted connection of the state returned, structured for the stuck report (doc 17 §3): where it is, why the last attempt failed (a code, and the search's own words), how often it was ripped or failed, and which nets stood in the way |
| CPortfolioResult | Runs several differently configured routers (portfolio variants) and keeps the best result |
| CRouter | |
| CPoint | |
| Nserver | |
| CRatsEdge | |
| CPathPoint | |
| CFailure | |
| CStats | |
| CReplayWriter | |
| CReplayReader | |
| CServerOptions | |
| CViewerServer | |
| CCounters | |
| Nsession | |
| CSessionOptions | |
| CSession | |
| CReplay | Runs the calls of a log written by SessionOptions::log and stops at the first result or state digest that differs |
| Nsexpr | |
| CNode | |
| CParseError | |
| CDocument | |
| CU32x4 | |
| CU32x2 | |
| CRngStream | A random stream identified by (seed, stage, item) |