KiCad PCB EDA Suite
Loading...
Searching...
No Matches
PIN_MAP_INSTANCE_OVERRIDE Struct Reference

Per-instance override of the active pin map and a sparse delta on top. More...

#include <pin_map.h>

Public Member Functions

bool IsDefault () const
 
bool IsDelegate () const
 
bool operator== (const PIN_MAP_INSTANCE_OVERRIDE &aOther) const
 
bool operator!= (const PIN_MAP_INSTANCE_OVERRIDE &aOther) const
 

Public Attributes

PIN_MAP_OVERRIDE_MODE m_Mode = PIN_MAP_OVERRIDE_MODE::USE_LIBRARY_DEFAULT
 
wxString m_ActiveMapName
 
std::vector< PIN_MAP_ENTRYm_Edits
 

Detailed Description

Per-instance override of the active pin map and a sparse delta on top.

Stored canonically on the unit-1 SCH_SYMBOL_INSTANCE for a given (project, sheet path, reference). Units 2..N carry m_Mode = DELEGATE_TO_UNIT_1 with empty name and edits; reads on those units are routed through SCH_SYMBOL::GetPinMapOverride to the unit-1 entry.

m_Edits is sparse: only pin numbers whose pad value differs from the resolved active library map are listed. This guarantees library-side map edits propagate to every placement that has not explicitly overridden the same pin.

Definition at line 198 of file pin_map.h.

Member Function Documentation

◆ IsDefault()

bool PIN_MAP_INSTANCE_OVERRIDE::IsDefault ( ) const
inline
Returns
true when the override is in its default state: library default mode and no edits. The serialiser may omit the entire token when this returns true.

Definition at line 209 of file pin_map.h.

References m_Edits, m_Mode, and USE_LIBRARY_DEFAULT.

Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), formatPinMapOverride(), and PIN_MAP_OVERRIDE_FIXTURE::placeSymbol().

◆ IsDelegate()

bool PIN_MAP_INSTANCE_OVERRIDE::IsDelegate ( ) const
inline
Returns
true when this instance delegates to the unit-1 entry. Legal only on units 2..N of a multi-unit symbol.

Definition at line 218 of file pin_map.h.

References DELEGATE_TO_UNIT_1, and m_Mode.

Referenced by BOOST_AUTO_TEST_CASE(), and SCH_SYMBOL::resolveDelegatedPinMapOverride().

◆ operator!=()

bool PIN_MAP_INSTANCE_OVERRIDE::operator!= ( const PIN_MAP_INSTANCE_OVERRIDE & aOther) const
inline

Definition at line 226 of file pin_map.h.

◆ operator==()

bool PIN_MAP_INSTANCE_OVERRIDE::operator== ( const PIN_MAP_INSTANCE_OVERRIDE & aOther) const
inline

Definition at line 220 of file pin_map.h.

References m_ActiveMapName, m_Edits, and m_Mode.

Member Data Documentation

◆ m_ActiveMapName

◆ m_Edits

◆ m_Mode


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