KiCad PCB EDA Suite
Loading...
Searching...
No Matches
MOCK_RULE_RESOLVER Class Reference
Inheritance diagram for MOCK_RULE_RESOLVER:
PNS::RULE_RESOLVER

Classes

struct  ITEM_KEY
 

Public Member Functions

 MOCK_RULE_RESOLVER ()
 
virtual ~MOCK_RULE_RESOLVER ()
 
virtual int Clearance (const PNS::ITEM *aA, const PNS::ITEM *aB, bool aUseClearanceEpsilon=true) override
 
bool HasUserDefinedPhysicalConstraint () override
 
virtual PNS::NET_HANDLE DpCoupledNet (PNS::NET_HANDLE aNet) override
 
virtual int DpNetPolarity (PNS::NET_HANDLE aNet) override
 
virtual bool DpNetPair (const PNS::ITEM *aItem, PNS::NET_HANDLE &aNetP, PNS::NET_HANDLE &aNetN) override
 
virtual int NetCode (PNS::NET_HANDLE aNet) override
 
virtual wxString NetName (PNS::NET_HANDLE aNet) override
 
virtual bool QueryConstraint (PNS::CONSTRAINT_TYPE aType, const PNS::ITEM *aItemA, const PNS::ITEM *aItemB, int aLayer, PNS::CONSTRAINT *aConstraint) override
 
int ClearanceEpsilon () const override
 
bool IsInNetTie (const PNS::ITEM *aA) override
 
bool IsNetTieExclusion (const PNS::ITEM *aItem, const VECTOR2I &aCollisionPos, const PNS::ITEM *aCollidingItem) override
 
bool IsDrilledHole (const PNS::ITEM *aItem) override
 
bool IsNonPlatedSlot (const PNS::ITEM *aItem) override
 
bool IsKeepout (const PNS::ITEM *aObstacle, const PNS::ITEM *aItem, bool *aEnforce) override
 
void AddMockRule (PNS::CONSTRAINT_TYPE aType, const PNS::ITEM *aItemA, const PNS::ITEM *aItemB, PNS::CONSTRAINT &aConstraint)
 
virtual void ClearCacheForItems (std::vector< const ITEM * > &aItems)
 
virtual void ClearCaches ()
 
virtual void ClearTemporaryCaches ()
 
virtual const SHAPE_LINE_CHAINHullCache (const ITEM *aItem, int aClearance, int aWalkaroundThickness, int aLayer)
 

Public Attributes

int m_defaultClearance = 200000
 
int m_defaultHole2Hole = 220000
 
int m_defaultHole2Copper = 210000
 
int m_defaultPhysicalClearance = 0
 
int m_defaultPhysicalHoleClearance = 0
 
bool m_hasUserPhysicalRules = false
 

Private Attributes

std::map< ITEM_KEY, PNS::CONSTRAINTm_ruleMap
 
int m_clearanceEpsilon
 

Detailed Description

Definition at line 82 of file test_pns_basics.cpp.

Constructor & Destructor Documentation

◆ MOCK_RULE_RESOLVER()

MOCK_RULE_RESOLVER::MOCK_RULE_RESOLVER ( )
inline

Definition at line 85 of file test_pns_basics.cpp.

References m_clearanceEpsilon.

◆ ~MOCK_RULE_RESOLVER()

virtual MOCK_RULE_RESOLVER::~MOCK_RULE_RESOLVER ( )
inlinevirtual

Definition at line 89 of file test_pns_basics.cpp.

Member Function Documentation

◆ AddMockRule()

void MOCK_RULE_RESOLVER::AddMockRule ( PNS::CONSTRAINT_TYPE aType,
const PNS::ITEM * aItemA,
const PNS::ITEM * aItemB,
PNS::CONSTRAINT & aConstraint )
inline

◆ Clearance()

◆ ClearanceEpsilon()

int MOCK_RULE_RESOLVER::ClearanceEpsilon ( ) const
inlineoverridevirtual

Reimplemented from PNS::RULE_RESOLVER.

Definition at line 244 of file test_pns_basics.cpp.

References m_clearanceEpsilon.

◆ ClearCacheForItems()

virtual void PNS::RULE_RESOLVER::ClearCacheForItems ( std::vector< const ITEM * > & aItems)
inlinevirtualinherited

Reimplemented in PNS_PCBNEW_RULE_RESOLVER.

Definition at line 170 of file pns_node.h.

Referenced by PNS::ROUTER::updateView().

◆ ClearCaches()

virtual void PNS::RULE_RESOLVER::ClearCaches ( )
inlinevirtualinherited

Reimplemented in PNS_PCBNEW_RULE_RESOLVER.

Definition at line 171 of file pns_node.h.

Referenced by PNS::ROUTER::StartDragging(), and PNS::ROUTER::StartRouting().

◆ ClearTemporaryCaches()

virtual void PNS::RULE_RESOLVER::ClearTemporaryCaches ( )
inlinevirtualinherited

Reimplemented in PNS_PCBNEW_RULE_RESOLVER.

Definition at line 172 of file pns_node.h.

Referenced by PNS::ROUTER::Move().

◆ DpCoupledNet()

virtual PNS::NET_HANDLE MOCK_RULE_RESOLVER::DpCoupledNet ( PNS::NET_HANDLE aNet)
inlineoverridevirtual

Implements PNS::RULE_RESOLVER.

Definition at line 177 of file test_pns_basics.cpp.

◆ DpNetPair()

