@tscircuit/capacity-autorouter 0.0.155 → 0.0.156

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 CHANGED
@@ -1990,6 +1990,52 @@ declare class UselessViaRemovalSolver extends BaseSolver {
1990
1990
  visualize(): GraphicsObject;
1991
1991
  }
1992
1992
 
1993
+ interface SameNetViaMergerSolverInput {
1994
+ inputHdRoutes: HighDensityRoute$1[];
1995
+ obstacles: Obstacle[];
1996
+ colorMap: Record<string, string>;
1997
+ layerCount: number;
1998
+ connMap?: ConnectivityMap;
1999
+ outline?: Array<{
2000
+ x: number;
2001
+ y: number;
2002
+ }>;
2003
+ }
2004
+ type Via = {
2005
+ x: number;
2006
+ y: number;
2007
+ diameter: number;
2008
+ net: string;
2009
+ routeIndex: number;
2010
+ layers: number[];
2011
+ };
2012
+ declare class SameNetViaMergerSolver extends BaseSolver {
2013
+ private input;
2014
+ inputHdRoutes: HighDensityRoute$1[];
2015
+ mergedViaHdRoutes: HighDensityRoute$1[];
2016
+ unprocessedRoutes: HighDensityRoute$1[];
2017
+ vias: Via[];
2018
+ offendingVias: [Via, Via][];
2019
+ currentViaRoutes: HighDensityIntraNodeRoute$1[];
2020
+ connMap?: ConnectivityMap;
2021
+ colorMap: Record<string, string>;
2022
+ outline?: Array<{
2023
+ x: number;
2024
+ y: number;
2025
+ }>;
2026
+ obstacles: Obstacle[];
2027
+ viasByNet: Map<string, Via[]>;
2028
+ obstacleSHI: ObstacleSpatialHashIndex | null;
2029
+ hdRouteSHI: HighDensityRouteSpatialIndex | null;
2030
+ constructor(input: SameNetViaMergerSolverInput);
2031
+ private rebuildVias;
2032
+ private findNextOffendingPair;
2033
+ private handleOffendingPair;
2034
+ _step(): void;
2035
+ getMergedViaHdRoutes(): HighDensityRoute$1[] | null;
2036
+ visualize(): GraphicsObject;
2037
+ }
2038
+
1993
2039
  /**
1994
2040
  * A Disjoint Set Union (DSU) or Union-Find data structure.
1995
2041
  * It tracks a collection of disjoint sets and can efficiently merge them.
@@ -2076,6 +2122,7 @@ declare class AutoroutingPipelineSolver extends BaseSolver {
2076
2122
  deadEndSolver?: DeadEndSolver;
2077
2123
  uselessViaRemovalSolver1?: UselessViaRemovalSolver;
2078
2124
  uselessViaRemovalSolver2?: UselessViaRemovalSolver;
2125
+ sameNetViaMerger?: SameNetViaMergerSolver;
2079
2126
  multiSimplifiedPathSolver1?: MultiSimplifiedPathSolver;
2080
2127
  multiSimplifiedPathSolver2?: MultiSimplifiedPathSolver;
2081
2128
  viaDiameter: number;
@@ -2089,7 +2136,7 @@ declare class AutoroutingPipelineSolver extends BaseSolver {
2089
2136
  capacityNodes: CapacityMeshNode[] | null;
2090
2137
  capacityEdges: CapacityMeshEdge[] | null;
2091
2138
  cacheProvider: CacheProvider | null;
2092
- pipelineDef: (PipelineStep$1<typeof NetToPointPairsSolver2_OffBoardConnection> | PipelineStep$1<typeof CapacityMeshNodeSolver2_NodeUnderObstacle> | PipelineStep$1<typeof SingleLayerNodeMergerSolver> | PipelineStep$1<typeof StrawSolver> | PipelineStep$1<typeof CapacityMeshEdgeSolver2_NodeTreeOptimization> | PipelineStep$1<typeof DeadEndSolver> | PipelineStep$1<typeof CapacityPathingGreedySolver> | PipelineStep$1<typeof CapacityPathingMultiSectionSolver> | PipelineStep$1<typeof CapacityEdgeToPortSegmentSolver> | PipelineStep$1<typeof CapacitySegmentToPointSolver> | PipelineStep$1<typeof UnravelMultiSectionSolver> | PipelineStep$1<typeof HighDensitySolver> | PipelineStep$1<typeof MultipleHighDensityRouteStitchSolver> | PipelineStep$1<typeof UselessViaRemovalSolver> | PipelineStep$1<typeof MultiSimplifiedPathSolver>)[];
2139
+ pipelineDef: (PipelineStep$1<typeof NetToPointPairsSolver2_OffBoardConnection> | PipelineStep$1<typeof CapacityMeshNodeSolver2_NodeUnderObstacle> | PipelineStep$1<typeof SingleLayerNodeMergerSolver> | PipelineStep$1<typeof StrawSolver> | PipelineStep$1<typeof CapacityMeshEdgeSolver2_NodeTreeOptimization> | PipelineStep$1<typeof DeadEndSolver> | PipelineStep$1<typeof CapacityPathingGreedySolver> | PipelineStep$1<typeof CapacityPathingMultiSectionSolver> | PipelineStep$1<typeof CapacityEdgeToPortSegmentSolver> | PipelineStep$1<typeof CapacitySegmentToPointSolver> | PipelineStep$1<typeof UnravelMultiSectionSolver> | PipelineStep$1<typeof HighDensitySolver> | PipelineStep$1<typeof MultipleHighDensityRouteStitchSolver> | PipelineStep$1<typeof UselessViaRemovalSolver> | PipelineStep$1<typeof MultiSimplifiedPathSolver> | PipelineStep$1<typeof SameNetViaMergerSolver>)[];
2093
2140
  constructor(srj: SimpleRouteJson, opts?: CapacityMeshSolverOptions$1);
2094
2141
  currentPipelineStepIndex: number;
2095
2142
  _step(): void;