KiCad PCB EDA Suite
|
Container for NETINFO_ITEM elements, which are the nets. More...
#include <netinfo.h>
Classes | |
class | iterator |
Wrapper class, so you can iterate through NETINFO_ITEM*s, not std::pair<int/wxString, NETINFO_ITEM*> More... | |
Public Member Functions | |
NETINFO_LIST (BOARD *aParent) | |
~NETINFO_LIST () | |
NETINFO_ITEM * | GetNetItem (int aNetCode) const |
NETINFO_ITEM * | GetNetItem (const wxString &aNetName) const |
unsigned | GetNetCount () const |
void | AppendNet (NETINFO_ITEM *aNewElement) |
Add aNewElement to the end of the net list. More... | |
void | RemoveNet (NETINFO_ITEM *aNet) |
Remove a net from the net list. More... | |
void | RemoveUnusedNets () |
const NETNAMES_MAP & | NetsByName () const |
Return the name map, at least for python. More... | |
const NETCODES_MAP & | NetsByNetcode () const |
Return the netcode map, at least for python. More... | |
iterator | begin () const |
iterator | end () const |
BOARD * | GetParent () const |
Static Public Member Functions | |
static NETINFO_ITEM * | OrphanedItem () |
NETINFO_ITEM meaning that there was no net assigned for an item, as there was no board storing net list available. More... | |
Static Public Attributes | |
static const int | UNCONNECTED = 0 |
Constant that holds the "unconnected net" number (typically 0) all items "connected" to this net are actually not connected items. More... | |
static const int | ORPHANED = -1 |
Constant that forces initialization of a netinfo item to the NETINFO_ITEM ORPHANED (typically -1) when calling SetNetCode on board connected items. More... | |
Private Member Functions | |
void | clear () |
Delete the list of nets (and free memory). More... | |
void | buildListOfNets () |
Rebuild the list of NETINFO_ITEMs. More... | |
int | getFreeNetCode () |
Return the first available net code that is not used by any other net. More... | |
Private Attributes | |
BOARD * | m_parent |
NETNAMES_MAP | m_netNames |
map of <wxString, NETINFO_ITEM*>, is NETINFO_ITEM owner More... | |
NETCODES_MAP | m_netCodes |
map of <int, NETINFO_ITEM*> is NOT owner More... | |
int | m_newNetCode |
possible value for new net code assignment More... | |
Friends | |
class | BOARD |
Container for NETINFO_ITEM elements, which are the nets.
NETINFO_LIST::NETINFO_LIST | ( | BOARD * | aParent | ) |
Definition at line 36 of file netinfo_list.cpp.
References AppendNet().
NETINFO_LIST::~NETINFO_LIST | ( | ) |
Definition at line 45 of file netinfo_list.cpp.
References clear().
void NETINFO_LIST::AppendNet | ( | NETINFO_ITEM * | aNewElement | ) |
Add aNewElement to the end of the net list.
Negative net code means it is going to be auto-assigned.
Definition at line 134 of file netinfo_list.cpp.
References getFreeNetCode(), NETINFO_ITEM::GetNetCode(), GetNetItem(), NETINFO_ITEM::GetNetname(), NETINFO_ITEM::m_netCode, m_netCodes, and m_netNames.
Referenced by NET_SELECTOR_COMBOPOPUP::Accept(), BOARD::Add(), NETINFO_LIST(), and DIALOG_NET_INSPECTOR::onRenameNet().
|
inline |
Definition at line 458 of file netinfo.h.
References m_netNames.
Referenced by BOARD::BeginNets(), and DSN::SPECCTRA_DB::FromBOARD().
|
private |
Rebuild the list of NETINFO_ITEMs.
The list is sorted by names.
Definition at line 162 of file netinfo_list.cpp.
References NETINFO_ITEM::Clear(), m_parent, BOARD::SetAreasNetCodesFromNetNames(), and BOARD::SynchronizeNetsAndNetClasses().
Referenced by BOARD::BuildListOfNets().
|
private |
Delete the list of nets (and free memory).
Definition at line 51 of file netinfo_list.cpp.
References m_netCodes, m_netNames, and m_newNetCode.
Referenced by ~NETINFO_LIST().
|
inline |
Definition at line 463 of file netinfo.h.
References m_netNames.
Referenced by BOARD::EndNets(), and DSN::SPECCTRA_DB::FromBOARD().
|
private |
Return the first available net code that is not used by any other net.
Definition at line 190 of file netinfo_list.cpp.
References m_netCodes, and m_newNetCode.
Referenced by AppendNet().
|
inline |
Definition at line 361 of file netinfo.h.
References m_netNames.
Referenced by BOARD::FindNet(), BOARD::GetNetCount(), FABMASTER::loadZones(), and DIALOG_COPPER_ZONE::readNetInformation().
NETINFO_ITEM * NETINFO_LIST::GetNetItem | ( | const wxString & | aNetName | ) | const |
aNetName | net name to identify a given NETINFO_ITEM. |
Definition at line 75 of file netinfo_list.cpp.
References m_netNames.
NETINFO_ITEM * NETINFO_LIST::GetNetItem | ( | int | aNetCode | ) | const |
aNetCode | netcode to identify a given NETINFO_ITEM. |
Definition at line 64 of file netinfo_list.cpp.
References m_netCodes.
Referenced by NET_SELECTOR_COMBOPOPUP::Accept(), AppendNet(), BOARD_EDITOR_CONTROL::AssignNetclass(), DRAWING_TOOL::DrawVia(), BOARD::FindNet(), NET_SELECTOR_COMBOPOPUP::GetSelectedNetname(), NET_SELECTOR_COMBOPOPUP::GetStringValue(), PCB_EDIT_FRAME::LoadProjectSettings(), NET_SELECTOR_COMBOPOPUP::rebuildList(), BOARD::Remove(), test::DRC_TEST_PROVIDER_DIFF_PAIR_COUPLING::Run(), DRC_TEST_PROVIDER_MATCHED_LENGTH::runInternal(), PCB_EDIT_FRAME::SaveProjectLocalSettings(), PCB_EDIT_FRAME::saveProjectSettings(), and NET_SELECTOR_COMBOPOPUP::SetSelectedNet().
|
inline |
Definition at line 469 of file netinfo.h.
References m_parent.
Referenced by NET_SELECTOR_COMBOPOPUP::Accept().
|
inline |
Return the name map, at least for python.
Definition at line 380 of file netinfo.h.
References m_netNames.
Referenced by FABMASTER::loadEtch(), FABMASTER::loadFootprints(), FABMASTER::loadVias(), FABMASTER::loadZone(), and NET_GRID_TABLE::Rebuild().
|
inline |
Return the netcode map, at least for python.
Definition at line 383 of file netinfo.h.
References m_netCodes.
Referenced by DIALOG_NET_INSPECTOR::buildNetsList(), and PCB_PROPERTIES_PANEL::updateLists().
|
inlinestatic |
NETINFO_ITEM meaning that there was no net assigned for an item, as there was no board storing net list available.
Definition at line 395 of file netinfo.h.
References UNCONNECTED.
Referenced by BOARD::FindNet(), PNS_KICAD_IFACE_BASE::GetOrphanedNetHandle(), PCB_CONTROL::Paste(), and BOARD_CONNECTED_ITEM::SetNetCode().
void NETINFO_LIST::RemoveNet | ( | NETINFO_ITEM * | aNet | ) |
Remove a net from the net list.
Definition at line 86 of file netinfo_list.cpp.
References NETINFO_ITEM::m_netCode, m_netCodes, m_netNames, and m_newNetCode.
Referenced by NET_SELECTOR_COMBOPOPUP::Accept(), DIALOG_NET_INSPECTOR::onRenameNet(), and BOARD::Remove().
void NETINFO_LIST::RemoveUnusedNets | ( | ) |
Definition at line 116 of file netinfo_list.cpp.
References m_netCodes, and m_netNames.
Referenced by DISPLAY_FOOTPRINTS_FRAME::InitDisplay(), DISPLAY_FOOTPRINTS_FRAME::ReloadFootprint(), FOOTPRINT_VIEWER_FRAME::SelectAndViewFootprint(), and BOARD_NETLIST_UPDATER::UpdateNetlist().
|
private |
map of <int, NETINFO_ITEM*> is NOT owner
Definition at line 495 of file netinfo.h.
Referenced by AppendNet(), clear(), getFreeNetCode(), GetNetItem(), NetsByNetcode(), RemoveNet(), and RemoveUnusedNets().
|
private |
map of <wxString, NETINFO_ITEM*>, is NETINFO_ITEM owner
Definition at line 494 of file netinfo.h.
Referenced by AppendNet(), begin(), clear(), end(), GetNetCount(), GetNetItem(), NetsByName(), RemoveNet(), and RemoveUnusedNets().
|
private |
possible value for new net code assignment
Definition at line 497 of file netinfo.h.
Referenced by clear(), getFreeNetCode(), and RemoveNet().
|
private |
Definition at line 492 of file netinfo.h.
Referenced by buildListOfNets(), and GetParent().
|
static |
Constant that forces initialization of a netinfo item to the NETINFO_ITEM ORPHANED (typically -1) when calling SetNetCode on board connected items.
Definition at line 391 of file netinfo.h.
Referenced by FOOTPRINT::ClearAllNets(), PCB_PARSER::parsePAD(), and BOARD::SanitizeNetcodes().
|
static |
Constant that holds the "unconnected net" number (typically 0) all items "connected" to this net are actually not connected items.
Definition at line 387 of file netinfo.h.
Referenced by KIGFX::PCB_PAINTER::draw(), PCB_EDIT_FRAME::ExchangeFootprint(), BOARD::FindNet(), PCB_PLUGIN::format(), ALTIUM_PCB::GetNetCode(), EAGLE_PLUGIN::loadPlain(), EAGLE_PLUGIN::loadSignals(), LEGACY_PLUGIN::loadZONE_CONTAINER(), OrphanedItem(), PCB_PARSER::parseNETINFO_ITEM(), PCB_PARSER::parseZONE(), BOARD::Remove(), PCB_SELECTION_CONDITIONS::sameNetFunc(), BOARD::SetAreasNetCodesFromNetNames(), DIALOG_PAD_PROPERTIES::TransferDataFromWindow(), DIALOG_PAD_PROPERTIES::transferDataToPad(), BOARD_NETLIST_UPDATER::updateComponentPadConnections(), and PCB_TRACK::ViewGetLOD().