KiCad PCB EDA Suite
Loading...
Searching...
No Matches
PARALLEL_RUN Struct Reference

Struct to represent one segment where tracks run parallel, including information about absolute and relative length and phase. More...

#include <diff_phase_skew_tool.h>

Public Member Functions

double overlapFractionA () const
 Calculate the fraction of track A that overlaps track B.
 
double overlapFractionB () const
 Calculate the fraction of track B that overlaps track A.
 
std::pair< double, double > pathLengthDelta () const
 Calculates the {start, end} track length delta relative to the selected track.
 
std::pair< double, double > pathDelayDelta () const
 Calculates the {start, end} track delay delta relative to the selected track.
 

Public Attributes

VECTOR2I startA
 The starting coordinate of the run on track A.
 
VECTOR2I endA
 The ending coordinate of the run on track A.
 
VECTOR2I startB
 The starting coordinate of the run on track B.
 
VECTOR2I endB
 The ending coordinate of the run on track B.
 
size_t segA
 The index of the parallel segment on track A.
 
size_t segB
 The index of the parallel segment on track B.
 
double ta0
 Normalised values of the start (0) and end (1) coordinates on track A and B These are normalised to the range 0 = start, 1 = end.
 
double ta1
 
double tb0
 
double tb1
 
double startLenA
 Cumulative length of track A at the start of the parallel run.
 
double endLenA
 Cumulative length of track A at the end of the parallel run.
 
double startLenB
 Cumulative length of track B at the start of the parallel run.
 
double endLenB
 Cumulative length of track B at the end of the parallel run.
 
double startDelayA
 Cumulative delay of track A at the start of the parallel run.
 
double endDelayA
 Cumulative delay of track A at the start of the parallel run.
 
double startDelayB
 Cumulative delay of track A at the start of the parallel run.
 
double endDelayB
 Cumulative delay of track A at the start of the parallel run.
 

Detailed Description

Struct to represent one segment where tracks run parallel, including information about absolute and relative length and phase.

Definition at line 57 of file diff_phase_skew_tool.h.

Member Function Documentation

◆ overlapFractionA()

double PARALLEL_RUN::overlapFractionA ( ) const
inline

Calculate the fraction of track A that overlaps track B.

Definition at line 106 of file diff_phase_skew_tool.h.

References std::abs(), ta0, and ta1.

◆ overlapFractionB()

double PARALLEL_RUN::overlapFractionB ( ) const
inline

Calculate the fraction of track B that overlaps track A.

Definition at line 109 of file diff_phase_skew_tool.h.

References std::abs(), tb0, and tb1.

◆ pathDelayDelta()

std::pair< double, double > PARALLEL_RUN::pathDelayDelta ( ) const
inline

Calculates the {start, end} track delay delta relative to the selected track.

The delta relative to the couple track is the negation of these values.

Definition at line 119 of file diff_phase_skew_tool.h.

References endDelayA, endDelayB, startDelayA, and startDelayB.

◆ pathLengthDelta()

std::pair< double, double > PARALLEL_RUN::pathLengthDelta ( ) const
inline

Calculates the {start, end} track length delta relative to the selected track.

The delta relative to the couple track is the negation of these values.

Definition at line 114 of file diff_phase_skew_tool.h.

References endLenA, endLenB, startLenA, and startLenB.

Member Data Documentation

◆ endA

VECTOR2I PARALLEL_RUN::endA

The ending coordinate of the run on track A.

Definition at line 63 of file diff_phase_skew_tool.h.

Referenced by DIFF_PHASE_SKEW_TOOL::findParallelRunsImpl().

◆ endB

VECTOR2I PARALLEL_RUN::endB

The ending coordinate of the run on track B.

Definition at line 69 of file diff_phase_skew_tool.h.

Referenced by DIFF_PHASE_SKEW_TOOL::findParallelRunsImpl().

◆ endDelayA

double PARALLEL_RUN::endDelayA

Cumulative delay of track A at the start of the parallel run.

