KiCad PCB EDA Suite
Loading...
Searching...
No Matches
TMATCH::CONNECTION_GRAPH Class Reference

#include <topo_match.h>

Public Member Functions

 CONNECTION_GRAPH ()
 
 ~CONNECTION_GRAPH ()
 
void BuildConnectivity ()
 
void AddFootprint (FOOTPRINT *aFp, const VECTOR2I &aOffset)
 
bool FindIsomorphism (CONNECTION_GRAPH *target, COMPONENT_MATCHES &result, std::vector< TOPOLOGY_MISMATCH_REASON > &aFailureDetails)
 
std::vector< COMPONENT * > & Components ()
 

Static Public Member Functions

static std::unique_ptr< CONNECTION_GRAPHBuildFromFootprintSet (const std::set< FOOTPRINT * > &aFps)
 

Public Attributes

const int c_ITER_LIMIT = 10000
 

Private Member Functions

void sortByPinCount ()
 
std::vector< COMPONENT * > findMatchingComponents (CONNECTION_GRAPH *aRefGraph, COMPONENT *ref, const BACKTRACK_STAGE &partialMatches, std::vector< TOPOLOGY_MISMATCH_REASON > &aFailureDetails)
 

Private Attributes

std::vector< COMPONENT * > m_components
 

Detailed Description

Definition at line 158 of file topo_match.h.

Constructor & Destructor Documentation

◆ CONNECTION_GRAPH()

CONNECTION_GRAPH::CONNECTION_GRAPH ( )

Definition at line 774 of file topo_match.cpp.

Referenced by FindIsomorphism(), and findMatchingComponents().

◆ ~CONNECTION_GRAPH()

CONNECTION_GRAPH::~CONNECTION_GRAPH ( )

Definition at line 780 of file topo_match.cpp.

References m_components.

Member Function Documentation

◆ AddFootprint()

void CONNECTION_GRAPH::AddFootprint ( FOOTPRINT * aFp,
const VECTOR2I & aOffset )

Definition at line 738 of file topo_match.cpp.

References COMPONENT, FOOTPRINT::GetReference(), m_components, pad, FOOTPRINT::Pads(), PIN, and pin.

◆ BuildConnectivity()

void CONNECTION_GRAPH::BuildConnectivity ( )

Definition at line 344 of file topo_match.cpp.

References alg::contains(), m_components, sortByPinCount(), and traceTopoMatch.

◆ BuildFromFootprintSet()

std::unique_ptr< CONNECTION_GRAPH > CONNECTION_GRAPH::BuildFromFootprintSet ( const std::set< FOOTPRINT * > & aFps)
static

Definition at line 755 of file topo_match.cpp.

Referenced by MULTICHANNEL_TOOL::resolveConnectionTopology().

◆ Components()

std::vector< COMPONENT * > & TMATCH::CONNECTION_GRAPH::Components ( )
inline

Definition at line 171 of file topo_match.h.

References m_components.

Referenced by TMATCH::checkIfPadNetsMatch().

◆ FindIsomorphism()

◆ findMatchingComponents()

◆ sortByPinCount()

void TMATCH::CONNECTION_GRAPH::sortByPinCount ( )
inlineprivate

Definition at line 174 of file topo_match.h.

References m_components.

Referenced by BuildConnectivity().

Member Data Documentation

◆ c_ITER_LIMIT

const int TMATCH::CONNECTION_GRAPH::c_ITER_LIMIT = 10000

Definition at line 161 of file topo_match.h.

Referenced by FindIsomorphism().

◆ m_components

std::vector<COMPONENT*> TMATCH::CONNECTION_GRAPH::m_components
private

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