KiCad PCB EDA Suite
Loading...
Searching...
No Matches
CN_LIST Class Reference

#include <connectivity_items.h>

Public Member Functions

 CN_LIST ()
 
void Clear ()
 
std::vector< CN_ITEM * >::iterator begin ()
 
std::vector< CN_ITEM * >::iterator end ()
 
std::vector< CN_ITEM * >::const_iterator begin () const
 
std::vector< CN_ITEM * >::const_iterator end () const
 
CN_ITEMoperator[] (int aIndex)
 
template<class T >
void FindNearby (CN_ITEM *aItem, T aFunc)
 
void SetHasInvalid (bool aInvalid=true)
 
void SetDirty (bool aDirty=true)
 
bool IsDirty () const
 
void RemoveInvalidItems (std::vector< CN_ITEM * > &aGarbage)
 
void ClearDirtyFlags ()
 
int Size () const
 
CN_ITEMAdd (PAD *pad)
 
CN_ITEMAdd (PCB_TRACK *track)
 
CN_ITEMAdd (PCB_ARC *track)
 
CN_ITEMAdd (PCB_VIA *via)
 
CN_ITEMAdd (CN_ZONE_LAYER *zitem)
 
CN_ITEMAdd (PCB_SHAPE *shape)
 
const std::vector< CN_ITEM * > Add (ZONE *zone, PCB_LAYER_ID aLayer)
 

Protected Member Functions

void addItemtoTree (CN_ITEM *item)
 

Protected Attributes

std::vector< CN_ITEM * > m_items
 

Private Attributes

bool m_dirty
 
bool m_hasInvalid
 
CN_RTREE< CN_ITEM * > m_index
 

Detailed Description

Definition at line 373 of file connectivity_items.h.

Constructor & Destructor Documentation

◆ CN_LIST()

CN_LIST::CN_LIST ( )
inline

Definition at line 376 of file connectivity_items.h.

References m_dirty, and m_hasInvalid.

Member Function Documentation

◆ Add() [1/7]

CN_ITEM * CN_LIST::Add ( CN_ZONE_LAYER zitem)

Definition at line 248 of file connectivity_items.cpp.

References addItemtoTree(), m_items, and SetDirty().

◆ Add() [2/7]

CN_ITEM * CN_LIST::Add ( PAD pad)

◆ Add() [3/7]

◆ Add() [4/7]

◆ Add() [5/7]

◆ Add() [6/7]

CN_ITEM * CN_LIST::Add ( PCB_VIA via)

◆ Add() [7/7]

const std::vector< CN_ITEM * > CN_LIST::Add ( ZONE zone,
PCB_LAYER_ID  aLayer 
)

◆ addItemtoTree()

void CN_LIST::addItemtoTree ( CN_ITEM item)
inlineprotected

Definition at line 432 of file connectivity_items.h.

References CN_RTREE< T >::Insert(), and m_index.

Referenced by Add().

◆ begin() [1/2]

std::vector< CN_ITEM * >::iterator CN_LIST::begin ( )
inline

◆ begin() [2/2]

std::vector< CN_ITEM * >::const_iterator CN_LIST::begin ( ) const
inline

Definition at line 394 of file connectivity_items.h.

References m_items.

◆ Clear()

void CN_LIST::Clear ( )
inline

Definition at line 382 of file connectivity_items.h.

References m_index, m_items, and CN_RTREE< T >::RemoveAll().

Referenced by CN_CONNECTIVITY_ALGO::Clear().

◆ ClearDirtyFlags()

void CN_LIST::ClearDirtyFlags ( )
inline

Definition at line 412 of file connectivity_items.h.

References m_items, and SetDirty().

Referenced by CN_CONNECTIVITY_ALGO::searchConnections().

◆ end() [1/2]

std::vector< CN_ITEM * >::iterator CN_LIST::end ( )
inline

◆ end() [2/2]

std::vector< CN_ITEM * >::const_iterator CN_LIST::end ( ) const
inline

Definition at line 395 of file connectivity_items.h.

References m_items.

◆ FindNearby()

template<class T >
void CN_LIST::FindNearby ( CN_ITEM aItem,
aFunc 
)
inline

◆ IsDirty()

bool CN_LIST::IsDirty ( ) const
inline

◆ operator[]()

CN_ITEM * CN_LIST::operator[] ( int  aIndex)
inline

Definition at line 397 of file connectivity_items.h.

References m_items.

◆ RemoveInvalidItems()

void CN_LIST::RemoveInvalidItems ( std::vector< CN_ITEM * > &  aGarbage)

Definition at line 272 of file connectivity_items.cpp.

References m_hasInvalid, and m_items.

Referenced by CN_CONNECTIVITY_ALGO::searchConnections().

◆ SetDirty()

void CN_LIST::SetDirty ( bool  aDirty = true)
inline

Definition at line 407 of file connectivity_items.h.

References m_dirty.

Referenced by Add(), ClearDirtyFlags(), and CN_CONNECTIVITY_ALGO::Remove().

◆ SetHasInvalid()

void CN_LIST::SetHasInvalid ( bool  aInvalid = true)
inline

Definition at line 405 of file connectivity_items.h.

References m_hasInvalid.

Referenced by CN_CONNECTIVITY_ALGO::Remove().

◆ Size()

int CN_LIST::Size ( ) const
inline

Definition at line 420 of file connectivity_items.h.

References m_items.

Member Data Documentation

◆ m_dirty

bool CN_LIST::m_dirty
private

Definition at line 441 of file connectivity_items.h.

Referenced by CN_LIST(), IsDirty(), and SetDirty().

◆ m_hasInvalid

bool CN_LIST::m_hasInvalid
private

Definition at line 442 of file connectivity_items.h.

Referenced by CN_LIST(), RemoveInvalidItems(), and SetHasInvalid().

◆ m_index

CN_RTREE<CN_ITEM*> CN_LIST::m_index
private

Definition at line 443 of file connectivity_items.h.

Referenced by addItemtoTree(), Clear(), and FindNearby().

◆ m_items

std::vector<CN_ITEM*> CN_LIST::m_items
protected

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