KiCad PCB EDA Suite
Loading...
Searching...
No Matches
PNS::RULE_RESOLVER Class Referenceabstract

#include <pns_node.h>

Inheritance diagram for PNS::RULE_RESOLVER:
MOCK_RULE_RESOLVER PNS_PCBNEW_RULE_RESOLVER

Public Member Functions

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

Detailed Description

Definition at line 137 of file pns_node.h.

Constructor & Destructor Documentation

◆ ~RULE_RESOLVER()

virtual PNS::RULE_RESOLVER::~RULE_RESOLVER ( )
inlinevirtual

Definition at line 140 of file pns_node.h.

Member Function Documentation

◆ Clearance()

virtual int PNS::RULE_RESOLVER::Clearance ( const ITEM aA,
const ITEM aB,
bool  aUseClearanceEpsilon = true 
)
pure virtual

◆ ClearanceEpsilon()

virtual int PNS::RULE_RESOLVER::ClearanceEpsilon ( ) const
inlinevirtual

Reimplemented in PNS_PCBNEW_RULE_RESOLVER, and MOCK_RULE_RESOLVER.

Definition at line 171 of file pns_node.h.

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

◆ ClearCacheForItems()

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

Reimplemented in PNS_PCBNEW_RULE_RESOLVER.

Definition at line 167 of file pns_node.h.

Referenced by PNS::NODE::releaseGarbage(), PNS::ROUTER::updateView(), and PNS::NODE::~NODE().

◆ ClearCaches()

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

Reimplemented in PNS_PCBNEW_RULE_RESOLVER.

Definition at line 168 of file pns_node.h.

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

◆ ClearTemporaryCaches()

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

Reimplemented in PNS_PCBNEW_RULE_RESOLVER.

Definition at line 169 of file pns_node.h.

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

◆ DpCoupledNet()

virtual NET_HANDLE PNS::RULE_RESOLVER::DpCoupledNet ( NET_HANDLE  aNet)
pure virtual

◆ DpNetPair()

virtual bool PNS::RULE_RESOLVER::DpNetPair ( const ITEM aItem,
NET_HANDLE aNetP,
NET_HANDLE aNetN 
)
pure virtual

◆ DpNetPolarity()

virtual int PNS::RULE_RESOLVER::DpNetPolarity ( NET_HANDLE  aNet)
pure virtual

◆ IsDrilledHole()

virtual bool PNS::RULE_RESOLVER::IsDrilledHole ( const PNS::ITEM aItem)
pure virtual

◆ IsInNetTie()

virtual bool PNS::RULE_RESOLVER::IsInNetTie ( const ITEM aA)
pure virtual

◆ IsKeepout()

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

Implemented in PNS_PCBNEW_RULE_RESOLVER, and MOCK_RULE_RESOLVER.

Referenced by PNS::ITEM::collideSimple().

◆ IsNetTieExclusion()

virtual bool PNS::RULE_RESOLVER::IsNetTieExclusion ( const ITEM aItem,
const VECTOR2I aCollisionPos,
const ITEM aCollidingItem 
)
pure virtual

◆ IsNonPlatedSlot()

virtual bool PNS::RULE_RESOLVER::IsNonPlatedSlot ( const PNS::ITEM aItem)
pure virtual

◆ NetCode()

virtual int PNS::RULE_RESOLVER::NetCode ( NET_HANDLE  aNet)
pure virtual

◆ NetName()

virtual wxString PNS::RULE_RESOLVER::NetName ( NET_HANDLE  aNet)
pure virtual

◆ QueryConstraint()

virtual bool PNS::RULE_RESOLVER::QueryConstraint ( CONSTRAINT_TYPE  aType,
const ITEM aItemA,
const ITEM aItemB,
int  aLayer,
CONSTRAINT aConstraint 
)
pure virtual

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