KiCad PCB EDA Suite
|
#include <drc_rule.h>
Public Types | |
enum class | OPTIONS : std::size_t { SKEW_WITHIN_DIFF_PAIRS = 0 } |
Public Member Functions | |
DRC_CONSTRAINT (DRC_CONSTRAINT_T aType=NULL_CONSTRAINT, const wxString &aName=wxEmptyString) | |
bool | IsNull () const |
const MINOPTMAX< int > & | GetValue () const |
MINOPTMAX< int > & | Value () |
void | SetParentRule (DRC_RULE *aParentRule) |
DRC_RULE * | GetParentRule () const |
void | SetName (const wxString &aName) |
wxString | GetName () const |
SEVERITY | GetSeverity () const |
void | SetOption (OPTIONS option) |
bool | GetOption (OPTIONS option) const |
Public Attributes | |
DRC_CONSTRAINT_T | m_Type |
MINOPTMAX< int > | m_Value |
int | m_DisallowFlags |
ZONE_CONNECTION | m_ZoneConnection |
DRC_RULE_CONDITION * | m_Test |
bool | m_ImplicitMin |
Private Attributes | |
wxString | m_name |
DRC_RULE * | m_parentRule |
std::bitset< 1 > | m_options |
Definition at line 126 of file drc_rule.h.
|
strong |
Enumerator | |
---|---|
SKEW_WITHIN_DIFF_PAIRS |
Definition at line 142 of file drc_rule.h.
|
inline |
Definition at line 129 of file drc_rule.h.
|
inline |
Definition at line 160 of file drc_rule.h.
References _, DRC_RULE::m_Implicit, DRC_RULE::m_Name, m_name, and m_parentRule.
Referenced by DRC_TEST_PROVIDER_MATCHED_LENGTH::checkLengths(), DRC_TEST_PROVIDER_MATCHED_LENGTH::checkSkews(), DRC_TEST_PROVIDER_MATCHED_LENGTH::checkViaCounts(), PCB_VIA::GetDrillConstraint(), PCB_VIA::GetMinAnnulus(), PCB_TUNING_PATTERN::GetMsgPanelInfo(), BOARD_CONNECTED_ITEM::GetOwnClearance(), PAD::GetOwnClearance(), PCB_TRACK::GetWidthConstraint(), PCB_VIA::GetWidthConstraint(), BOARD_INSPECTION_TOOL::InspectClearance(), PNS_PCBNEW_RULE_RESOLVER::QueryConstraint(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::Run(), test::DRC_TEST_PROVIDER_DIFF_PAIR_COUPLING::Run(), DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_TEST_PROVIDER_TEXT_DIMS::Run(), DRC_TEST_PROVIDER_MISC::testAssertions(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances(), DRC_TEST_PROVIDER_CREEPAGE::testCreepage(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testKnockoutTextAgainstZone(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testShapeLineChain(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testSingleLayerItemAgainstItem(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::testZoneLayer(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testZoneLayer(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZonesToZones(), DIALOG_TUNING_PATTERN_PROPERTIES::TransferDataToWindow(), PCB_CONTROL::UpdateMessagePanel(), and ROUTER_TOOL::updateSizesAfterRouterEvent().
|
inline |
Definition at line 183 of file drc_rule.h.
References m_options.
Referenced by DRC_TEST_PROVIDER_MATCHED_LENGTH::checkSkews().
|
inline |
Definition at line 156 of file drc_rule.h.
References m_parentRule.
Referenced by DRC_TEST_PROVIDER::accountCheck(), DRC_TEST_PROVIDER_MATCHED_LENGTH::checkLengths(), DRC_TEST_PROVIDER_MATCHED_LENGTH::checkSkews(), DRC_TEST_PROVIDER_MATCHED_LENGTH::checkViaCounts(), DRC_ENGINE::EvalRules(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::Run(), test::DRC_TEST_PROVIDER_DIFF_PAIR_COUPLING::Run(), DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_TEST_PROVIDER_TEXT_DIMS::Run(), DRC_TEST_PROVIDER_MISC::testAssertions(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances(), DRC_TEST_PROVIDER_CREEPAGE::testCreepage(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testKnockoutTextAgainstZone(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testShapeLineChain(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testSingleLayerItemAgainstItem(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::testZoneLayer(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testZoneLayer(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZonesToZones().
|
inline |
Definition at line 173 of file drc_rule.h.
References m_parentRule, DRC_RULE::m_Severity, and RPT_SEVERITY_UNDEFINED.
Referenced by DRAWING_TOOL::DrawVia(), PNS_PCBNEW_RULE_RESOLVER::QueryConstraint(), test::DRC_TEST_PROVIDER_DIFF_PAIR_COUPLING::Run(), DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), DRC_TEST_PROVIDER_TEXT_DIMS::Run(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testKnockoutTextAgainstZone(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testShapeLineChain(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testSingleLayerItemAgainstItem(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::testZoneLayer(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testZoneLayer(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZonesToZones().
|
inline |
Definition at line 152 of file drc_rule.h.
References m_Value.
Referenced by ZONE_FILLER::buildCopperItemClearances(), ZONE_FILLER::buildThermalSpokes(), DRC_TEST_PROVIDER_MATCHED_LENGTH::checkLengths(), DRC_TEST_PROVIDER_MATCHED_LENGTH::checkSkews(), DRC_TEST_PROVIDER_MATCHED_LENGTH::checkViaCounts(), PCB_TUNING_PATTERN::CreateNew(), DRAWING_TOOL::DrawVia(), ZONE_FILLER::fillNonCopperZone(), PCB_TUNING_PATTERN::GetMsgPanelInfo(), ZONE_FILLER::knockoutThermalReliefs(), DIALOG_TUNING_PATTERN_PROPERTIES::onOverrideCustomRules(), PNS_PCBNEW_RULE_RESOLVER::QueryConstraint(), DRC_CACHE_GENERATOR::Run(), DRC_INTERACTIVE_COURTYARD_CLEARANCE::Run(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::Run(), test::DRC_TEST_PROVIDER_DIFF_PAIR_COUPLING::Run(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::Run(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), PCB_TUNING_PATTERN::ShowPropertiesDialog(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::testAgainstEdge(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testKnockoutTextAgainstZone(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testShapeLineChain(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testSingleLayerItemAgainstItem(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testZoneLayer(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZonesToZones(), and DIALOG_TUNING_PATTERN_PROPERTIES::TransferDataFromWindow().
|
inline |
Definition at line 147 of file drc_rule.h.
References m_Type, and NULL_CONSTRAINT.
Referenced by ZONE_FILLER::buildCopperItemClearances(), PCB_TUNING_PATTERN::CreateNew(), PCB_TUNING_PATTERN::GetMsgPanelInfo(), ROUTER_TOOL::handleLayerSwitch(), BOARD_INSPECTION_TOOL::InspectClearance(), DIALOG_TUNING_PATTERN_PROPERTIES::onOverrideCustomRules(), PNS_PCBNEW_RULE_RESOLVER::QueryConstraint(), test::DRC_TEST_PROVIDER_DIFF_PAIR_COUPLING::Run(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), PCB_TUNING_PATTERN::ShowPropertiesDialog(), DIALOG_TUNING_PATTERN_PROPERTIES::TransferDataToWindow(), and ROUTER_TOOL::updateSizesAfterRouterEvent().
|
inline |
Definition at line 158 of file drc_rule.h.
References m_name.
Referenced by DRC_ENGINE::EvalRules().
|
inline |
Definition at line 181 of file drc_rule.h.
References m_options.
Referenced by DRC_RULES_PARSER::parseConstraint().
|
inline |
Definition at line 155 of file drc_rule.h.
References m_parentRule.
Referenced by DRC_RULE::AddConstraint(), and DRC_ENGINE::EvalRules().
|
inline |
Definition at line 153 of file drc_rule.h.
References m_Value.
Referenced by ZONE_FILLER::buildThermalSpokes(), DRC_TEST_PROVIDER_HOLE_SIZE::checkPadHole(), DRC_TEST_PROVIDER_HOLE_SIZE::checkViaHole(), BOARD_DESIGN_SETTINGS::GetBiggestClearanceValue(), PCB_VIA::GetDrillConstraint(), PCB_VIA::GetMinAnnulus(), BOARD_CONNECTED_ITEM::GetOwnClearance(), PAD::GetOwnClearance(), PCB_TRACK::GetWidthConstraint(), PCB_VIA::GetWidthConstraint(), DRC_ENGINE::loadImplicitRules(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::Run(), DRC_TEST_PROVIDER_TEXT_DIMS::Run(), DRC_TEST_PROVIDER_TRACK_SEGMENT_LENGTH::Run(), DRC_TEST_PROVIDER_TRACK_WIDTH::Run(), DRC_TEST_PROVIDER_CREEPAGE::testCreepage(), and PCB_CONTROL::UpdateMessagePanel().
int DRC_CONSTRAINT::m_DisallowFlags |
Definition at line 191 of file drc_rule.h.
Referenced by DRAWING_TOOL::DrawVia(), DRC_ENGINE::EvalRules(), BOARD_INSPECTION_TOOL::InspectConstraints(), DRC_ENGINE::loadImplicitRules(), DRC_RULES_PARSER::parseConstraint(), and DRC_TEST_PROVIDER_DISALLOW::Run().
bool DRC_CONSTRAINT::m_ImplicitMin |
Definition at line 194 of file drc_rule.h.
Referenced by DRC_ENGINE::EvalRules().
|
private |
Definition at line 197 of file drc_rule.h.
|
private |
Definition at line 199 of file drc_rule.h.
Referenced by GetOption(), and SetOption().
|
private |
Definition at line 198 of file drc_rule.h.
Referenced by GetName(), GetParentRule(), GetSeverity(), and SetParentRule().
DRC_RULE_CONDITION* DRC_CONSTRAINT::m_Test |
Definition at line 193 of file drc_rule.h.
Referenced by DRC_RULES_PARSER::parseConstraint().
DRC_CONSTRAINT_T DRC_CONSTRAINT::m_Type |
Definition at line 189 of file drc_rule.h.
Referenced by DRC_ENGINE::compileRules(), DRC_ENGINE::EvalRules(), IsNull(), and DRC_RULES_PARSER::parseConstraint().
MINOPTMAX<int> DRC_CONSTRAINT::m_Value |
Definition at line 190 of file drc_rule.h.
Referenced by DRC_ENGINE::EvalRules(), GetValue(), ROUTER_TOOL::handleLayerSwitch(), BOARD_INSPECTION_TOOL::InspectClearance(), BOARD_INSPECTION_TOOL::InspectDRCError(), DRC_RULES_PARSER::parseConstraint(), reportMax(), reportMin(), reportOpt(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), DRC_TEST_PROVIDER_SOLDER_MASK::Run(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::testZoneLayer(), PCB_CONTROL::UpdateMessagePanel(), ROUTER_TOOL::updateSizesAfterRouterEvent(), and Value().
ZONE_CONNECTION DRC_CONSTRAINT::m_ZoneConnection |
Definition at line 192 of file drc_rule.h.
Referenced by DRC_ENGINE::EvalRules(), DRC_ENGINE::EvalZoneConnection(), BOARD_INSPECTION_TOOL::InspectClearance(), ZONE_FILLER::knockoutThermalReliefs(), DRC_RULES_PARSER::parseConstraint(), and DRC_TEST_PROVIDER_ZONE_CONNECTIONS::testZoneLayer().