Revert "STL is your friend... until it's not."
This reverts commit 0d94532df9
.
This commit is contained in:
parent
b4e3ce1166
commit
714250d9f6
|
@ -119,18 +119,6 @@ bool CN_CONNECTIVITY_ALGO::Add( BOARD_ITEM* aItem )
|
|||
if( !aItem->IsOnCopperLayer() )
|
||||
return false;
|
||||
|
||||
auto alreadyAdded =
|
||||
[this]( BOARD_ITEM* item )
|
||||
{
|
||||
auto it = m_itemMap.find( item );
|
||||
|
||||
if( it == m_itemMap.end() )
|
||||
return false;
|
||||
|
||||
// Don't be fooled by an empty ITEM_MAP_ENTRY auto-created by operator[].
|
||||
return !it->second.GetItems().empty();
|
||||
};
|
||||
|
||||
switch( aItem->Type() )
|
||||
{
|
||||
case PCB_NETINFO_T:
|
||||
|
@ -144,7 +132,7 @@ bool CN_CONNECTIVITY_ALGO::Add( BOARD_ITEM* aItem )
|
|||
|
||||
for( PAD* pad : static_cast<FOOTPRINT*>( aItem )->Pads() )
|
||||
{
|
||||
if( alreadyAdded( pad ) )
|
||||
if( m_itemMap.find( pad ) != m_itemMap.end() )
|
||||
return false;
|
||||
|
||||
add( m_itemList, pad );
|
||||
|
@ -161,7 +149,7 @@ bool CN_CONNECTIVITY_ALGO::Add( BOARD_ITEM* aItem )
|
|||
return false;
|
||||
}
|
||||
|
||||
if( alreadyAdded( aItem ) )
|
||||
if( m_itemMap.find( aItem ) != m_itemMap.end() )
|
||||
return false;
|
||||
|
||||
add( m_itemList, static_cast<PAD*>( aItem ) );
|
||||
|
@ -169,21 +157,21 @@ bool CN_CONNECTIVITY_ALGO::Add( BOARD_ITEM* aItem )
|
|||
}
|
||||
|
||||
case PCB_TRACE_T:
|
||||
if( alreadyAdded( aItem ) )
|
||||
if( m_itemMap.find( aItem ) != m_itemMap.end() )
|
||||
return false;
|
||||
|
||||
add( m_itemList, static_cast<PCB_TRACK*>( aItem ) );
|
||||
break;
|
||||
|
||||
case PCB_ARC_T:
|
||||
if( alreadyAdded( aItem ) )
|
||||
if( m_itemMap.find( aItem ) != m_itemMap.end() )
|
||||
return false;
|
||||
|
||||
add( m_itemList, static_cast<PCB_ARC*>( aItem ) );
|
||||
break;
|
||||
|
||||
case PCB_VIA_T:
|
||||
if( alreadyAdded( aItem ) )
|
||||
if( m_itemMap.find( aItem ) != m_itemMap.end() )
|
||||
return false;
|
||||
|
||||
add( m_itemList, static_cast<PCB_VIA*>( aItem ) );
|
||||
|
@ -193,7 +181,7 @@ bool CN_CONNECTIVITY_ALGO::Add( BOARD_ITEM* aItem )
|
|||
{
|
||||
ZONE* zone = static_cast<ZONE*>( aItem );
|
||||
|
||||
if( alreadyAdded( aItem ) )
|
||||
if( m_itemMap.find( aItem ) != m_itemMap.end() )
|
||||
return false;
|
||||
|
||||
m_itemMap[zone] = ITEM_MAP_ENTRY();
|
||||
|
|
Loading…
Reference in New Issue