Definition at line 97 of file diff_phase_skew_tool.h.

Referenced by DIFF_PHASE_SKEW_TOOL::findParallelRunsImpl(), and pathDelayDelta().

◆ endDelayB

double PARALLEL_RUN::endDelayB

Cumulative delay of track A at the start of the parallel run.

Definition at line 103 of file diff_phase_skew_tool.h.

Referenced by DIFF_PHASE_SKEW_TOOL::findParallelRunsImpl(), and pathDelayDelta().

◆ endLenA

double PARALLEL_RUN::endLenA

Cumulative length of track A at the end of the parallel run.

Definition at line 85 of file diff_phase_skew_tool.h.

Referenced by DIFF_PHASE_SKEW_TOOL::findParallelRunsImpl(), and pathLengthDelta().

◆ endLenB

double PARALLEL_RUN::endLenB

Cumulative length of track B at the end of the parallel run.

Definition at line 91 of file diff_phase_skew_tool.h.

Referenced by DIFF_PHASE_SKEW_TOOL::findParallelRunsImpl(), and pathLengthDelta().

◆ segA

size_t PARALLEL_RUN::segA

The index of the parallel segment on track A.

Definition at line 72 of file diff_phase_skew_tool.h.

Referenced by DIFF_PHASE_SKEW_TOOL::findParallelRunsImpl().

◆ segB

size_t PARALLEL_RUN::segB

The index of the parallel segment on track B.

Definition at line 75 of file diff_phase_skew_tool.h.

Referenced by DIFF_PHASE_SKEW_TOOL::findParallelRunsImpl().

◆ startA

VECTOR2I PARALLEL_RUN::startA

The starting coordinate of the run on track A.

Definition at line 60 of file diff_phase_skew_tool.h.

Referenced by DIFF_PHASE_SKEW_TOOL::findParallelRunsImpl().

◆ startB

VECTOR2I PARALLEL_RUN::startB

The starting coordinate of the run on track B.

Definition at line 66 of file diff_phase_skew_tool.h.

Referenced by DIFF_PHASE_SKEW_TOOL::findParallelRunsImpl().

◆ startDelayA

double PARALLEL_RUN::startDelayA

Cumulative delay of track A at the start of the parallel run.

Definition at line 94 of file diff_phase_skew_tool.h.

Referenced by DIFF_PHASE_SKEW_TOOL::findParallelRunsImpl(), and pathDelayDelta().

◆ startDelayB

double PARALLEL_RUN::startDelayB

Cumulative delay of track A at the start of the parallel run.

Definition at line 100 of file diff_phase_skew_tool.h.

Referenced by DIFF_PHASE_SKEW_TOOL::findParallelRunsImpl(), and pathDelayDelta().

◆ startLenA

double PARALLEL_RUN::startLenA

Cumulative length of track A at the start of the parallel run.

Definition at line 82 of file diff_phase_skew_tool.h.

Referenced by DIFF_PHASE_SKEW_TOOL::findParallelRuns(), DIFF_PHASE_SKEW_TOOL::findParallelRunsImpl(), and pathLengthDelta().

◆ startLenB

double PARALLEL_RUN::startLenB

Cumulative length of track B at the start of the parallel run.

Definition at line 88 of file diff_phase_skew_tool.h.

Referenced by DIFF_PHASE_SKEW_TOOL::findParallelRuns(), DIFF_PHASE_SKEW_TOOL::findParallelRunsImpl(), and pathLengthDelta().

◆ ta0

double PARALLEL_RUN::ta0

Normalised values of the start (0) and end (1) coordinates on track A and B These are normalised to the range 0 = start, 1 = end.

Definition at line 79 of file diff_phase_skew_tool.h.

Referenced by DIFF_PHASE_SKEW_TOOL::findParallelRunsImpl(), and overlapFractionA().

◆ ta1

double PARALLEL_RUN::ta1

◆ tb0

double PARALLEL_RUN::tb0

◆ tb1

double PARALLEL_RUN::tb1

The documentation for this struct was generated from the following file: