25#include <nlohmann/json_fwd.hpp>
27#include <unordered_map>
67 explicit PIN_MAP(
const wxString& aName );
76 void SetEntry(
const wxString& aPinNumber,
const wxString& aPadNumber );
81 void ClearEntry(
const wxString& aPinNumber );
83 bool HasEntry(
const wxString& aPinNumber )
const;
89 const wxString& GetPadNumber(
const wxString& aPinNumber )
const;
102 bool IsIdentity(
const std::vector<wxString>& aPinNumbers )
const;
107 std::vector<PIN_MAP_ENTRY>::iterator findEntry(
const wxString& aPinNumber );
108 std::vector<PIN_MAP_ENTRY>::const_iterator findEntry(
const wxString& aPinNumber )
const;
133 void Remove(
const wxString& aName );
238 const wxString& aName,
239 const std::unordered_map<wxString, std::vector<wxString>>& aAssignments );
249KICOMMON_API std::unordered_map<wxString, std::vector<wxString>>
bool operator==(const wxAuiPaneInfo &aLhs, const wxAuiPaneInfo &aRhs)
A logical library item identifier and consists of various portions much like a URI.
A symbol-owned ordered set of named pin maps.
const std::vector< PIN_MAP > & GetAll() const
void AddOrReplace(PIN_MAP aMap)
Insert aMap, replacing any existing entry with the same name.
void Remove(const wxString &aName)
Remove the map with the given name.
bool operator!=(const PIN_MAP_SET &aOther) const
const PIN_MAP * FindByName(const wxString &aName) const
bool operator==(const PIN_MAP_SET &aOther) const
std::vector< PIN_MAP > m_maps
void SetName(const wxString &aName)
const std::vector< PIN_MAP_ENTRY > & GetEntries() const
const wxString & GetName() const
std::vector< PIN_MAP_ENTRY > m_entries
KICOMMON_API PIN_MAP_SET ParsePinMapSet(const nlohmann::json &aParent)
Parse the spec-form named maps from aParent["pin_maps"] into a PIN_MAP_SET (issue #2282).
KICOMMON_API std::unordered_map< wxString, std::vector< wxString > > ParseLegacyPinAssignments(const nlohmann::json &aArray)
Parse the legacy flat pin-assignment JSON array (MR !2540 form) into a symbol-pin to footprint-pad(s)...
PIN_MAP_OVERRIDE_MODE
Override mode stored on a SCH_SYMBOL_INSTANCE.
KICOMMON_API std::vector< ASSOCIATED_FOOTPRINT > ParseAssociatedFootprints(const nlohmann::json &aParent)
Parse the spec-form footprint associations from aParent["associated_footprints"] (issue #2282).
KICOMMON_API PIN_MAP MakeLegacyPinMap(const wxString &aName, const std::unordered_map< wxString, std::vector< wxString > > &aAssignments)
Build a single named PIN_MAP from a legacy symbol-pin to footprint-pad(s) assignment table (the flat ...
One symbol-pin to footprint-pad mapping inside a PIN_MAP.
bool operator==(const PIN_MAP_ENTRY &aOther) const
Per-instance override of the active pin map and a sparse delta on top.
bool operator==(const PIN_MAP_INSTANCE_OVERRIDE &aOther) const
std::vector< PIN_MAP_ENTRY > m_Edits
bool operator!=(const PIN_MAP_INSTANCE_OVERRIDE &aOther) const
PIN_MAP_OVERRIDE_MODE m_Mode