@tscircuit/capacity-autorouter 0.0.813 → 0.0.815
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +38 -52
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/index.d.ts
CHANGED
|
@@ -10,13 +10,14 @@ import { CurvyTraceSolver } from '@tscircuit/curvy-trace-solver';
|
|
|
10
10
|
import { JumperGraphSolver, JRegion, JPort, HyperGraph, RegionPort, Region, RegionPortAssignment, Connection, SolvedRoute, Candidate as Candidate$3, HyperGraphSolver, HyperGraphSectionOptimizer } from '@tscircuit/hypergraph';
|
|
11
11
|
import { ConnectivityMap as ConnectivityMap$1 } from 'connectivity-map';
|
|
12
12
|
import { HighDensityForceImproveSolver } from 'high-density-repair01/lib/HighDensityForceImproveSolver';
|
|
13
|
-
import { GlobalDrcForceImproveSolver, GlobalDrcBranchPortfolioSolver } from 'high-density-repair03/lib';
|
|
13
|
+
import { GlobalDrcForceImproveSolver, GlobalDrcBranchPortfolioSolverParams, HighDensityRoute as HighDensityRoute$2, GlobalDrcBranchPortfolioSolver } from 'high-density-repair03/lib';
|
|
14
14
|
export { DrcError, DrcEvaluator, DrcSnapshot, GlobalDrcBranchPortfolioSolver, GlobalDrcBranchPortfolioSolverParams, GlobalDrcForceImproveSolver, GlobalDrcForceImproveSolverParams, HighDensityRoute } from 'high-density-repair03/lib';
|
|
15
15
|
import { DatasetSample, HighDensityRepairSolver } from 'high-density-repair02';
|
|
16
16
|
import { LayerMergeMode, ConvexRegionsComputeResult, SerializedPolyHyperGraph } from 'pcb-poly-hyper-graph';
|
|
17
17
|
import { PolyHyperGraphLoadResult, PolyHyperGraphSolver } from 'tiny-hypergraph-poly/lib/index';
|
|
18
18
|
import { PostProcessingSolver } from '@tscircuit/length-matching-solver';
|
|
19
19
|
import { PowerTraceExpanderOptions, PowerTraceExpanderSolver } from '@tscircuit/power-trace-expander';
|
|
20
|
+
import * as high_density_repair03_types_high_density_types from 'high-density-repair03/types/high-density-types';
|
|
20
21
|
import { HighDensitySolverB01 } from '@tscircuit/high-density-b01';
|
|
21
22
|
|
|
22
23
|
interface CacheProvider {
|
|
@@ -255,6 +256,7 @@ interface SimplifiedPcbTrace {
|
|
|
255
256
|
from_layer: string;
|
|
256
257
|
to_layer: string;
|
|
257
258
|
width: number;
|
|
259
|
+
circuitJsonMetadata?: CircuitJsonMetadata;
|
|
258
260
|
}>;
|
|
259
261
|
}
|
|
260
262
|
type SimplifiedPcbTraces = Array<SimplifiedPcbTrace>;
|
|
@@ -362,6 +364,7 @@ type HighDensityIntraNodeRoute$1 = {
|
|
|
362
364
|
pcb_port_id?: string;
|
|
363
365
|
insideJumperPad?: boolean;
|
|
364
366
|
toNextSegmentType?: "through_obstacle";
|
|
367
|
+
toNextSegmentCircuitJsonMetadata?: CircuitJsonMetadata;
|
|
365
368
|
}>;
|
|
366
369
|
vias: Array<{
|
|
367
370
|
x: number;
|
|
@@ -4784,13 +4787,6 @@ type MultiTargetNecessaryCrampedPortPointSolverInput = {
|
|
|
4784
4787
|
sharedEdgeSegments: SharedEdgeSegment[];
|
|
4785
4788
|
capacityMeshNodes: CapacityMeshNode[];
|
|
4786
4789
|
simpleRouteJson: SimpleRouteJson;
|
|
4787
|
-
/**
|
|
4788
|
-
* The number of cramped port points to keep.
|
|
4789
|
-
* This is useful when there are multiple connections.
|
|
4790
|
-
* Setting this to more than one (e.g., 2) ensures that at least two connections can be routed.
|
|
4791
|
-
* Higher values may be beneficial, but can lead to more DRC errors.
|
|
4792
|
-
*/
|
|
4793
|
-
numberOfCrampedPortPointsToKeep: number;
|
|
4794
4790
|
};
|
|
4795
4791
|
/**
|
|
4796
4792
|
* This solver filters out cramped port points that are not necessary.
|
|
@@ -4816,6 +4812,8 @@ declare class MultiTargetNecessaryCrampedPortPointSolver extends BaseSolver$1 {
|
|
|
4816
4812
|
_setup(): void;
|
|
4817
4813
|
_step(): void;
|
|
4818
4814
|
getOutput(): SharedEdgeSegment[];
|
|
4815
|
+
private getCandidateExitCapacity;
|
|
4816
|
+
private keepCandidatePath;
|
|
4819
4817
|
private isMultilayerEscapePort;
|
|
4820
4818
|
visualize(): GraphicsObject;
|
|
4821
4819
|
}
|
|
@@ -5313,7 +5311,6 @@ declare class MultipleHighDensityRouteStitchSolver3 extends BaseSolver {
|
|
|
5313
5311
|
type TraceColorMode = "layer" | "net";
|
|
5314
5312
|
type ConvertSrjToGraphicsObjectOptions = {
|
|
5315
5313
|
traceColorMode?: TraceColorMode;
|
|
5316
|
-
includeBoardOutline?: boolean;
|
|
5317
5314
|
};
|
|
5318
5315
|
declare const convertSrjToGraphicsObject: (srj: SimpleRouteJson, options?: ConvertSrjToGraphicsObjectOptions) => {
|
|
5319
5316
|
rects: Rect[];
|
|
@@ -5910,6 +5907,35 @@ declare class MergedComponentTopologyView extends BaseSolver {
|
|
|
5910
5907
|
preview(): GraphicsObject;
|
|
5911
5908
|
}
|
|
5912
5909
|
|
|
5910
|
+
/**
|
|
5911
|
+
* Tries Pipeline7's inexpensive two-layer repair portfolio first, then accepts
|
|
5912
|
+
* it only when the same DRC evaluator used for candidate scoring reports a
|
|
5913
|
+
* clean result. Failed probes are discarded before the original full
|
|
5914
|
+
* portfolio runs, so routing behavior is selected by the result rather than
|
|
5915
|
+
* board-size thresholds.
|
|
5916
|
+
*/
|
|
5917
|
+
declare class Pipeline7AdaptiveDrcBranchPortfolioSolver extends BaseSolver$1 {
|
|
5918
|
+
readonly params: GlobalDrcBranchPortfolioSolverParams;
|
|
5919
|
+
readonly inputHdRoutes: HighDensityRoute$2[];
|
|
5920
|
+
outputHdRoutes: HighDensityRoute$2[];
|
|
5921
|
+
private phase;
|
|
5922
|
+
private fastProbeSolver?;
|
|
5923
|
+
private fallbackSolver?;
|
|
5924
|
+
private selectedSolver?;
|
|
5925
|
+
private fastProbeDrcIssueCount?;
|
|
5926
|
+
private fastProbeAttempted;
|
|
5927
|
+
constructor(params: GlobalDrcBranchPortfolioSolverParams);
|
|
5928
|
+
getConstructorParams(): [GlobalDrcBranchPortfolioSolverParams];
|
|
5929
|
+
private startFastProbe;
|
|
5930
|
+
private startFallback;
|
|
5931
|
+
private evaluateFastProbeDrcIssueCount;
|
|
5932
|
+
private finish;
|
|
5933
|
+
_step(): void;
|
|
5934
|
+
getOutput(): high_density_repair03_types_high_density_types.HighDensityIntraNodeRoute[];
|
|
5935
|
+
visualize(): GraphicsObject;
|
|
5936
|
+
preview(): GraphicsObject;
|
|
5937
|
+
}
|
|
5938
|
+
|
|
5913
5939
|
declare class PowerTraceExpansionSolver extends BaseSolver {
|
|
5914
5940
|
readonly inputSrj: SimpleRouteJson;
|
|
5915
5941
|
readonly options: PowerTraceExpanderOptions;
|
|
@@ -5961,7 +5987,7 @@ declare class AutoroutingPipelineSolver7_MultiGraph extends BaseSolver {
|
|
|
5961
5987
|
highDensityRepairSolver?: Pipeline4HighDensityRepairSolver;
|
|
5962
5988
|
highDensityStitchSolver?: MultipleHighDensityRouteStitchSolver3;
|
|
5963
5989
|
globalDrcForceImproveSolver?: GlobalDrcForceImproveSolver;
|
|
5964
|
-
exactGeometryDrcForceImproveSolver?:
|
|
5990
|
+
exactGeometryDrcForceImproveSolver?: Pipeline7AdaptiveDrcBranchPortfolioSolver;
|
|
5965
5991
|
singleLayerNodeMerger?: SingleLayerNodeMergerSolver;
|
|
5966
5992
|
strawSolver?: StrawSolver;
|
|
5967
5993
|
deadEndSolver?: DeadEndSolver;
|
|
@@ -5997,7 +6023,7 @@ declare class AutoroutingPipelineSolver7_MultiGraph extends BaseSolver {
|
|
|
5997
6023
|
sharedEdgeSegmentsWithNecessaryCrampedPortPoints?: SharedEdgeSegment[];
|
|
5998
6024
|
highDensityNodePortPoints?: NodeWithPortPoints[];
|
|
5999
6025
|
cacheProvider: CacheProvider | null;
|
|
6000
|
-
pipelineDef: (PipelineStep$3<typeof PreprocessSimpleRouteJsonSolver$1> | PipelineStep$3<typeof ComponentDetectionSolver> | PipelineStep$3<typeof EscapeViaLocationSolver> | PipelineStep$3<typeof NetToPointPairsSolver2_OffBoardConnection> | PipelineStep$3<typeof MultiGraphTopologyPlannerSolver> | PipelineStep$3<typeof TopologyMergingSolver> | PipelineStep$3<typeof NodeDimensionSubdivisionSolver> | PipelineStep$3<typeof CapacityMeshEdgeSolver2_NodeTreeOptimization> | PipelineStep$3<typeof AvailableSegmentPointSolver> | PipelineStep$3<typeof MultiTargetNecessaryCrampedPortPointSolver> | PipelineStep$3<typeof TinyHypergraphPortPointPathingSolver> | PipelineStep$3<typeof UniformPortDistributionSolver> | PipelineStep$3<typeof HighDensitySolver> | PipelineStep$3<typeof HighDensityForceImproveSolver> | PipelineStep$3<typeof Pipeline4HighDensityRepairSolver> | PipelineStep$3<typeof MultipleHighDensityRouteStitchSolver3> | PipelineStep$3<typeof TraceSimplificationSolver> | PipelineStep$3<typeof TraceWidthSolver> | PipelineStep$3<typeof GlobalDrcForceImproveSolver> | PipelineStep$3<typeof
|
|
6026
|
+
pipelineDef: (PipelineStep$3<typeof PreprocessSimpleRouteJsonSolver$1> | PipelineStep$3<typeof ComponentDetectionSolver> | PipelineStep$3<typeof EscapeViaLocationSolver> | PipelineStep$3<typeof NetToPointPairsSolver2_OffBoardConnection> | PipelineStep$3<typeof MultiGraphTopologyPlannerSolver> | PipelineStep$3<typeof TopologyMergingSolver> | PipelineStep$3<typeof NodeDimensionSubdivisionSolver> | PipelineStep$3<typeof CapacityMeshEdgeSolver2_NodeTreeOptimization> | PipelineStep$3<typeof AvailableSegmentPointSolver> | PipelineStep$3<typeof MultiTargetNecessaryCrampedPortPointSolver> | PipelineStep$3<typeof TinyHypergraphPortPointPathingSolver> | PipelineStep$3<typeof UniformPortDistributionSolver> | PipelineStep$3<typeof HighDensitySolver> | PipelineStep$3<typeof HighDensityForceImproveSolver> | PipelineStep$3<typeof Pipeline4HighDensityRepairSolver> | PipelineStep$3<typeof MultipleHighDensityRouteStitchSolver3> | PipelineStep$3<typeof TraceSimplificationSolver> | PipelineStep$3<typeof TraceWidthSolver> | PipelineStep$3<typeof GlobalDrcForceImproveSolver> | PipelineStep$3<typeof Pipeline7AdaptiveDrcBranchPortfolioSolver> | PipelineStep$3<typeof PostProcessingSolver> | PipelineStep$3<typeof PowerTraceExpansionSolver>)[];
|
|
6001
6027
|
constructor(srj: SimpleRouteJson, opts?: CapacityMeshSolverOptions$3);
|
|
6002
6028
|
private setSimpleRouteJson;
|
|
6003
6029
|
getConstructorParams(): readonly [SimpleRouteJson, CapacityMeshSolverOptions$3];
|
|
@@ -6125,46 +6151,6 @@ declare class AutoroutingPipelineSolver8 extends BaseSolver {
|
|
|
6125
6151
|
getOutputSimpleRouteJson(): SimpleRouteJson;
|
|
6126
6152
|
}
|
|
6127
6153
|
|
|
6128
|
-
type NativePipelineOptions = {
|
|
6129
|
-
effort?: number;
|
|
6130
|
-
[key: string]: unknown;
|
|
6131
|
-
};
|
|
6132
|
-
declare class RustNativePipelineStage {
|
|
6133
|
-
}
|
|
6134
|
-
/**
|
|
6135
|
-
* Full native replacement for Pipeline 7.
|
|
6136
|
-
*
|
|
6137
|
-
* The wrapper intentionally owns no routing algorithm. It presents the
|
|
6138
|
-
* familiar BaseSolver/pipeline surface to callers and delegates one complete
|
|
6139
|
-
* typed pipeline invocation to Rust, so the high-density router and every
|
|
6140
|
-
* surrounding stage share one board model and one process boundary.
|
|
6141
|
-
*/
|
|
6142
|
-
declare class AutoroutingPipelineSolverRust extends BaseSolver {
|
|
6143
|
-
MAX_ITERATIONS: number;
|
|
6144
|
-
readonly originalSrj: SimpleRouteJson;
|
|
6145
|
-
readonly opts: NativePipelineOptions;
|
|
6146
|
-
readonly pipelineDef: {
|
|
6147
|
-
solverName: "netToPointPairsSolver" | "edgeSolver" | "highDensityRouteSolver" | "highDensityStitchSolver" | "traceSimplificationSolver" | "availableSegmentPointSolver" | "portPointPathingSolver" | "uniformPortDistributionSolver" | "traceWidthSolver" | "necessaryCrampedPortPointSolver" | "preprocessSimpleRouteJsonSolver" | "escapeViaLocationSolver" | "nodeDimensionSubdivisionSolver" | "highDensityForceImproveSolver" | "highDensityRepairSolver" | "globalDrcForceImproveSolver" | "topologyPlanningSolver" | "topologyMergingSolver" | "exactGeometryDrcForceImproveSolver" | "lengthMatchingPostProcessingSolver" | "powerTraceExpansionSolver" | "componentDetectionSolver";
|
|
6148
|
-
solverClass: typeof RustNativePipelineStage;
|
|
6149
|
-
}[];
|
|
6150
|
-
currentPipelineStepIndex: number;
|
|
6151
|
-
timeSpentOnPhase: Record<string, number>;
|
|
6152
|
-
srjWithPointPairs?: SimpleRouteJson;
|
|
6153
|
-
private outputSrj?;
|
|
6154
|
-
constructor(srj: SimpleRouteJson, opts?: NativePipelineOptions);
|
|
6155
|
-
_step(): void;
|
|
6156
|
-
getConstructorParams(): readonly [SimpleRouteJson, NativePipelineOptions];
|
|
6157
|
-
getSolverName(): string;
|
|
6158
|
-
getOutputSimplifiedPcbTraces(): SimplifiedPcbTraces;
|
|
6159
|
-
getOutputSimpleRouteJson(): SimpleRouteJson;
|
|
6160
|
-
visualize(): graphics_debug.GraphicsObject | {
|
|
6161
|
-
rects: graphics_debug.Rect[];
|
|
6162
|
-
circles: graphics_debug.Circle[];
|
|
6163
|
-
lines: graphics_debug.Line[];
|
|
6164
|
-
points: graphics_debug.Point[];
|
|
6165
|
-
};
|
|
6166
|
-
}
|
|
6167
|
-
|
|
6168
6154
|
type PreloadedHighDensityRoute = HighDensityRoute$1 & {
|
|
6169
6155
|
preloadedTraceIndex: number;
|
|
6170
6156
|
preloadedRouteIndex: number;
|
|
@@ -7534,4 +7520,4 @@ declare const HyperSingleIntraNodeSolver: typeof PortfolioSingleIntraNodeSolver;
|
|
|
7534
7520
|
*/
|
|
7535
7521
|
type HyperSingleIntraNodeSolver = InstanceType<typeof PortfolioSingleIntraNodeSolver>;
|
|
7536
7522
|
|
|
7537
|
-
export { AssignableAutoroutingPipeline1Solver, AssignableAutoroutingPipeline2, AssignableAutoroutingPipeline3, AttachProjectedRectsSolver, AutoroutingPipeline1_OriginalUnravel, AutoroutingPipelineSolver7_MultiGraph as AutoroutingPipelineSolver, AutoroutingPipelineSolver2_PortPointPathing, AutoroutingPipelineSolver3_HgPortPointPathing, AutoroutingPipelineSolver4_TinyHypergraph as AutoroutingPipelineSolver4, AutoroutingPipelineSolver4_TinyHypergraph, AutoroutingPipelineSolver5_HdCache as AutoroutingPipelineSolver5, AutoroutingPipelineSolver5_HdCache, AutoroutingPipelineSolver6_PolyHypergraph as AutoroutingPipelineSolver6, AutoroutingPipelineSolver6_PolyHypergraph, AutoroutingPipelineSolver7_MultiGraph, AutoroutingPipelineSolver8, AutoroutingPipelineSolver9_PreloadedTraceGraph, type AutoroutingPipelineSolverOptions,
|
|
7523
|
+
export { AssignableAutoroutingPipeline1Solver, AssignableAutoroutingPipeline2, AssignableAutoroutingPipeline3, AttachProjectedRectsSolver, AutoroutingPipeline1_OriginalUnravel, AutoroutingPipelineSolver7_MultiGraph as AutoroutingPipelineSolver, AutoroutingPipelineSolver2_PortPointPathing, AutoroutingPipelineSolver3_HgPortPointPathing, AutoroutingPipelineSolver4_TinyHypergraph as AutoroutingPipelineSolver4, AutoroutingPipelineSolver4_TinyHypergraph, AutoroutingPipelineSolver5_HdCache as AutoroutingPipelineSolver5, AutoroutingPipelineSolver5_HdCache, AutoroutingPipelineSolver6_PolyHypergraph as AutoroutingPipelineSolver6, AutoroutingPipelineSolver6_PolyHypergraph, AutoroutingPipelineSolver7_MultiGraph, AutoroutingPipelineSolver8, AutoroutingPipelineSolver9_PreloadedTraceGraph, type AutoroutingPipelineSolverOptions, type BusId, type CachableSolver, type CacheProvider, CapacityMeshSolver, type ConnectionPoint$1 as ConnectionPoint, type ConvertSrjToGraphicsObjectOptions, CurvyIntraNodeSolver, type DifferentialPair, GrowShrinkHighDensityIntraNodeSolver, type HighDensityIntraNodeRouteWithJumpers, JumperHighDensitySolver as HighDensitySolver, HyperSingleIntraNodeSolver, InMemoryCache, IntraNodeSolverWithJumpers, type Jumper, LocalStorageCache, type MultiLayerConnectionPoint, type Obstacle, PolyHighDensitySolver, PolySingleIntraNodeSolver as PolyIntraNodeSolver, PolySingleIntraNodeSolver, PortfolioSingleIntraNodeSolver, ProjectHighDensityToPolygonSolver, type RerouteRectRegion, type SimpleRouteBus, type SimpleRouteConnection, type SimpleRouteJson, type SimplifiedPcbTrace, type SimplifiedPcbTraces, SingleHighDensityRouteWithJumpersSolver, type SingleLayerConnectionPoint, type TerminalViaHint, type TraceColorMode, calculateOptimalCapacityDepth, convertSrjToGraphicsObject, getGlobalInMemoryCache, getGlobalLocalStorageCache, getRerouteSimpleRouteJson, getTunedTotalCapacity1, reconnectReroutedSimpleRouteJsonRegion, setupGlobalCaches };
|