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 138 of file pns_node.h.

Constructor & Destructor Documentation

◆ ~RULE_RESOLVER()

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

Definition at line 141 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 MOCK_RULE_RESOLVER, and PNS_PCBNEW_RULE_RESOLVER.

Definition at line 172 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 168 of file pns_node.h.

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

◆ ClearCaches()

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

Reimplemented in PNS_PCBNEW_RULE_RESOLVER.

Definition at line 169 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 170 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 MOCK_RULE_RESOLVER, and PNS_PCBNEW_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: