@tscircuit/capacity-autorouter 0.0.741 → 0.0.743

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
@@ -15,8 +15,8 @@ export { DrcError, DrcEvaluator, DrcSnapshot, GlobalDrcBranchPortfolioSolver, Gl
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
- import { PostProcessingSolver } from '@tscircuit/length-matching-solver';
19
18
  import { PowerTraceExpanderOptions, PowerTraceExpanderSolver } from '@tscircuit/power-trace-expander';
19
+ import { PostProcessingSolverParams, LengthMatchingSolver, PostProcessingSolver, PostProcessingSolverOutput } from '@tscircuit/length-matching-solver';
20
20
 
21
21
  interface CacheProvider {
22
22
  isSyncCache: boolean;
@@ -5647,6 +5647,35 @@ declare class ComponentDetectionSolver extends BasePipelineSolver<ComponentDetec
5647
5647
  initialVisualize(): GraphicsObject | null;
5648
5648
  }
5649
5649
 
5650
+ interface TopologyMergingNodeGroup {
5651
+ groupId: string;
5652
+ nodes: CapacityMeshNode[];
5653
+ isComponent: boolean;
5654
+ }
5655
+ interface TopologyMergingSolverParams {
5656
+ nodeGroups: readonly TopologyMergingNodeGroup[];
5657
+ layerCount: number;
5658
+ }
5659
+
5660
+ declare class TopologyMergingSolver extends BaseSolver$1 {
5661
+ readonly inputProblem: TopologyMergingSolverParams;
5662
+ private readonly preparedNodes;
5663
+ private readonly preparedNodeBySourceKey;
5664
+ private readonly outputProvenance;
5665
+ private readonly xCoordinates;
5666
+ private readonly atomicRegions;
5667
+ private outputNodes;
5668
+ private currentXIndex;
5669
+ constructor(inputProblem: TopologyMergingSolverParams);
5670
+ getConstructorParams(): [TopologyMergingSolverParams];
5671
+ _step(): void;
5672
+ getOutput(): CapacityMeshNode[];
5673
+ computeProgress(): number;
5674
+ visualize(): GraphicsObject;
5675
+ private completePassthroughTopology;
5676
+ private processCurrentXSlab;
5677
+ }
5678
+
5650
5679
  /** Shared output collected from each component-specific topology generator. */
5651
5680
  interface TopologyGeneratorSolverOutput {
5652
5681
  routingRegions: CapacityMeshNode[];
@@ -5745,35 +5774,6 @@ declare class MultiGraphTopologyPlannerSolver extends BasePipelineSolver<MultiGr
5745
5774
  private filterGlobalRectDiffNodesFromVisualization;
5746
5775
  }
5747
5776
 
5748
- interface TopologyMergingNodeGroup {
5749
- groupId: string;
5750
- nodes: CapacityMeshNode[];
5751
- isComponent: boolean;
5752
- }
5753
- interface TopologyMergingSolverParams {
5754
- nodeGroups: readonly TopologyMergingNodeGroup[];
5755
- layerCount: number;
5756
- }
5757
-
5758
- declare class TopologyMergingSolver extends BaseSolver$1 {
5759
- readonly inputProblem: TopologyMergingSolverParams;
5760
- private readonly preparedNodes;
5761
- private readonly preparedNodeBySourceKey;
5762
- private readonly outputProvenance;
5763
- private readonly xCoordinates;
5764
- private readonly atomicRegions;
5765
- private outputNodes;
5766
- private currentXIndex;
5767
- constructor(inputProblem: TopologyMergingSolverParams);
5768
- getConstructorParams(): [TopologyMergingSolverParams];
5769
- _step(): void;
5770
- getOutput(): CapacityMeshNode[];
5771
- computeProgress(): number;
5772
- visualize(): GraphicsObject;
5773
- private completePassthroughTopology;
5774
- private processCurrentXSlab;
5775
- }
5776
-
5777
5777
  declare class MergedComponentTopologyView extends BaseSolver {
5778
5778
  private readonly topologyPlanningSolver;
5779
5779
  constructor(topologyPlanningSolver: MultiGraphTopologyPlannerSolver);
@@ -5796,6 +5796,23 @@ declare class PowerTraceExpansionSolver extends BaseSolver {
5796
5796
  visualize(): GraphicsObject;
5797
5797
  }
5798
5798
 
5799
+ /** Applies the post-processing algorithm implied by each pair's constraints. */
5800
+ declare class DifferentialPairPostProcessingSolver extends BaseSolver {
5801
+ readonly inputProblem: PostProcessingSolverParams;
5802
+ readonly lengthMatchingSolver?: LengthMatchingSolver;
5803
+ postProcessingSolver?: PostProcessingSolver;
5804
+ private readonly lengthOnlyPairs;
5805
+ private readonly coupledPairs;
5806
+ private phase;
5807
+ private outputHdRoutes?;
5808
+ constructor(inputProblem: PostProcessingSolverParams);
5809
+ getSolverName(): string;
5810
+ _step(): void;
5811
+ getConstructorParams(): [PostProcessingSolverParams];
5812
+ getOutput(): PostProcessingSolverOutput;
5813
+ visualize(): GraphicsObject;
5814
+ }
5815
+
5799
5816
  interface CapacityMeshSolverOptions$3 {
5800
5817
  capacityDepth?: number;
5801
5818
  targetMinCapacity?: number;
@@ -5838,7 +5855,7 @@ declare class AutoroutingPipelineSolver7_MultiGraph extends BaseSolver {
5838
5855
  strawSolver?: StrawSolver;
5839
5856
  deadEndSolver?: DeadEndSolver;
5840
5857
  traceSimplificationSolver?: TraceSimplificationSolver;
5841
- lengthMatchingPostProcessingSolver?: PostProcessingSolver;
5858
+ lengthMatchingPostProcessingSolver?: DifferentialPairPostProcessingSolver;
5842
5859
  powerTraceExpansionSolver?: PowerTraceExpansionSolver;
5843
5860
  availableSegmentPointSolver?: AvailableSegmentPointSolver;
5844
5861
  portPointPathingSolver?: TinyHypergraphPortPointPathingSolver;
@@ -5869,7 +5886,7 @@ declare class AutoroutingPipelineSolver7_MultiGraph extends BaseSolver {
5869
5886
  sharedEdgeSegmentsWithNecessaryCrampedPortPoints?: SharedEdgeSegment[];
5870
5887
  highDensityNodePortPoints?: NodeWithPortPoints[];
5871
5888
  cacheProvider: CacheProvider | null;
5872
- 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 GlobalDrcBranchPortfolioSolver> | PipelineStep$3<typeof PostProcessingSolver> | PipelineStep$3<typeof PowerTraceExpansionSolver>)[];
5889
+ 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 GlobalDrcBranchPortfolioSolver> | PipelineStep$3<typeof DifferentialPairPostProcessingSolver> | PipelineStep$3<typeof PowerTraceExpansionSolver>)[];
5873
5890
  constructor(srj: SimpleRouteJson, opts?: CapacityMeshSolverOptions$3);
5874
5891
  private setSimpleRouteJson;
5875
5892
  getConstructorParams(): readonly [SimpleRouteJson, CapacityMeshSolverOptions$3];