![]() |
KiCad PCB EDA Suite
|
Public Member Functions | |
DRC_TEST_PROVIDER_DIFF_PAIR_COUPLING () | |
virtual | ~DRC_TEST_PROVIDER_DIFF_PAIR_COUPLING () |
virtual bool | Run () override |
Run this provider against the given PCB with configured options (if any). More... | |
virtual const wxString | GetName () const override |
virtual const wxString | GetDescription () const override |
virtual int | GetNumPhases () const override |
virtual std::set< DRC_CONSTRAINT_T > | GetConstraintTypes () const override |
void | SetDRCEngine (DRC_ENGINE *engine) |
virtual bool | IsRuleDriven () const |
bool | IsEnabled () const |
void | Enable (bool aEnable) |
Protected Member Functions | |
int | forEachGeometryItem (const std::vector< KICAD_T > &aTypes, LSET aLayers, const std::function< bool(BOARD_ITEM *)> &aFunc) |
virtual void | reportAux (wxString fmt,...) |
virtual void | reportViolation (std::shared_ptr< DRC_ITEM > &item, const wxPoint &aMarkerPos) |
virtual bool | reportProgress (int aCount, int aSize, int aDelta) |
virtual bool | reportPhase (const wxString &aStageName) |
virtual void | reportRuleStatistics () |
virtual void | accountCheck (const DRC_RULE *ruleToTest) |
virtual void | accountCheck (const DRC_CONSTRAINT &constraintToTest) |
bool | isInvisibleText (const BOARD_ITEM *aItem) const |
EDA_UNITS | userUnits () const |
Protected Attributes | |
DRC_ENGINE * | m_drcEngine |
std::unordered_map< const DRC_RULE *, int > | m_stats |
bool | m_isRuleDriven = true |
bool | m_enabled = true |
wxString | m_msg |
Static Protected Attributes | |
static std::vector< KICAD_T > | s_allBasicItems |
static std::vector< KICAD_T > | s_allBasicItemsButZones |
Private Attributes | |
BOARD * | m_board |
Definition at line 53 of file drc_test_provider_diff_pair_coupling.cpp.
|
inline |
Definition at line 56 of file drc_test_provider_diff_pair_coupling.cpp.
|
inlinevirtual |
Definition at line 61 of file drc_test_provider_diff_pair_coupling.cpp.
|
protectedvirtualinherited |
Definition at line 103 of file drc_test_provider.cpp.
References DRC_TEST_PROVIDER::m_stats.
Referenced by DRC_TEST_PROVIDER::accountCheck(), and DRC_TEST_PROVIDER::reportViolation().
|
protectedvirtualinherited |
Definition at line 114 of file drc_test_provider.cpp.
References DRC_TEST_PROVIDER::accountCheck(), and DRC_CONSTRAINT::GetParentRule().
|
inlineinherited |
|
protectedinherited |
Definition at line 139 of file drc_test_provider.cpp.
References BaseType(), BOARD::Drawings(), BOARD::Footprints(), DRC_ENGINE::GetBoard(), DRC_TEST_PROVIDER::m_drcEngine, MAX_STRUCT_TYPE_ID, pad, PCB_ARC_T, PCB_DIMENSION_T, PCB_FOOTPRINT_T, PCB_FP_SHAPE_T, PCB_FP_TEXT_T, PCB_FP_ZONE_T, PCB_GROUP_T, PCB_PAD_T, PCB_SHAPE_T, PCB_TARGET_T, PCB_TEXT_T, PCB_TRACE_T, PCB_VIA_T, PCB_ZONE_T, DRC_TEST_PROVIDER::s_allBasicItems, DRC_TEST_PROVIDER::s_allBasicItemsButZones, BOARD::Tracks(), and BOARD::Zones().
Referenced by DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_TEST_PROVIDER_SILK_TO_MASK::Run(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::Run(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), Run(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::Run(), DRC_TEST_PROVIDER_MATCHED_LENGTH::runInternal(), DRC_TEST_PROVIDER_MISC::testDisabledLayers(), and DRC_TEST_PROVIDER_MISC::testTextVars().
|
overridevirtual |
Implements DRC_TEST_PROVIDER.
Definition at line 532 of file drc_test_provider_diff_pair_coupling.cpp.
References DIFF_PAIR_GAP_CONSTRAINT, and DIFF_PAIR_MAX_UNCOUPLED_CONSTRAINT.
|
inlineoverridevirtual |
Reimplemented from DRC_TEST_PROVIDER.
Definition at line 72 of file drc_test_provider_diff_pair_coupling.cpp.
|
inlineoverridevirtual |
Reimplemented from DRC_TEST_PROVIDER.
Definition at line 67 of file drc_test_provider_diff_pair_coupling.cpp.
|
inlineoverridevirtual |
Implements DRC_TEST_PROVIDER.
Definition at line 77 of file drc_test_provider_diff_pair_coupling.cpp.
|
inlineinherited |
|
protectedinherited |
Definition at line 327 of file drc_test_provider.cpp.
References text.
Referenced by DRC_TEST_PROVIDER_SILK_TO_MASK::Run(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), and DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run().
|
inlinevirtualinherited |
|
protectedvirtualinherited |
Definition at line 86 of file drc_test_provider.cpp.
References DRC_TEST_PROVIDER::m_drcEngine, and DRC_ENGINE::ReportAux().
Referenced by DRC_TEST_PROVIDER::reportPhase(), DRC_TEST_PROVIDER_VIA_DIAMETER::Run(), DRC_TEST_PROVIDER_TRACK_WIDTH::Run(), DRC_TEST_PROVIDER_ANNULAR_WIDTH::Run(), DRC_TEST_PROVIDER_SILK_TO_MASK::Run(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::Run(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::Run(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), DRC_TEST_PROVIDER_LVS::Run(), Run(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::Run(), DRC_TEST_PROVIDER_MATCHED_LENGTH::runInternal(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testFootprintCourtyardDefinitions(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadClearances(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackClearances().
|
protectedvirtualinherited |
Definition at line 79 of file drc_test_provider.cpp.
References DRC_TEST_PROVIDER::m_drcEngine, DRC_TEST_PROVIDER::reportAux(), and DRC_ENGINE::ReportPhase().
Referenced by DRC_TEST_PROVIDER_VIA_DIAMETER::Run(), DRC_TEST_PROVIDER_TRACK_WIDTH::Run(), DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_TEST_PROVIDER_HOLE_SIZE::Run(), DRC_TEST_PROVIDER_ANNULAR_WIDTH::Run(), DRC_TEST_PROVIDER_CONNECTIVITY::Run(), DRC_TEST_PROVIDER_SILK_TO_MASK::Run(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::Run(), DRC_TEST_PROVIDER_LVS::Run(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), DRC_TEST_PROVIDER_MISC::Run(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::Run(), DRC_TEST_PROVIDER_MATCHED_LENGTH::runInternal(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances(), and DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testFootprintCourtyardDefinitions().
|
protectedvirtualinherited |
Definition at line 67 of file drc_test_provider.cpp.
References DRC_TEST_PROVIDER::m_drcEngine, and DRC_ENGINE::ReportProgress().
Referenced by DRC_TEST_PROVIDER_VIA_DIAMETER::Run(), DRC_TEST_PROVIDER_TRACK_WIDTH::Run(), DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_TEST_PROVIDER_ANNULAR_WIDTH::Run(), DRC_TEST_PROVIDER_CONNECTIVITY::Run(), DRC_TEST_PROVIDER_SILK_TO_MASK::Run(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::Run(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::Run(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances(), DRC_TEST_PROVIDER_MISC::testDisabledLayers(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testFootprintCourtyardDefinitions(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadClearances(), DRC_TEST_PROVIDER_MISC::testTextVars(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackClearances(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZonesToZones().
|
protectedvirtualinherited |
Definition at line 120 of file drc_test_provider.cpp.
References Format(), DRC_TEST_PROVIDER::m_drcEngine, DRC_TEST_PROVIDER::m_isRuleDriven, DRC_TEST_PROVIDER::m_stats, and DRC_ENGINE::ReportAux().
Referenced by DRC_TEST_PROVIDER_VIA_DIAMETER::Run(), DRC_TEST_PROVIDER_TRACK_WIDTH::Run(), DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_TEST_PROVIDER_HOLE_SIZE::Run(), DRC_TEST_PROVIDER_ANNULAR_WIDTH::Run(), DRC_TEST_PROVIDER_CONNECTIVITY::Run(), DRC_TEST_PROVIDER_SILK_TO_MASK::Run(), DRC_TEST_PROVIDER_LVS::Run(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::Run(), Run(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::Run(), and DRC_TEST_PROVIDER_MATCHED_LENGTH::runInternal().
|
protectedvirtualinherited |
Definition at line 56 of file drc_test_provider.cpp.
References DRC_TEST_PROVIDER::accountCheck(), DRC_TEST_PROVIDER::m_drcEngine, and DRC_ENGINE::ReportViolation().
Referenced by DRC_TEST_PROVIDER_MATCHED_LENGTH::checkLengths(), DRC_TEST_PROVIDER_HOLE_SIZE::checkPad(), DRC_TEST_PROVIDER_MATCHED_LENGTH::checkSkews(), DRC_TEST_PROVIDER_HOLE_SIZE::checkVia(), DRC_TEST_PROVIDER_MATCHED_LENGTH::checkViaCounts(), DRC_TEST_PROVIDER_VIA_DIAMETER::Run(), DRC_TEST_PROVIDER_TRACK_WIDTH::Run(), DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_TEST_PROVIDER_ANNULAR_WIDTH::Run(), DRC_TEST_PROVIDER_CONNECTIVITY::Run(), DRC_TEST_PROVIDER_SILK_TO_MASK::Run(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), Run(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::testAgainstEdge(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances(), DRC_TEST_PROVIDER_MISC::testDisabledLayers(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testFootprintCourtyardDefinitions(), DRC_TEST_PROVIDER_LVS::testFootprints(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::testHoleAgainstHole(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_MISC::testOutline(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), DRC_TEST_PROVIDER_MISC::testTextVars(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackAgainstItem(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZonesToZones().
|
overridevirtual |
Run this provider against the given PCB with configured options (if any).
Implements DRC_TEST_PROVIDER.
Definition at line 276 of file drc_test_provider_diff_pair_coupling.cpp.
References _, LSET::AllCuMask(), BLUE, DRC_ITEM::Create(), DIFF_PAIR_GAP_CONSTRAINT, DIFF_PAIR_MAX_UNCOUPLED_CONSTRAINT, drc_dbg, DRCE_DIFF_PAIR_GAP_OUT_OF_RANGE, DRCE_DIFF_PAIR_UNCOUPLED_LENGTH_TOO_LONG, DRC_ENGINE::EvalRules(), extractDiffPairCoupledItems(), DRC_TEST_PROVIDER::forEachGeometryItem(), Format(), DRC_ENGINE::GetBoard(), BOARD::GetConnectivity(), DRC_ENGINE::GetDebugOverlay(), BOARD_CONNECTED_ITEM::GetNet(), NETINFO_ITEM::GetNetCode(), BOARD::GetNetInfo(), NETINFO_LIST::GetNetItem(), NETINFO_ITEM::GetNetname(), DRC_RTREE::Insert(), IsCopperLayer(), DRC_ENGINE::IsNetADiffPair(), m_board, DRC_TEST_PROVIDER::m_drcEngine, DRC_TEST_PROVIDER::m_msg, MessageTextFromValue(), DIFF_PAIR_KEY::netN, DIFF_PAIR_KEY::netP, overlay, DIFF_PAIR_KEY::parentRule, PCB_ARC_T, PCB_PAD_T, PCB_TRACE_T, PCB_VIA_T, PCB_ZONE_T, RED, DRC_TEST_PROVIDER::reportAux(), DRC_TEST_PROVIDER::reportRuleStatistics(), DRC_TEST_PROVIDER::reportViolation(), and DRC_TEST_PROVIDER::userUnits().
|
inlineinherited |
Definition at line 78 of file drc_test_provider.h.
References DRC_TEST_PROVIDER::m_drcEngine, and DRC_TEST_PROVIDER::m_stats.
|
protectedinherited |
Definition at line 97 of file drc_test_provider.cpp.
References DRC_TEST_PROVIDER::m_drcEngine, and DRC_ENGINE::UserUnits().
Referenced by DRC_TEST_PROVIDER_MATCHED_LENGTH::checkLengths(), DRC_TEST_PROVIDER_HOLE_SIZE::checkPad(), DRC_TEST_PROVIDER_MATCHED_LENGTH::checkSkews(), DRC_TEST_PROVIDER_HOLE_SIZE::checkVia(), DRC_TEST_PROVIDER_VIA_DIAMETER::Run(), DRC_TEST_PROVIDER_TRACK_WIDTH::Run(), DRC_TEST_PROVIDER_ANNULAR_WIDTH::Run(), DRC_TEST_PROVIDER_SILK_TO_MASK::Run(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), Run(), DRC_TEST_PROVIDER_MATCHED_LENGTH::runInternal(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::testAgainstEdge(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::testHoleAgainstHole(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackAgainstItem(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZonesToZones().
|
private |
Definition at line 86 of file drc_test_provider_diff_pair_coupling.cpp.
Referenced by Run().
|
protectedinherited |
Definition at line 131 of file drc_test_provider.h.
Referenced by DRC_TEST_PROVIDER_HOLE_SIZE::checkPad(), DRC_TEST_PROVIDER_HOLE_SIZE::checkVia(), DRC_TEST_PROVIDER::forEachGeometryItem(), DRC_TEST_PROVIDER_LVS::GetNumPhases(), DRC_TEST_PROVIDER::reportAux(), DRC_TEST_PROVIDER::reportPhase(), DRC_TEST_PROVIDER::reportProgress(), DRC_TEST_PROVIDER::reportRuleStatistics(), DRC_TEST_PROVIDER::reportViolation(), DRC_TEST_PROVIDER_VIA_DIAMETER::Run(), DRC_TEST_PROVIDER_TRACK_WIDTH::Run(), DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_TEST_PROVIDER_HOLE_SIZE::Run(), DRC_TEST_PROVIDER_ANNULAR_WIDTH::Run(), DRC_TEST_PROVIDER_CONNECTIVITY::Run(), DRC_TEST_PROVIDER_SILK_TO_MASK::Run(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::Run(), DRC_TEST_PROVIDER_MISC::Run(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::Run(), DRC_TEST_PROVIDER_LVS::Run(), Run(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::Run(), DRC_TEST_PROVIDER_MATCHED_LENGTH::runInternal(), DRC_TEST_PROVIDER::SetDRCEngine(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::testAgainstEdge(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances(), DRC_TEST_PROVIDER_MISC::testDisabledLayers(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testFootprintCourtyardDefinitions(), DRC_TEST_PROVIDER_LVS::testFootprints(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::testHoleAgainstHole(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), DRC_TEST_PROVIDER_MISC::testTextVars(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZonesToZones(), and DRC_TEST_PROVIDER::userUnits().
|
protectedinherited |
Definition at line 134 of file drc_test_provider.h.
Referenced by DRC_TEST_PROVIDER::Enable(), and DRC_TEST_PROVIDER::IsEnabled().
|
protectedinherited |
Definition at line 133 of file drc_test_provider.h.
Referenced by DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::DRC_TEST_PROVIDER_COURTYARD_CLEARANCE(), DRC_TEST_PROVIDER_LVS::DRC_TEST_PROVIDER_LVS(), DRC_TEST_PROVIDER_MISC::DRC_TEST_PROVIDER_MISC(), DRC_TEST_PROVIDER::IsRuleDriven(), and DRC_TEST_PROVIDER::reportRuleStatistics().
|
protectedinherited |
Definition at line 136 of file drc_test_provider.h.
Referenced by DRC_TEST_PROVIDER_MATCHED_LENGTH::checkLengths(), DRC_TEST_PROVIDER_HOLE_SIZE::checkPad(), DRC_TEST_PROVIDER_MATCHED_LENGTH::checkSkews(), DRC_TEST_PROVIDER_HOLE_SIZE::checkVia(), DRC_TEST_PROVIDER_MATCHED_LENGTH::checkViaCounts(), DRC_TEST_PROVIDER_VIA_DIAMETER::Run(), DRC_TEST_PROVIDER_TRACK_WIDTH::Run(), DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_TEST_PROVIDER_ANNULAR_WIDTH::Run(), DRC_TEST_PROVIDER_SILK_TO_MASK::Run(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), Run(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::testAgainstEdge(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances(), DRC_TEST_PROVIDER_MISC::testDisabledLayers(), DRC_TEST_PROVIDER_LVS::testFootprints(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::testHoleAgainstHole(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_MISC::testOutline(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackAgainstItem(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZonesToZones().
|
protectedinherited |
Definition at line 132 of file drc_test_provider.h.
Referenced by DRC_TEST_PROVIDER::accountCheck(), DRC_TEST_PROVIDER::reportRuleStatistics(), and DRC_TEST_PROVIDER::SetDRCEngine().
|
staticprotectedinherited |
Definition at line 127 of file drc_test_provider.h.
Referenced by DRC_TEST_PROVIDER::forEachGeometryItem(), DRC_TEST_PROVIDER_SILK_TO_MASK::Run(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), and DRC_TEST_PROVIDER_MISC::testDisabledLayers().
|
staticprotectedinherited |
Definition at line 128 of file drc_test_provider.h.
Referenced by DRC_TEST_PROVIDER::forEachGeometryItem(), and DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run().