virtual bool MOCK_RULE_RESOLVER::DpNetPair ( const PNS::ITEM * aItem,
PNS::NET_HANDLE & aNetP,
PNS::NET_HANDLE & aNetN )
inlineoverridevirtual

Implements PNS::RULE_RESOLVER.

Definition at line 180 of file test_pns_basics.cpp.

◆ DpNetPolarity()

virtual int MOCK_RULE_RESOLVER::DpNetPolarity ( PNS::NET_HANDLE aNet)
inlineoverridevirtual

Implements PNS::RULE_RESOLVER.

Definition at line 178 of file test_pns_basics.cpp.

◆ HasUserDefinedPhysicalConstraint()

bool MOCK_RULE_RESOLVER::HasUserDefinedPhysicalConstraint ( )
inlineoverridevirtual

Reimplemented from PNS::RULE_RESOLVER.

Definition at line 175 of file test_pns_basics.cpp.

References m_hasUserPhysicalRules.

◆ HullCache()

virtual const SHAPE_LINE_CHAIN & PNS::RULE_RESOLVER::HullCache ( const ITEM * aItem,
int aClearance,
int aWalkaroundThickness,
int aLayer )
inlinevirtualinherited

Reimplemented in PNS_PCBNEW_RULE_RESOLVER.

Definition at line 176 of file pns_node.h.

References empty(), and PNS::ITEM::Hull().

Referenced by PNS::NODE::NearestObstacle().

◆ IsDrilledHole()

bool MOCK_RULE_RESOLVER::IsDrilledHole ( const PNS::ITEM * aItem)
inlineoverridevirtual

Implements PNS::RULE_RESOLVER.

Definition at line 283 of file test_pns_basics.cpp.

◆ IsInNetTie()

bool MOCK_RULE_RESOLVER::IsInNetTie ( const PNS::ITEM * aA)
inlineoverridevirtual

Implements PNS::RULE_RESOLVER.

Definition at line 275 of file test_pns_basics.cpp.

◆ IsKeepout()

bool MOCK_RULE_RESOLVER::IsKeepout ( const PNS::ITEM * aObstacle,
const PNS::ITEM * aItem,
bool * aEnforce )
inlineoverridevirtual
Returns
true if aObstacle is a keepout. Set aEnforce if said keepout's rules exclude aItem.

Implements PNS::RULE_RESOLVER.

Definition at line 287 of file test_pns_basics.cpp.

◆ IsNetTieExclusion()

bool MOCK_RULE_RESOLVER::IsNetTieExclusion ( const PNS::ITEM * aItem,
const VECTOR2I & aCollisionPos,
const PNS::ITEM * aCollidingItem )
inlineoverridevirtual

Implements PNS::RULE_RESOLVER.

Definition at line 277 of file test_pns_basics.cpp.

◆ IsNonPlatedSlot()

bool MOCK_RULE_RESOLVER::IsNonPlatedSlot ( const PNS::ITEM * aItem)
inlineoverridevirtual

Implements PNS::RULE_RESOLVER.

Definition at line 285 of file test_pns_basics.cpp.

◆ NetCode()

virtual int MOCK_RULE_RESOLVER::NetCode ( PNS::NET_HANDLE aNet)
inlineoverridevirtual

Implements PNS::RULE_RESOLVER.

Definition at line 186 of file test_pns_basics.cpp.

◆ NetName()

virtual wxString MOCK_RULE_RESOLVER::NetName ( PNS::NET_HANDLE aNet)
inlineoverridevirtual

Implements PNS::RULE_RESOLVER.

Definition at line 191 of file test_pns_basics.cpp.

◆ QueryConstraint()

Member Data Documentation

◆ m_clearanceEpsilon

int MOCK_RULE_RESOLVER::m_clearanceEpsilon
private

Definition at line 313 of file test_pns_basics.cpp.

Referenced by ClearanceEpsilon(), and MOCK_RULE_RESOLVER().

◆ m_defaultClearance

int MOCK_RULE_RESOLVER::m_defaultClearance = 200000

Definition at line 304 of file test_pns_basics.cpp.

Referenced by QueryConstraint().

◆ m_defaultHole2Copper

int MOCK_RULE_RESOLVER::m_defaultHole2Copper = 210000

Definition at line 306 of file test_pns_basics.cpp.

Referenced by QueryConstraint().

◆ m_defaultHole2Hole

int MOCK_RULE_RESOLVER::m_defaultHole2Hole = 220000

Definition at line 305 of file test_pns_basics.cpp.

Referenced by QueryConstraint().

◆ m_defaultPhysicalClearance

int MOCK_RULE_RESOLVER::m_defaultPhysicalClearance = 0

Definition at line 307 of file test_pns_basics.cpp.

Referenced by QueryConstraint().

◆ m_defaultPhysicalHoleClearance

int MOCK_RULE_RESOLVER::m_defaultPhysicalHoleClearance = 0

Definition at line 308 of file test_pns_basics.cpp.

Referenced by QueryConstraint().

◆ m_hasUserPhysicalRules

bool MOCK_RULE_RESOLVER::m_hasUserPhysicalRules = false

Definition at line 309 of file test_pns_basics.cpp.

Referenced by HasUserDefinedPhysicalConstraint().

◆ m_ruleMap

std::map<ITEM_KEY, PNS::CONSTRAINT> MOCK_RULE_RESOLVER::m_ruleMap
private

Definition at line 312 of file test_pns_basics.cpp.

Referenced by AddMockRule(), and QueryConstraint().


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