KiCad PCB EDA Suite
Loading...
Searching...
No Matches
DRC_CONSTRAINT Class Reference

#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_RULEGetParentRule () 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_CONDITIONm_Test
 
bool m_ImplicitMin
 

Private Attributes

wxString m_name
 
DRC_RULEm_parentRule
 
std::bitset< 1 > m_options
 

Detailed Description

Definition at line 126 of file drc_rule.h.

Member Enumeration Documentation

◆ OPTIONS

enum class DRC_CONSTRAINT::OPTIONS : std::size_t
strong
Enumerator
SKEW_WITHIN_DIFF_PAIRS 

Definition at line 142 of file drc_rule.h.

Constructor & Destructor Documentation

◆ DRC_CONSTRAINT()

DRC_CONSTRAINT::DRC_CONSTRAINT ( DRC_CONSTRAINT_T  aType = NULL_CONSTRAINT,
const wxString &  aName = wxEmptyString 
)
inline

Definition at line 129 of file drc_rule.h.

Member Function Documentation

◆ GetName()

wxString DRC_CONSTRAINT::GetName ( ) const
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().

◆ GetOption()

bool DRC_CONSTRAINT::GetOption ( OPTIONS  option) const
inline

Definition at line 183 of file drc_rule.h.

References m_options.

Referenced by DRC_TEST_PROVIDER_MATCHED_LENGTH::checkSkews().

◆ GetParentRule()

◆ GetSeverity()

◆ GetValue()

const MINOPTMAX< int > & DRC_CONSTRAINT::GetValue ( ) const
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().

◆ IsNull()

◆ SetName()

void DRC_CONSTRAINT::SetName ( const wxString &  aName)
inline

Definition at line 158 of file drc_rule.h.

References m_name.

Referenced by DRC_ENGINE::EvalRules().

◆ SetOption()

void DRC_CONSTRAINT::SetOption ( OPTIONS  option)
inline

Definition at line 181 of file drc_rule.h.

References m_options.

Referenced by DRC_RULES_PARSER::parseConstraint().

◆ SetParentRule()

void DRC_CONSTRAINT::SetParentRule ( DRC_RULE aParentRule)
inline

Definition at line 155 of file drc_rule.h.

References m_parentRule.

Referenced by DRC_RULE::AddConstraint(), and DRC_ENGINE::EvalRules().

◆ Value()

Member Data Documentation

◆ m_DisallowFlags

◆ m_ImplicitMin

bool DRC_CONSTRAINT::m_ImplicitMin

Definition at line 194 of file drc_rule.h.

Referenced by DRC_ENGINE::EvalRules().

◆ m_name

wxString DRC_CONSTRAINT::m_name
private

Definition at line 197 of file drc_rule.h.

Referenced by GetName(), and SetName().

◆ m_options

std::bitset<1> DRC_CONSTRAINT::m_options
private

Definition at line 199 of file drc_rule.h.

Referenced by GetOption(), and SetOption().

◆ m_parentRule

DRC_RULE* DRC_CONSTRAINT::m_parentRule
private

Definition at line 198 of file drc_rule.h.

Referenced by GetName(), GetParentRule(), GetSeverity(), and SetParentRule().

◆ m_Test

DRC_RULE_CONDITION* DRC_CONSTRAINT::m_Test

Definition at line 193 of file drc_rule.h.

Referenced by DRC_RULES_PARSER::parseConstraint().

◆ m_Type

DRC_CONSTRAINT_T DRC_CONSTRAINT::m_Type

◆ m_Value

◆ m_ZoneConnection


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